0001406666-22-000031.txt : 20220726 0001406666-22-000031.hdr.sgml : 20220726 20220726160753 ACCESSION NUMBER: 0001406666-22-000031 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 67 CONFORMED PERIOD OF REPORT: 20220702 FILED AS OF DATE: 20220726 DATE AS OF CHANGE: 20220726 FILER: COMPANY DATA: COMPANY CONFORMED NAME: CALIX, INC CENTRAL INDEX KEY: 0001406666 STANDARD INDUSTRIAL CLASSIFICATION: COMMUNICATION SERVICES, NEC [4899] IRS NUMBER: 680438710 FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-34674 FILM NUMBER: 221107203 BUSINESS ADDRESS: STREET 1: 2777 ORCHARD PARKWAY CITY: SAN JOSE STATE: CA ZIP: 95134 BUSINESS PHONE: 408-514-3000 MAIL ADDRESS: STREET 1: 2777 ORCHARD PARKWAY CITY: SAN JOSE STATE: CA ZIP: 95134 FORMER COMPANY: FORMER CONFORMED NAME: CALIX NETWORKS INC DATE OF NAME CHANGE: 20070713 10-Q 1 calx-20220702.htm 10-Q calx-20220702
0001406666false2022Q212/31http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent100014066662022-01-012022-07-0200014066662022-07-18xbrli:shares00014066662022-07-02iso4217:USD00014066662021-12-31iso4217:USDxbrli:shares0001406666calx:SystemsProductMember2022-04-032022-07-020001406666calx:SystemsProductMember2021-04-042021-07-030001406666calx:SystemsProductMember2022-01-012022-07-020001406666calx:SystemsProductMember2021-01-012021-07-030001406666us-gaap:TechnologyServiceMember2022-04-032022-07-020001406666us-gaap:TechnologyServiceMember2021-04-042021-07-030001406666us-gaap:TechnologyServiceMember2022-01-012022-07-020001406666us-gaap:TechnologyServiceMember2021-01-012021-07-0300014066662022-04-032022-07-0200014066662021-04-042021-07-0300014066662021-01-012021-07-030001406666us-gaap:CommonStockMember2022-04-020001406666us-gaap:AdditionalPaidInCapitalMember2022-04-020001406666us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-04-020001406666us-gaap:RetainedEarningsMember2022-04-0200014066662022-04-020001406666us-gaap:AdditionalPaidInCapitalMember2022-04-032022-07-020001406666us-gaap:CommonStockMember2022-04-032022-07-020001406666us-gaap:RetainedEarningsMember2022-04-032022-07-020001406666us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-04-032022-07-020001406666us-gaap:CommonStockMember2022-07-020001406666us-gaap:AdditionalPaidInCapitalMember2022-07-020001406666us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-07-020001406666us-gaap:RetainedEarningsMember2022-07-020001406666us-gaap:CommonStockMember2021-04-030001406666us-gaap:AdditionalPaidInCapitalMember2021-04-030001406666us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-04-030001406666us-gaap:RetainedEarningsMember2021-04-0300014066662021-04-030001406666us-gaap:AdditionalPaidInCapitalMember2021-04-042021-07-030001406666us-gaap:CommonStockMember2021-04-042021-07-030001406666us-gaap:RetainedEarningsMember2021-04-042021-07-030001406666us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-04-042021-07-030001406666us-gaap:CommonStockMember2021-07-030001406666us-gaap:AdditionalPaidInCapitalMember2021-07-030001406666us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-07-030001406666us-gaap:RetainedEarningsMember2021-07-0300014066662021-07-030001406666us-gaap:CommonStockMember2021-12-310001406666us-gaap:AdditionalPaidInCapitalMember2021-12-310001406666us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-12-310001406666us-gaap:RetainedEarningsMember2021-12-310001406666us-gaap:AdditionalPaidInCapitalMember2022-01-012022-07-020001406666us-gaap:CommonStockMember2022-01-012022-07-020001406666us-gaap:RetainedEarningsMember2022-01-012022-07-020001406666us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-07-020001406666us-gaap:CommonStockMember2020-12-310001406666us-gaap:AdditionalPaidInCapitalMember2020-12-310001406666us-gaap:AccumulatedOtherComprehensiveIncomeMember2020-12-310001406666us-gaap:RetainedEarningsMember2020-12-3100014066662020-12-310001406666us-gaap:AdditionalPaidInCapitalMember2021-01-012021-07-030001406666us-gaap:CommonStockMember2021-01-012021-07-030001406666us-gaap:RetainedEarningsMember2021-01-012021-07-030001406666us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-01-012021-07-030001406666us-gaap:CashMember2022-07-020001406666us-gaap:CashMember2021-12-310001406666us-gaap:CommercialPaperMember2022-07-020001406666us-gaap:CommercialPaperMember2021-12-310001406666us-gaap:MoneyMarketFundsMember2022-07-020001406666us-gaap:MoneyMarketFundsMember2021-12-310001406666us-gaap:CorporateDebtSecuritiesMember2022-07-020001406666us-gaap:CorporateDebtSecuritiesMember2021-12-310001406666us-gaap:USGovernmentDebtSecuritiesMembercalx:ShortTermMarketableSecuritiesMember2022-07-020001406666us-gaap:USGovernmentDebtSecuritiesMembercalx:ShortTermMarketableSecuritiesMember2021-12-310001406666us-gaap:CommercialPaperMember2022-07-020001406666us-gaap:CommercialPaperMember2021-12-310001406666us-gaap:USGovernmentAgenciesDebtSecuritiesMember2022-07-020001406666us-gaap:USGovernmentAgenciesDebtSecuritiesMember2021-12-310001406666us-gaap:CorporateDebtSecuritiesMember2022-07-020001406666us-gaap:CorporateDebtSecuritiesMember2021-12-310001406666us-gaap:MunicipalNotesMember2022-07-020001406666us-gaap:MunicipalNotesMember2021-12-310001406666us-gaap:CommercialPaperMembercalx:ShortTermMarketableSecuritiesAndCashEquivalentsMember2022-07-020001406666us-gaap:USGovernmentAgenciesDebtSecuritiesMembercalx:ShortTermMarketableSecuritiesMember2022-07-020001406666us-gaap:CorporateDebtSecuritiesMembercalx:ShortTermMarketableSecuritiesMember2022-07-020001406666us-gaap:MunicipalNotesMembercalx:ShortTermMarketableSecuritiesMember2022-07-020001406666calx:ShortTermMarketableSecuritiesAndCashEquivalentsMember2022-07-020001406666us-gaap:MoneyMarketFundsMemberus-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:FairValueInputsLevel2Memberus-gaap:MoneyMarketFundsMemberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:MoneyMarketFundsMemberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:USGovernmentDebtSecuritiesMemberus-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:USGovernmentDebtSecuritiesMemberus-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:USGovernmentDebtSecuritiesMemberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:FairValueInputsLevel1Memberus-gaap:CommercialPaperMemberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:FairValueInputsLevel2Memberus-gaap:CommercialPaperMemberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:CommercialPaperMemberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:USGovernmentAgenciesDebtSecuritiesMemberus-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:USGovernmentAgenciesDebtSecuritiesMemberus-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:USGovernmentAgenciesDebtSecuritiesMemberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:CorporateDebtSecuritiesMemberus-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:FairValueInputsLevel2Memberus-gaap:CorporateDebtSecuritiesMemberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:CorporateDebtSecuritiesMemberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:FairValueInputsLevel1Memberus-gaap:MunicipalNotesMemberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:FairValueInputsLevel2Memberus-gaap:MunicipalNotesMemberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:MunicipalNotesMemberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:FairValueMeasurementsRecurringMember2022-07-020001406666us-gaap:MoneyMarketFundsMemberus-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:FairValueInputsLevel2Memberus-gaap:MoneyMarketFundsMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:MoneyMarketFundsMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:USGovernmentDebtSecuritiesMemberus-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:USGovernmentDebtSecuritiesMemberus-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:USGovernmentDebtSecuritiesMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:FairValueInputsLevel1Memberus-gaap:CommercialPaperMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:FairValueInputsLevel2Memberus-gaap:CommercialPaperMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:CommercialPaperMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:USGovernmentAgenciesDebtSecuritiesMemberus-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:USGovernmentAgenciesDebtSecuritiesMemberus-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:USGovernmentAgenciesDebtSecuritiesMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:CorporateDebtSecuritiesMemberus-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:FairValueInputsLevel2Memberus-gaap:CorporateDebtSecuritiesMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:CorporateDebtSecuritiesMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:FairValueInputsLevel1Memberus-gaap:MunicipalNotesMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:FairValueInputsLevel2Memberus-gaap:MunicipalNotesMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:MunicipalNotesMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:FairValueMeasurementsRecurringMember2021-12-310001406666us-gaap:EquipmentMember2022-07-020001406666us-gaap:EquipmentMember2021-12-310001406666us-gaap:ComputerEquipmentMember2022-07-020001406666us-gaap:ComputerEquipmentMember2021-12-310001406666calx:SoftwareMember2022-07-020001406666calx:SoftwareMember2021-12-310001406666us-gaap:LeaseholdImprovementsMember2022-07-020001406666us-gaap:LeaseholdImprovementsMember2021-12-310001406666us-gaap:FurnitureAndFixturesMember2022-07-020001406666us-gaap:FurnitureAndFixturesMember2021-12-310001406666us-gaap:ComputerSoftwareIntangibleAssetMember2020-12-310001406666us-gaap:ComputerSoftwareIntangibleAssetMember2019-09-280001406666us-gaap:ComputerSoftwareIntangibleAssetMember2019-06-302019-09-280001406666us-gaap:ComputerSoftwareIntangibleAssetMember2022-07-020001406666us-gaap:ComputerSoftwareIntangibleAssetMember2021-12-310001406666calx:SanJoseCaliforniaMember2022-07-02xbrli:pure0001406666us-gaap:InventoriesMember2022-07-020001406666us-gaap:InventoriesMember2021-12-310001406666calx:A2019EquityIncentiveAwardPlanMember2022-07-020001406666calx:A2021PerformanceTargetsMemberus-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:EmployeeStockOptionMember2022-01-012022-07-020001406666calx:A2021PerformanceTargetsMemberus-gaap:ShareBasedCompensationAwardTrancheTwoMemberus-gaap:EmployeeStockOptionMember2022-01-012022-07-020001406666calx:A2021PerformanceTargetsMembercalx:PerformanceBasedStockOptionsMembersrt:ExecutiveOfficerMember2022-02-012022-02-280001406666calx:A2021PerformanceTargetsMemberus-gaap:ShareBasedCompensationAwardTrancheOneMembercalx:PerformanceBasedStockOptionsMembersrt:ExecutiveOfficerMember2022-02-012022-02-280001406666calx:A2021PerformanceTargetsMemberus-gaap:ShareBasedCompensationAwardTrancheTwoMembercalx:PerformanceBasedStockOptionsMembersrt:ExecutiveOfficerMember2022-02-012022-02-280001406666calx:A2021PerformanceTargetsMembercalx:PerformanceBasedStockOptionsMembersrt:ExecutiveOfficerMember2022-04-032022-07-020001406666calx:A2021PerformanceTargetsMembercalx:PerformanceBasedStockOptionsMembersrt:ExecutiveOfficerMember2022-01-012022-07-02calx:plan0001406666us-gaap:EmployeeStockMember2022-07-020001406666us-gaap:EmployeeStockMember2022-01-012022-07-02calx:period0001406666us-gaap:EmployeeStockMemberus-gaap:SubsequentEventMember2022-08-150001406666us-gaap:EmployeeStockMember2022-04-020001406666us-gaap:EmployeeStockMember2022-04-032022-07-020001406666calx:A2017NonqualifiedEmployeeStockPurchasePlanMember2022-07-020001406666calx:A2017NonqualifiedEmployeeStockPurchasePlanMember2022-01-012022-07-020001406666calx:A2017NonqualifiedEmployeeStockPurchasePlanMember2022-04-032022-07-020001406666calx:CostOfRevenueProductsMember2022-04-032022-07-020001406666calx:CostOfRevenueProductsMember2021-04-042021-07-030001406666calx:CostOfRevenueProductsMember2022-01-012022-07-020001406666calx:CostOfRevenueProductsMember2021-01-012021-07-030001406666calx:CostOfRevenueServicesMember2022-04-032022-07-020001406666calx:CostOfRevenueServicesMember2021-04-042021-07-030001406666calx:CostOfRevenueServicesMember2022-01-012022-07-020001406666calx:CostOfRevenueServicesMember2021-01-012021-07-030001406666us-gaap:SellingAndMarketingExpenseMember2022-04-032022-07-020001406666us-gaap:SellingAndMarketingExpenseMember2021-04-042021-07-030001406666us-gaap:SellingAndMarketingExpenseMember2022-01-012022-07-020001406666us-gaap:SellingAndMarketingExpenseMember2021-01-012021-07-030001406666us-gaap:ResearchAndDevelopmentExpenseMember2022-04-032022-07-020001406666us-gaap:ResearchAndDevelopmentExpenseMember2021-04-042021-07-030001406666us-gaap:ResearchAndDevelopmentExpenseMember2022-01-012022-07-020001406666us-gaap:ResearchAndDevelopmentExpenseMember2021-01-012021-07-030001406666us-gaap:GeneralAndAdministrativeExpenseMember2022-04-032022-07-020001406666us-gaap:GeneralAndAdministrativeExpenseMember2021-04-042021-07-030001406666us-gaap:GeneralAndAdministrativeExpenseMember2022-01-012022-07-020001406666us-gaap:GeneralAndAdministrativeExpenseMember2021-01-012021-07-030001406666country:US2022-04-032022-07-020001406666country:US2021-04-042021-07-030001406666country:US2022-01-012022-07-020001406666country:US2021-01-012021-07-030001406666calx:AmericasExUSMember2022-04-032022-07-020001406666calx:AmericasExUSMember2021-04-042021-07-030001406666calx:AmericasExUSMember2022-01-012022-07-020001406666calx:AmericasExUSMember2021-01-012021-07-030001406666srt:EuropeMember2022-04-032022-07-020001406666srt:EuropeMember2021-04-042021-07-030001406666srt:EuropeMember2022-01-012022-07-020001406666srt:EuropeMember2021-01-012021-07-030001406666calx:MiddleEastAndAfricaMember2022-04-032022-07-020001406666calx:MiddleEastAndAfricaMember2021-04-042021-07-030001406666calx:MiddleEastAndAfricaMember2022-01-012022-07-020001406666calx:MiddleEastAndAfricaMember2021-01-012021-07-030001406666srt:AsiaPacificMember2022-04-032022-07-020001406666srt:AsiaPacificMember2021-04-042021-07-030001406666srt:AsiaPacificMember2022-01-012022-07-020001406666srt:AsiaPacificMember2021-01-012021-07-030001406666calx:ProductAndServicesMember2022-07-020001406666calx:ProductAndServicesMember2021-12-310001406666calx:ExtendedWarrantyMember2022-07-020001406666calx:ExtendedWarrantyMember2021-12-3100014066662022-07-032022-07-020001406666us-gaap:CustomerConcentrationRiskMemberus-gaap:AccountsReceivableMembercalx:OneCustomerMember2021-01-012021-12-310001406666us-gaap:SubsequentEventMember2022-07-012022-07-260001406666us-gaap:SubsequentEventMember2022-07-26
UNITED STATES
SECURITIES AND EXCHANGE COMMISSION
Washington, DC 20549
FORM 10-Q
(Mark One)
QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the quarterly period ended July 2, 2022
OR 
TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the transition period from             to             
Commission File Number: 001-34674
Calix, Inc.
(Exact Name of Registrant as Specified in Its Charter)
Delaware 68-0438710
(State or Other Jurisdiction of
Incorporation or Organization)
 (I.R.S. Employer
Identification No.)
2777 Orchard Parkway, San Jose, CA 95134
(Address of Principal Executive Offices) (Zip Code)
(408) 514-3000
(Registrant’s Telephone Number, Including Area Code)
Securities registered pursuant to Section 12(b) of the Act:
Title of Each Class
Trading SymbolName of Each Exchange on Which Registered
Common Stock, par value $0.025 per share
CALXNew York Stock Exchange
Indicate by check mark whether the registrant: (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.    Yes:  x    No:  o
Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (§232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).    Yes:  x    No:  o
Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company,” and “emerging growth company” in Rule 12b-2 of the Exchange Act.
Large Accelerated FilerAccelerated Filer
Non-accelerated filerSmaller 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. o


Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).    Yes:     No:  x
As of July 18, 2022, there were 65,240,516 shares of the Registrant’s common stock, par value $0.025 outstanding.


CALIX, INC.
FORM 10-Q
TABLE OF CONTENTS
 
3

PART I. FINANCIAL INFORMATION
 
ITEM 1.Financial Statements
CALIX, INC.
CONDENSED CONSOLIDATED BALANCE SHEETS
(In thousands, except par value) 
July 2,
2022
December 31,
2021
 (Unaudited) (See Note 1)
ASSETS
Current assets:
Cash and cash equivalents$51,516 $51,333 
Marketable securities173,369 153,002 
Accounts receivable, net86,128 85,219 
Inventory98,324 88,880 
Prepaid expenses and other current assets51,505 30,811 
Total current assets460,842 409,245 
Property and equipment, net22,029 21,783 
Right-of-use operating leases10,962 12,182 
Deferred tax assets167,928 168,962 
Goodwill116,175 116,175 
Other assets14,876 13,685 
$792,812 $742,032 
LIABILITIES AND STOCKHOLDERS’ EQUITY
Current liabilities:
Accounts payable$22,951 $29,061 
Accrued liabilities74,782 71,597 
Deferred revenue33,511 27,478 
Total current liabilities131,244 128,136 
Long-term portion of deferred revenue24,709 22,016 
Operating leases10,584 12,376 
Other long-term liabilities9,146 11,076 
Total liabilities175,683 173,604 
Commitments and contingencies (See Note 6)
Stockholders’ equity:
Preferred stock, $0.025 par value; 5,000 shares authorized; no shares issued and outstanding as of July 2, 2022 and December 31, 2021
  
Common stock, $0.025 par value; 100,000 shares authorized; 65,241 shares issued and outstanding as of July 2, 2022, and 64,274 shares issued and outstanding as of December 31, 2021
1,631 1,607 
Additional paid-in capital1,032,833 997,855 
Accumulated other comprehensive loss(2,261)(320)
Accumulated deficit(415,074)(430,714)
Total stockholders’ equity617,129 568,428 
$792,812 $742,032 
See accompanying notes to condensed consolidated financial statements.
4

CALIX, INC.
CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME
(In thousands, except per share data)
(Unaudited)
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Revenue:
Systems$191,195 $159,553 $365,621 $312,855 
Services10,847 9,117 21,369 17,889 
Total revenue202,042 168,670 386,990 330,744 
Cost of revenue:
Systems94,448 72,673 180,361 142,336 
Services7,414 6,378 14,657 12,547 
Total cost of revenue101,862 79,051 195,018 154,883 
Gross profit100,180 89,619 191,972 175,861 
Operating expenses:
Sales and marketing41,138 29,710 77,229 57,761 
Research and development30,430 25,716 60,247 50,080 
General and administrative18,911 13,664 34,942 26,689 
Total operating expenses90,479 69,090 172,418 134,530 
Operating income9,701 20,529 19,554 41,331 
Interest and other income (expense), net:
Interest income (expense), net240 (119)275 (244)
Other income (expense), net(272)255 (340)343 
Total interest and other income (expense), net(32)136 (65)99 
Income before income taxes9,669 20,665 19,489 41,430 
Income taxes2,148 207 3,849 357 
Net income$7,521 $20,458 $15,640 $41,073 
Net income per common share:
Basic$0.12 $0.32 $0.24 $0.65 
Diluted$0.11 $0.30 $0.23 $0.61 
Weighted-average number of shares used to compute
net income per common share:
Basic64,836 63,042 64,662 62,795 
Diluted68,169 67,634 68,285 67,347 
Net income$7,521 $20,458 $15,640 $41,073 
Other comprehensive income (loss), net of tax:
Unrealized loss on available-for-sale marketable securities, net(306) (1,467) 
Foreign currency translation adjustments, net(403)44 (474)9 
Total other comprehensive income (loss), net of tax(709)44 (1,941)9 
Comprehensive income$6,812 $20,502 $13,699 $41,082 

See accompanying notes to condensed consolidated financial statements.
5

CALIX, INC.
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY
(In thousands, unaudited)

Common StockAdditional Paid-in CapitalAccumulated Other Comprehensive LossAccumulated DeficitTotal Stockholders’ Equity
SharesAmount
Balance as of April 2, 202264,612 $1,616 $1,014,336 $(1,552)$(422,595)$591,805 
Stock-based compensation
— — 10,007 — — 10,007 
Issuance of common stock under equity incentive plans, net of forfeitures629 15 8,490 — — 8,505 
Net income— — — — 7,521 7,521 
Other comprehensive loss— — — (709)— (709)
Balance as of July 2, 202265,241 $1,631 $1,032,833 $(2,261)$(415,074)$617,129 

Common StockAdditional Paid-in CapitalAccumulated Other Comprehensive LossAccumulated DeficitTotal Stockholders’ Equity
SharesAmount
Balance as of April 3, 202162,851 $1,572 $961,846 $(226)$(648,477)$314,715 
Stock-based compensation
— — 6,223 — — 6,223 
Issuance of common stock under equity incentive plans, net of forfeitures349 8 4,190 — — 4,198 
Net income— — — — 20,458 20,458 
Other comprehensive loss— — — 44 — 44 
Balance as of July 3, 202163,200 $1,580 $972,259 $(182)$(628,019)$345,638 

Common StockAdditional Paid-in CapitalAccumulated Other Comprehensive LossAccumulated DeficitTotal Stockholders’ Equity
SharesAmount
Balance as of December 31, 202164,274 $1,607 $997,855 $(320)$(430,714)$568,428 
Stock-based compensation
— — 20,475 — — 20,475 
Issuance of common stock under equity incentive plans, net of forfeitures967 24 14,503 — — 14,527 
Net income— — — — 15,640 15,640 
Other comprehensive loss— — — (1,941)— (1,941)
Balance as of July 2, 202265,241 $1,631 $1,032,833 $(2,261)$(415,074)$617,129 

Common StockAdditional Paid-in CapitalAccumulated Other Comprehensive LossAccumulated DeficitTotal Stockholders’ Equity
SharesAmount
Balance as of December 31, 202062,122 $1,553 $948,055 $(191)$(669,092)$280,325 
Stock-based compensation
— — 11,394 — — 11,394 
Issuance of common stock under equity incentive plans, net of forfeitures1,078 27 12,810 — — 12,837 
Net income— — — — 41,073 41,073 
Other comprehensive loss— — — 9 — 9 
Balance as of July 3, 202163,200 $1,580 $972,259 $(182)$(628,019)$345,638 


See accompanying notes to condensed consolidated financial statements.
6

CALIX, INC.
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS
(In thousands, unaudited)
 Six Months Ended
July 2,
2022
July 3,
2021
Operating activities:
Net income$15,640 $41,073 
Adjustments to reconcile net income to net cash provided by operating activities:
Stock-based compensation20,475 11,394 
Depreciation and amortization7,671 7,737 
Deferred income taxes1,034  
Changes in operating assets and liabilities:
Accounts receivable, net(909)(10,745)
Inventory(9,445)(24,868)
Prepaid expenses and other assets(23,268)(6,390)
Accounts payable(6,060)21,918 
Accrued liabilities4,222 (10,184)
Deferred revenue8,725 6,164 
Other long-term liabilities(3,721)(2,742)
Net cash provided by operating activities14,364 33,357 
Investing activities
Purchases of property and equipment(5,866)(3,928)
Purchases of marketable securities(103,286)(147,277)
Maturities of marketable securities81,452 83,000 
Net cash used in investing activities(27,700)(68,205)
Financing activities:
Proceeds from common stock issuances related to employee benefit plans14,527 12,837 
Payments related to financing arrangements(632)(212)
Net cash provided by financing activities13,895 12,625 
Effect of exchange rate changes on cash and cash equivalents(376)6 
Net increase (decrease) in cash and cash equivalents183 (22,217)
Cash and cash equivalents at beginning of period51,333 80,807 
Cash and cash equivalents at end of period$51,516 $58,590 

See accompanying notes to condensed consolidated financial statements.
7

CALIX, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS
(Unaudited)
1. Company and Basis of Presentation
Company
Calix, Inc. (together with its subsidiaries, “Calix” or the “Company”) was incorporated in August 1999 and is a Delaware corporation. The Company is the leading global provider of cloud and software platforms, systems and services that focus on the access network, the portion of the network that governs available bandwidth and determines the range and quality of services that can be offered to subscribers. These cloud and software platforms enable broadband service providers (“BSPs”) of all types and sizes to innovate and transform their businesses. The Company’s BSP customers are empowered to utilize real-time data and insights from Calix platforms to simplify their businesses and deliver experiences that excite their subscribers. These insights enable BSPs to grow their businesses through increased subscriber acquisition, loyalty and revenue, thereby increasing the value of their businesses and contributions to their communities.
Basis of Presentation
The accompanying unaudited condensed consolidated financial statements, including the accounts of Calix, Inc. and its wholly-owned subsidiaries, have been prepared in accordance with the requirements of the U.S. Securities and Exchange Commission (“SEC”) for interim reporting. As permitted under those rules, certain footnotes or other financial information that are normally required by U.S. generally accepted accounting principles (“GAAP”) can be condensed or omitted. In the opinion of management, the financial statements include all normal and recurring adjustments that are considered necessary for the fair presentation of the Company’s financial position and operating results. All intercompany balances and transactions have been eliminated in consolidation. The Condensed Consolidated Balance Sheet as of December 31, 2021 has been derived from the audited financial statements at that date.
The results of the Company’s operations can vary during each quarter of the year. Therefore, the results and trends in these interim financial statements may not be the same as those for the full year or any future periods. The information included in this Quarterly Report on Form 10-Q should be read in conjunction with the audited financial statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2021.
The Company’s fiscal year begins on January 1st and ends on December 31st. Quarterly periods are based on a 4-4-5 calendar with the first quarter ending on the Saturday closest to March 31st. As a result, the Company had one less day in the six months ended July 2, 2022 than for the six months ended July 3, 2021. The preparation of financial statements in conformity with GAAP for interim financial reporting requires management to make estimates and assumptions that affect the amounts reported in the condensed consolidated financial statements and accompanying notes. Actual results could differ from those estimates.
Risks and Uncertainties
The Company is subject to risks and uncertainties as a result of the COVID-19 pandemic. The extent of the impact of the COVID-19 pandemic on the Company’s business is highly uncertain and difficult to predict, particularly as variants of the coronavirus continue to spread around the world. Although the availability of vaccines has increased, there are no assurances as to when the pandemic will become endemic. The COVID-19 pandemic has had a prolonged impact on the Company’s supply chain operations due to restrictions, reduced capacity and limited availability from suppliers on whom the Company relies for sourcing components and materials and from third-party partners on whom the Company relies for manufacturing, warehousing and logistics services. The Company’s supply chain continues to face constraints primarily due to closures affecting suppliers and manufacturers in China that have led to challenges in sourcing components and materials. Shortages and delays relating to the Company’s components and materials have also caused, and may continue to cause, difficulties in managing global logistics, and transport and warehousing services for the Company’s products. The prolonged impact of COVID-19 could exacerbate these constraints or cause further supply chain disruptions.
2. Significant Accounting Policies
The Company’s significant accounting policies are disclosed in its Annual Report on Form 10-K for the year ended December 31, 2021. The Company’s significant accounting policies did not change during the six months ended July 2, 2022.
8

Newly Adopted Accounting Standard
The Company did not adopt any new accounting standards during the six months ended July 2, 2022 that were significant to the Company.

Recent Accounting Pronouncements Not Yet Adopted
There have been no additional accounting pronouncements or changes in accounting pronouncements during the six months ended July 2, 2022 as compared to the recent accounting pronouncements described in the Company’s Annual Report on Form 10-K for the year ended December 31, 2021, that are significant or potentially significant to the Company.
3. Cash, Cash Equivalents and Marketable Securities
The Company has invested its excess cash primarily in money market funds and highly liquid marketable securities such as commercial paper, corporate debt securities, municipal securities and U.S. government securities. The Company considers all investments with maturities of three months or less when purchased to be cash equivalents. Marketable securities represent commercial paper, U.S. government agency securities, corporate debt securities, municipal securities and U.S. government securities with maturities greater than 90 days at date of purchase. Cash equivalents are stated at amounts that approximate fair value based on quoted market prices. Marketable securities are recorded at their fair values.
Marketable securities with maturities greater than one year are classified as current because management considers all marketable securities to be available for current operations.
The Company’s investments have been classified and accounted for as available-for-sale. Such investments are recorded at fair value and unrealized holding gains and losses are reported as a separate component of accumulated other comprehensive loss in the stockholders’ equity until realized. Realized gains and losses on sales of marketable securities, if any, are determined on the specific identification method and are reclassified from accumulated other comprehensive loss to results of operations as other expense, net. There were no realized gains and losses for the three and six months ended July 2, 2022 and July 3, 2021, respectively.
Cash, cash equivalents and marketable securities consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Cash and cash equivalents:
Cash$24,113 $26,442 
Commercial paper24,616 21,582 
Money market funds2,787 2,320 
Corporate debt securities 989 
Total cash and cash equivalents51,516 51,333 
Marketable securities:
U.S. government securities99,808 60,279 
Commercial paper63,040 80,812 
U.S. government agency securities9,028 5,527 
Corporate debt securities799 3,576 
Municipal securities694 2,808 
Total marketable securities173,369 153,002 
$224,885 $204,335 
The carrying amounts of the Company’s money market funds approximate their fair values due to their nature, duration and short maturities.
9

The amortized cost and fair value of marketable securities as of July 2, 2022 were as follows (in thousands):
Amortized CostGross Unrealized LossesFair Value
U.S. government securities$101,289 $(1,481)$99,808 
Commercial paper87,725 (69)87,656 
U.S. government agency securities9,117 (89)9,028 
Corporate debt securities803 (4)799 
Municipal securities696 (2)694 
Total marketable securities$199,630 $(1,645)$197,985 
Unrealized gains and losses were de minimis as of December 31, 2021.
4. Fair Value Measurements
The Company measures its cash equivalents and marketable securities at fair value on a recurring basis. Fair value is an exit price, representing the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As such, fair value is a market-based measurement that should be determined based on assumptions that market participants would use in pricing an asset or liability. The Company utilizes the following three-tier value hierarchy, which prioritizes the inputs used in measuring fair value:
Level 1 – Observable inputs that reflect quoted prices (unadjusted) for identical assets or liabilities in active markets.
Level 2 – Observable inputs other than quoted prices included in Level 1 for similar instruments in active markets, quoted prices for identical or similar instruments in markets that are not active, and model-driven valuations in which all significant inputs and significant value drivers are observable in active markets.
Level 3 – Unobservable inputs to the valuation derived from fair valuation techniques in which one or more significant inputs or significant value drivers are unobservable. The fair value hierarchy also requires the Company to maximize the use of observable inputs, when available, and to minimize the use of unobservable inputs when determining inputs and determining fair value.

The following tables sets forth the Company’s financial assets measured at fair value on a recurring basis based on the three-tier fair value hierarchy (in thousands):
As of July 2, 2022Level 1Level 2Total
Money market funds$2,787 $ $2,787 
U.S. government securities99,808  99,808 
Commercial paper 87,656 87,656 
U.S. government agency securities 9,028 9,028 
Corporate debt securities 799 799 
Municipal securities 694 694 
$102,595 $98,177 $200,772 

As of December 31, 2021Level 1Level 2Total
Money market funds$2,320 $ $2,320 
U.S. government securities60,279  60,279 
Commercial paper 102,394 102,394 
U.S. government agency securities 5,527 5,527 
Corporate debt securities 4,565 4,565 
Municipal securities 2,808 2,808 
$62,599 $115,294 $177,893 
10

5. Balance Sheet Details
Accounts receivable, net consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Accounts receivable$86,788 $85,944 
Allowance for doubtful accounts(660)(725)
$86,128 $85,219 
Inventory consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Raw materials$674 $130 
Finished goods97,650 88,750 
$98,324 $88,880 
Property and equipment, net consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Test equipment$41,290 $39,476 
Computer equipment11,079 11,156 
Software9,623 9,013 
Leasehold improvements1,678 1,351 
Furniture and fixtures1,074 1,812 
Total64,744 62,808 
Accumulated depreciation and amortization(42,715)(41,025)
$22,029 $21,783 
Other long-term assets consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Intangible asset, net$5,569 $6,885 
Other long-term assets9,307 6,800 
$14,876 $13,685 
Intangible Asset Acquisition
In March 2018, and as amended in December 2020, the Company entered into an agreement with a vendor to develop a certain software product and related enhancements pursuant to which the Company is obligated to make revenue-share payments under the program, subject to aggregate fixed revenue-share payments of $15.8 million. The payments are based on a revenue-share rate applied to revenue from the developed-product and the corresponding hardware sales through March 2024. If the minimum revenue-share payments are not achieved by the end of that period, a true-up payment will be due. The Company had its first sale in August 2019, and as a result, the Company capitalized an intangible asset with a value of $13.2 million in the third quarter of 2019 and also recognized a liability of $13.2 million (a non-cash investing activity). The intangible asset has an estimated five-year useful life and is being amortized using the greater of the ratio of current gross revenue for the products to the total of current and anticipated future gross revenue for the products or the straight-line method. As of July 2, 2022, the liability, including accrued interest, was $12.9 million, of which $5.7 million is included in “Accrued liabilities” and $7.2 million in “Other long-term liabilities” in the accompanying Condensed Consolidated Balance Sheet. As of December 31, 2021, the liability, including accrued interest, was $13.2 million, of which $4.7 million was included in “Accrued liabilities” and $8.5 million in other “Other long-term liabilities.”
11

Accrued liabilities consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Compensation and related benefits$20,314 $23,165 
Component inventory held by suppliers9,310 7,611 
Current portion of warranty and retrofit6,777 7,076 
Current portion of revenue share payments5,747 4,731 
Professional and consulting fees5,678 4,819 
Freight5,201 3,997 
Customer advances or rebates5,118 4,742 
Operating leases3,822 3,596 
Taxes payable3,395 4,251 
Product returns2,804 1,836 
Operations1,765 1,400 
Other4,851 4,373 
$74,782 $71,597 
Changes in the Company’s accrued warranty and retrofit liability were as follows (in thousands):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Balance at beginning of period$9,570 $9,650 $9,594 $9,208 
Accruals for product warranty and retrofit
(351)1,003 177 2,205 
Cost of warranty and retrofit claims
(565)(742)(1,117)(1,502)
Balance at end of period$8,654 $9,911 $8,654 $9,911 
6. Commitments and Contingencies
Lease Commitments
The Company leases office space under non-cancelable operating leases. Certain of the Company’s operating leases contain renewal options and rent acceleration clauses. Future minimum payments under the non-cancelable operating leases consisted of the following as of July 2, 2022 (in thousands):
PeriodFuture Minimum Lease Payments
Remainder of 2022$2,263 
20234,680 
20244,510 
20254,010 
2026562 
Total future minimum lease payments16,025 
Less imputed interest(1,619)
$14,406 
As of July 2, 2022, the operating lease liability consisted of the following (in thousands):
Accrued liabilities - current portion of operating leases$3,822 
Operating leases10,584 
$14,406 
The Company leases its headquarters office space in San Jose, California under a lease agreement that expires in December 2025. The future minimum lease payments under the lease are $8.5 million and are included in the table above.
The weighted average discount rate for the Company’s operating leases as of July 2, 2022 was 6.1%. The weighted average remaining lease term as of July 2, 2022 was 3.5 years.
12

For the three and six months ended July 2, 2022, total rent expense of the Company was $1.1 million and $2.2 million, respectively. For the three and six months ended July 3, 2021, total rent expense of the Company was $0.9 million and $2.1 million, respectively. Cash paid within operating cash flows for operating leases was $2.3 million and $2.0 million for the six months ended July 2, 2022 and July 3, 2021, respectively.
Purchase Commitments
The Company’s suppliers, including contract manufacturers (“CMs”) and original design manufacturers (“ODMs”), place orders for certain component inventory in advance based upon the Company’s build forecasts in order to reduce manufacturing lead times and ensure adequate component supply. The components are used by the CMs and ODMs to build the products included in the build forecasts. The Company generally does not take ownership of the components held by CMs and ODMs. The Company places purchase orders with its CMs and ODMs in order to fulfill its monthly finished product inventory requirements. The Company incurs a liability when the CMs and ODMs convert the component inventory to a finished product and takes ownership of the finished goods inventory. In the event of termination of services with a manufacturing partner, the Company has purchased, and may be required to purchase in the future, certain of the remaining components inventory held by the CM or ODM as well as any outstanding orders pursuant to the contractual provisions with such CM or ODM. As of July 2, 2022 and December 31, 2021, the Company had approximately $324.2 million and $247.3 million, respectively, of outstanding purchase commitments for inventories to be delivered by its suppliers, including CMs and ODMs, within two years.
The Company has from time to time, and subject to certain conditions, reimbursed certain suppliers for component inventory purchases when this inventory has been rendered excess or obsolete, for example due to manufacturing and engineering change orders resulting from design changes, manufacturing discontinuation of products by its suppliers, or in cases where the Company has committed inventory levels that greatly exceed projected demand. The estimated excess and obsolete inventory liabilities related to such manufacturing and engineering change orders and other factors, which are included in accrued liabilities in the accompanying balance sheets, were $9.3 million and $7.6 million as of July 2, 2022 and December 31, 2021, respectively. The Company records the related charges in cost of systems revenue in its Condensed Consolidated Statements of Comprehensive Income.
Litigation
From time to time, the Company is involved in various legal proceedings arising from the normal course of business activities. The Company is not currently a party to any legal proceedings that, if determined adversely to the Company, in management’s opinion, are currently expected to individually or in the aggregate have a material adverse effect on the Company’s business, operating results or financial condition taken as a whole.
7. Stockholders’ Equity
2019 Equity Incentive Award Plan
Employees and consultants of the Company, its subsidiaries and affiliates, as well as members of the Company’s Board of Directors, are eligible to receive awards under the 2019 Equity Incentive Award Plan (“the 2019 Plan”). The 2019 Plan provides for the grant of stock options, including incentive stock options and nonqualified stock options, stock appreciation rights, restricted stock, restricted stock units, other stock or cash-based awards and dividend equivalents to eligible individuals. At the Company’s 2022 annual meeting of stockholders, the stockholders approved an increase in the number of shares of common stock issuable under the 2019 Plan by 1.5 million shares. As of July 2, 2022, there were 7.0 million shares available for issuance under the 2019 Plan.
Stock Options
During the three months ended July 2, 2022, stock option awards exercisable for up to an aggregate of 0.4 million shares of common stock were granted with a grant date weighted-average exercise price of $33.46 per share. During the six months ended July 2, 2022, stock option awards exercisable for up to an aggregate of 0.8 million shares of common stock were granted with a grant date weighted-average exercise price of $43.15 per share. These stock option awards vest 25% on the first anniversary of the vesting commencement date and on a quarterly basis thereafter over an additional three years.
In February 2022, performance-based stock option awards exercisable for up to an aggregate of 0.7 million shares of common stock were granted to certain Company executives with a grant date exercise price of $55.96 per share. The actual number of shares earned is contingent upon achievement of annual corporate financial targets for bookings and non-GAAP net operating income for 2022 (collectively, the “2022 Performance Targets”) during the one-year performance period. These performance-based stock option awards will vest, subject to certification by the Compensation Committee of the Company’s Board of Directors upon the achievement of the 2022 Performance Targets, as to 25% of the shares of common stock earned on the one year anniversary of the date of grant, and as to the remaining 75% of the shares of common stock earned, in substantially equal
13

quarterly installments over the subsequent 36 months, subject to the executive’s continuous service with the Company through the respective vesting dates. If the non-GAAP net operating income target is achieved below 80% of target or the bookings target is achieved below 90% of target, no shares would be awarded, and the performance-based stock option awards would be forfeited in full. If both targets are achieved at the minimum threshold of 80% of target for non-GAAP net operating income and 90% of target for bookings, then the shares are awarded at 50% of the granted shares, with an increasing percentage of shares awarded above the minimum thresholds up to 100% of the granted shares if both targets are achieved at 100% or more of target. The probability of meeting the performance conditions related to these performance-based stock option awards was assessed to be probable as of July 2, 2022, and stock-based compensation expense of $2.9 million was recognized for the three months ended July 2, 2022. For the six months ended July 2, 2022, stock-based compensation expense of $4.5 million was recognized.
During the three months ended July 2, 2022, 0.3 million shares of common stock were issued pursuant to the exercise of stock options at a weighted-average exercise price of $7.51 per share. During the six months ended July 2, 2022, 0.5 million shares of common stock were issued pursuant to the exercise of stock options at a weighted-average exercise price of $7.56 per share. As of July 2, 2022, unrecognized stock-based compensation expense of $55.3 million related to stock options, net of estimated forfeitures, is expected to be recognized over a weighted-average period of 2.2 years.
Employee Stock Purchase Plans
The Company maintains two employee stock purchase plans - the Amended and Restated Employee Stock Purchase Plan (the “ESPP”) and the Amended and Restated 2017 Nonqualified Employee Stock Purchase Plan (the “NQ ESPP”).
The ESPP allows eligible employees to purchase shares of the Company’s common stock through payroll deductions of up to 15% of their eligible compensation subject to certain Internal Revenue Code limitations. In addition, participants may purchase up to 2,000 shares of common stock during each offering period.
The offering periods under the ESPP are two six-month offering periods from August 15th through February 14th and February 15th through August 14th of each year. The price of common stock purchased under the ESPP is 85% of the lower of the fair market value of the common stock on the commencement date and the end date of each six-month offering period. At the Company’s 2022 annual meeting of stockholders, the stockholders approved an increase in the number of shares of common stock issuable under the ESPP by 1.3 million shares, which will go into effect for the six-month purchase period commencing August 15, 2022 and ending on February 14, 2023. The total shares authorized for issuance under the ESPP increased from 11.1 million shares to 12.4 million shares. As of July 2, 2022, there were 3.5 million shares available for issuance under the ESPP. During the six months ended July 2, 2022, 0.1 million shares were purchased under the ESPP. As of July 2, 2022, unrecognized stock-based compensation expense of $0.3 million related to the ESPP is expected to be recognized over a remaining service period of 0.1 years.
The NQ ESPP allows eligible employees to purchase shares of the Company’s common stock through payroll deductions of up to 25% of their eligible compensation. Eligible employees have the right to (a) purchase the maximum number of whole shares of common stock that can be purchased with the elected payroll deductions during each offering period for which the employee is enrolled at a purchase price equal to the closing price of the Company’s common stock on the last day of such offering period and (b) receive an equal number of shares of the Company’s common stock that are subject to a risk of forfeiture in the event the employee terminates employment within the one year period immediately following the purchase date. Beginning in the second quarter of 2022, the NQ ESPP provides quarterly offering periods from February 8th through May 7th, May 8th through August 7th, August 8th through November 7th and November 8th through February 7th of each year. A transition period began on May 15th and will end on August 7th. At the Company’s 2022 annual meeting of stockholders, the stockholders approved an increase in the number of shares of common stock issuable under the NQ ESPP by 0.8 million shares. The maximum number of shares of common stock currently authorized for issuance under the NQ ESPP is 6.3 million shares, with a maximum of 0.5 million shares allocated per purchase period. As of July 2, 2022, there were 3.3 million shares available for issuance under the NQ ESPP, including the stockholder-approved 0.8 million share increase. During the three and six months ended July 2, 2022, 0.4 million shares were purchased and issued. As of July 2, 2022, unrecognized stock-based compensation expense of $6.9 million related to the NQ ESPP is expected to be recognized over a remaining weighted-average service period of 0.9 years.
14

Stock-Based Compensation
The following table summarizes stock-based compensation expense (in thousands):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Cost of revenue:
Products$419 $186 $793 $348 
Services231 157 473 307 
Sales and marketing2,848 1,723 5,330 3,170 
Research and development2,259 1,644 6,004 3,227 
General and administrative4,250 2,513 7,875 4,342 
$10,007 $6,223 $20,475 $11,394 
8. Revenue from Contracts with Customers
The Company derives revenue from contracts with customers primarily from the following and categorizes its revenue as follows:
Systems include revenue from the sale of access and premises systems, software platform licenses and cloud-based software subscriptions; and
Services include revenue from customer support, software- and cloud-based maintenance, extended warranty subscriptions, professional services, training and managed services.
The following is a summary of revenue disaggregated by geographic region based upon the location of the customers (in thousands):
Three Months EndedSix Months Ended
July 2, 2022July 3, 2021July 2, 2022July 3, 2021
United States$183,932 $138,587 $349,563 $277,934 
Americas ex U.S.10,808 14,457 19,679 25,860 
Europe2,954 9,844 9,527 13,259 
Middle East & Africa4,099 5,172 7,717 12,260 
Asia Pacific249 610 504 1,431 
$202,042 $168,670 $386,990 $330,744 
Contract Asset
The primary contract asset is revenue recognized on professional services contracts where the services are transferred to the customer over time, which has yet to be billed, and is classified within accounts receivable. Amounts are billed in accordance with the agreed-upon contractual terms. The balance as of December 31, 2021 was $1.7 million of which $0.4 million remained in the Company’s Condensed Consolidated Balance Sheet as of July 2, 2022. The closing balance as of July 2, 2022 was $1.7 million of which the Company expects to bill 60% of the balance during the remainder of 2022. The contract asset balance may fluctuate depending on the timing of professional services contracts with the Company's customers.
15

Contract Liability
Deferred revenue consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Current:
Products and services$28,535 $22,586 
Extended warranty4,976 4,892 
33,511 27,478 
Long-term:
Products and services6,453 3,137 
Extended warranty18,256 18,879 
24,709 22,016 
$58,220 $49,494 

The increase in the deferred revenue balance for the three and six months ended July 2, 2022 is primarily driven by cash payments received or due in advance of satisfying the Company’s performance obligations offset by $12.9 million of revenue recognized that was included in the deferred revenue balance at the beginning of the period.

Revenue allocated to remaining performance obligations (“RPOs”) represents contract revenue that has not yet been recognized, which includes deferred revenue and amounts that will be invoiced and recognized as revenue in future periods but excludes variable consideration where the monthly invoicing is based on usage or where actual usage exceeds the minimum commitment. RPOs were $162.8 million as of July 2, 2022, and the Company expects to recognize as revenue 34% of this amount over the next 12 months and the remainder thereafter.
Contract Costs
The Company capitalizes certain sales commissions related primarily to multi-year subscriptions and extended warranty support for which the expected amortization period is greater than one year. As of July 2, 2022 and December 31, 2021, the unamortized balance of deferred commissions was $7.7 million and $7.4 million, respectively. For the three and six months ended July 2, 2022, the amount of amortization was $0.9 million and $1.6 million, respectively, compared to $0.2 million and $0.3 million for the three and six months ended July 3, 2021, respectively. There was no impairment loss in relation to the costs capitalized for either period.
Concentration of Customer Risk
No customer accounted for more than 10% of the Company’s total revenue for the three or six months ended July 2, 2022 or July 3, 2021.
No customer represented more than 10% of the Company’s accounts receivable as of July 2, 2022. One customer represented 12% of the Company’s accounts receivable as of December 31, 2021.
9. Income Taxes
The following table presents income taxes and the effective tax rates for the periods indicated (in thousands, except percentages):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Income before income taxes$9,669 $20,665 $19,489 $41,430 
Income taxes$2,148 $207 $3,849 $357 
Effective tax rate22.2 %1.0 %19.7 %0.9 %
The Company’s income taxes for the three months ended July 2, 2022 and July 3, 2021 were determined using an estimated effective tax rate adjusted for discrete items that occurred during the respective periods. The Company's effective tax rate for the three and six months ended July 2, 2022 differs from the statutory federal corporate tax rate of 21% primarily due to U.S. federal research tax credits and excess tax benefits from stock-based compensation partially offset by state taxes, the inclusion of income from certain foreign operations and the effect of non-deductible stock-based compensation for executive officers.
16

The Company's effective tax rate for the three and six months ended July 3, 2021 was significantly lower than 2022 as the Company maintained a full valuation allowance until the third quarter of 2021.
The Company has net deferred tax assets that have arisen primarily as a result of temporary differences, net operating loss carryforwards and tax credits. The Company’s ability to realize a deferred tax asset is based on its ability to generate sufficient future taxable income within the applicable carryforward period and subject to any applicable limitations. Management continues to believe that it is more likely than not we will utilize a significant portion of our deferred tax assets.
The Company continues to maintain a valuation allowance of $30.8 million on certain U.S. federal and state deferred tax assets that the Company believes are not more likely than not to be realized in future periods.
The Company considers scheduled reversals of deferred tax liabilities, projected future taxable income, ongoing tax planning strategies and other matters, including the period over which its deferred tax assets will be recoverable, in assessing the need for and the amount of the valuation allowance. In the event that actual results differ from these estimates, or if the Company decides to adjust these estimates in the future periods, further adjustments to its valuation allowance may be recorded, which could materially impact the Company’s financial position and net income in the period of the adjustment.
The Company’s income taxes may be subject to fluctuation during the year and in future years as new information is obtained, which may affect the assumptions used to estimate the annual effective tax rate including factors as actual results differing from its estimates of pre-tax earnings in the various jurisdictions in which the Company operates, which could impact the recognition of its deferred tax assets, benefits from stock option exercises, further investments in the Company’s foreign operations, the recognition or de-recognition of tax benefits related to uncertain tax positions and changes in or the interpretation of tax laws in jurisdictions where the Company conducts business.
10. Net Income Per Common Share
The following table sets forth the computation of basic and diluted net income per common share for the periods indicated (in thousands, except per share data):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Numerator:
Net income$7,521 $20,458 $15,640 $41,073 
Denominator:
Weighted-average common shares outstanding used to compute basic net income per share64,836 63,042 64,662 62,795 
Effect of dilutive common stock equivalents3,333 4,592 3,623 4,552 
Weighted-average common shares outstanding used to compute diluted net income per share68,169 67,634 68,285 67,347 
Net income per common share:
Basic net income per common share$0.12 $0.32 $0.24 $0.65 
Diluted net income per common share$0.11 $0.30 $0.23 $0.61 
Potentially dilutive shares, weighted average2,617 1,096 2,196 752 
Potentially dilutive shares have been excluded from the computation of diluted net income per common share when their effect is antidilutive. These antidilutive shares were from stock options.
11. Subsequent Event
In July 2022, the Company’s Board of Directors authorized a one-year stock repurchase program for up to $100 million of the Company’s common stock. Under the repurchase program, repurchases can be made from time to time using a variety of methods, which may include open market purchases, privately negotiated transactions or otherwise, all in accordance with the rules of the SEC and other applicable legal requirements. The specific timing, price and size of the purchases will depend on prevailing stock prices, general economic and market conditions, and other considerations consistent with the Company’s capital allocation strategy. The repurchase program does not obligate the Company to acquire a particular amount of common stock, and the repurchase program may be suspended or discontinued at any time at the Company’s discretion.
17

ITEM 2.Management’s Discussion and Analysis of Financial Condition and Results of Operations
This report includes “forward-looking statements” within the meaning of Section 27A of the Securities Act and Section 21E of the Securities and Exchange Act of 1934, as amended, or the Exchange Act. All statements other than statements of historical facts are “forward-looking statements” for purposes of these provisions, including any projections of earnings, revenue or other financial items, any statement of or concerning the following: the plans and objectives of management for future operations, proposed new products or licensing, product development, anticipated customer demand or capital expenditures, anticipated growth and trends in our business and industry, future economic and/or market conditions or performance and assumptions underlying any of the above. In some cases, forward-looking statements can be identified by the use of terminology such as “could,” “may,” “will,” “would,” “expects,” “believes,” “intends,” “plans,” “anticipates,” “estimates,” “projects,” “predicts,” “potential,” or “continue” or the negative thereof or other comparable terminology. Readers are cautioned that these forward-looking statements are only predictions and are subject to risks, uncertainties and assumptions that are difficult to predict. Although we believe that the expectations reflected in the forward-looking statements contained herein are reasonable, there can be no assurance that such expectations or any of the forward-looking statements will prove to be correct, and actual results could differ materially from those projected or assumed in the forward-looking statements. Our future financial condition and results of operations, as well as any forward-looking statements, are subject to inherent risks and uncertainties, including those identified in the Risk Factors discussed in Part II, Item 1A, of this report on Form 10-Q, as well as in other sections of this report and in our Annual Report on Form 10-K for the year ended December 31, 2021. All forward-looking statements and reasons why results may differ included in this Quarterly Report on Form 10-Q are made as of the date hereof, and we assume no obligation to update these forward-looking statements or reasons why actual results might differ.
Overview
We are the leading global provider of cloud and software platforms, systems and services that focus on the access network, the portion of the network that governs available bandwidth and determines the range and quality of services that can be offered to subscribers. These cloud and software platforms enable broadband service providers, or BSPs, of all types and sizes to innovate and transform their businesses. Our BSP customers are empowered to utilize real-time data and insights from Calix platforms to simplify their businesses and deliver experiences that excite their subscribers. These insights enable BSPs to grow their brand through increased subscriber acquisition, loyalty and revenue and to reduce their operating costs, thereby increasing the value of their businesses and contributions to their communities.
We market our cloud and software platforms, systems and services to BSPs globally through our direct sales force as well as select resellers. Our customers range from smaller, regional BSPs to some of the world’s largest BSPs. We have enabled approximately 1,800 BSP customers purchasing directly and through partners to deploy passive optical, Active Ethernet and point-to-point Ethernet fiber access networks.
Our revenue and potential revenue growth will depend on our ability to sell and license our cloud and software platforms, systems and services to strategically aligned customers of all types such as wireless internet service providers, fiber overbuilders, cable MSOs, municipalities and electric cooperatives in the United States and internationally. Our growth is also highly dependent on the speed and willingness of customers to adopt these platforms.
Revenue fluctuations result from many factors, including, but not limited to: increases or decreases in customer orders for our products and services, market, financial or other factors that may delay or materially impact customer purchasing decisions, non-availability of products due to supply chain challenges, including component and labor shortages and increasing lead times as well as disruptions as a result of the COVID-19 pandemic, contractual terms with customers that result in delayed revenue recognition and varying budget cycles and seasonal buying patterns of our customers. More specifically, our customers have in the past spent less in the first quarter as they are finalizing their annual budgets, and in certain regions, customers are challenged by winter weather conditions that inhibit fiber deployment in outside infrastructure. Our revenue is also dependent upon our customers’ timing of purchases, capital expenditure plans and decisions to upgrade their network or adopt new technologies, including adoption of our software and cloud platform solutions, as well as our ability to grow our customer base.
Cost of revenue is strongly correlated to revenue and tends to fluctuate due to all of the above factors that may cause revenue fluctuations. Factors that have impacted our cost of revenue for the three and six months ended July 2, 2022, and that we expect will impact cost of revenue in future periods, also include: changes in the mix of products delivered, customer location and regional mix, changes in the cost of our inventory, including higher costs due to materials shortages including components, supply constraints or unfavorable changes in trade policies, investments to support expansion of cloud and customer support offerings as well as our customer success organization, changes in product warranty and incurrence of retrofit costs, amortization of intangibles, asset write-offs, support fees for silicon-related development work for our products, allowances for obligations to our suppliers and inventory write-downs. Given the ongoing supply chain disruptions related to component shortages, longer lead times as a result of increased global demand for certain components and disruptions related to the COVID-19 pandemic, we have experienced and are continuing to experience product supply delays and related challenges, and
18

we expect these delays and related challenges to persist in the foreseeable future. Similarly, challenges in supply chain logistics have persisted due to greater global demand for transport services as well as labor shortages and resulted in increases in our global freight charges. In addition, we periodically elect to ship by air in order to meet delivery commitments to our customers, and air freight rates remain elevated relative to pre-pandemic levels. Cost of revenue also includes fixed expenses related to our internal operations, which could increase our cost of revenue as a percentage of revenue if our revenue declines.
Our gross profit and gross margin fluctuate based on timing of factors such as changes in customer mix and changes in the mix of products demanded and sold (and any related write-downs of existing inventory or accrual for supplier commitments) and have in the past been negatively impacted by increases in mix of revenue from channel sales rather than direct sales or other unfavorable customer or product mix, shipment volumes and any related volume discounts, changes in our product and services costs, pricing decreases or discounts, new product introductions or upgrades to existing products, customer rebates and incentive programs due to competitive pressure or materials shortages, supply constraints, investments to support expansion of cloud and customer support offerings, tariffs or unfavorable changes in trade policies.
Our operating expenses fluctuate based on the following factors among others: changes in headcount and personnel costs, which comprise a significant portion of our operating expenses; variable compensation due to fluctuations in shipment volumes or level of achievement against performance targets; timing of research and development expenses, including investments in innovative solutions and new customer segments, prototype builds and outsourced development resources; investments in marketing programs; asset write-offs; investments in our business and information technology infrastructure; and fluctuations in stock-based compensation expenses due to timing of equity grants or other factors affecting vesting.
Further, as a result of factors contributing to the fluctuations described above among other factors, many of which are outside our control, our quarterly operating results fluctuate from period to period. Comparing our operating results on a period-to-period basis may not be meaningful, and you should not rely on our past results as an indication of our future performance.
COVID-19 Pandemic
We are subject to risks and uncertainties as a result of the COVID-19 pandemic. The extent of the impact of the COVID-19 pandemic on our business is highly uncertain and difficult to predict, particularly as variants of the coronavirus continue to spread around the world. The COVID-19 pandemic has had a prolonged impact on our supply chain operations due to restrictions, reduced capacity and limited availability from suppliers on whom we rely for sourcing components and materials and from third-party partners on whom we rely for manufacturing, warehousing and logistics services. Our supply chain continues to face constraints primarily due to closures affecting suppliers and manufacturers in China that have led to challenges in sourcing components and materials. Shortages and delays relating to our components and materials have also caused, and may continue to cause, difficulties in managing global logistics, and transport and warehousing services for our products. The prolonged impact of COVID-19 could exacerbate these constraints or cause further supply chain disruptions.
Critical Accounting Policies and Estimates
Our financial statements are prepared in accordance with U.S. GAAP. These accounting principles require us to make certain estimates and judgments that can affect the reported amounts of assets and liabilities as of the date of the financial statements, as well as the reported amounts of revenue and expenses during the periods presented. Management bases its estimates, assumptions and judgments on historical experience and on various other factors that are believed to be reasonable under the circumstances. To the extent there are material differences between these estimates and actual results, our financial statements may be affected. Our management evaluates its estimates, assumptions and judgments on an ongoing basis.
Our critical accounting policies and estimates, which are revenue recognition, inventory valuation and supplier purchase commitments and income taxes, are described under “Critical Accounting Policies and Estimates” in “Management’s Discussion and Analysis of Financial Condition and Results of Operations” included in our Annual Report on Form 10-K for the year ended December 31, 2021. For the six months ended July 2, 2022, there have been no significant changes in our critical accounting policies and estimates.
Recent Accounting Pronouncements
There have been no additional accounting pronouncements or changes in accounting pronouncements during the six months ended July 2, 2022 as compared to the recent accounting pronouncements described in our Annual Report on Form 10-K for the year ended December 31, 2021 that are significant or potentially significant to us.
19

Results of Operations
Comparison of the Three and Six Months Ended July 2, 2022 and July 3, 2021
Revenue
The following table sets forth our revenue (dollars in thousands):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
Variance
in
Dollars
Variance
in
Percent
July 2,
2022
July 3,
2021
Variance
in
Dollars
Variance
in
Percent
Revenue:
Systems$191,195 $159,553 $31,642 20 %$365,621 $312,855 $52,766 17 %
Services10,847 9,117 1,730 19 %21,369 17,889 3,480 19 %
$202,042 $168,670 $33,372 20 %$386,990 $330,744 $56,246 17 %
Percent of total revenue:
Systems95 %95 %94 %95 %
Services%%%%
100 %100 %100 %100 %
Our revenue increased by $33.4 million and $56.2 million for the three and six months ended July 2, 2022, respectively, as compared to the corresponding periods in 2021 mostly due to higher systems revenue of $31.6 million and $52.8 million, respectively. Services revenue increased by $1.7 million and $3.5 million, compared to the corresponding periods in 2021. The increase in systems revenue was primarily due to higher revenue from our growing base of small, regional customers as BSPs continue to adopt our All Platform offerings and seek to provide a better Wi-Fi experience for their customers. The increase in services revenue was due to the continued ramp in our service offerings aligned with cloud and software products for our customers.
For the three and six months ended July 2, 2022, revenue generated in the United States was $183.9 million and $349.6 million, or 91% and 90% of our total revenue, compared to $138.6 million and $277.9 million, or 82% and 84% of our total revenue, respectively, for the same periods in 2021. International revenue was $18.1 million and $37.4 million, or 9% and 10% of our total revenue, for the three and six months ended July 2, 2022, as compared to $30.1 million and $52.8 million, or 18% and 16% of our total revenue, for the same periods in 2021.
No customer accounted for more than 10% of the Company’s total revenue for the three months ended July 2, 2022 and July 3, 2021.
Gross Profit and Gross Margin
The following table sets forth our gross profit and gross margin (dollars in thousands):
 Three Months EndedSix Months Ended
 July 2,
2022
July 3,
2021
Variance
in
Dollars
Variance
in
Percent
July 2,
2022
July 3,
2021
Variance
in
Dollars
Variance
in
Percent
Gross profit:
Systems$96,747 $86,880 $9,867 11 %$185,260 $170,519 $14,741 %
Services3,433 2,739 694 25 %6,712 5,342 1,370 26 %
$100,180 $89,619 $10,561 12 %$191,972 $175,861 $16,111 %
Gross margin:
Systems50.6 %54.5 %50.7 %54.5 %
Services31.6 %30.0 %31.4 %29.9 %
Overall49.6 %53.1 %49.6 %53.2 %
Gross profit increased to $100.2 million and $192.0 million for the three and six months ended July 2, 2022, respectively, from $89.6 million and $175.9 million during the corresponding periods in 2021 due to higher revenue for both systems and services. The decrease in systems gross margin of 390 and 380 basis points for the three and six months ended July 2, 2022, respectively, compared to the corresponding periods in 2021, was mainly due to higher component and logistics costs. Services gross margin increased by 160 and 150 basis points for the three and six months ended July 2, 2022, respectively, compared to the
20

corresponding periods in 2021, as our service revenue reflects a greater contribution from higher gross margin services aligned with our platform offerings, which more than offset the investments in our customer success organization.
Operating Expenses
Sales and Marketing Expenses
The following table sets forth our sales and marketing expenses (dollars in thousands):
 Three Months EndedSix Months Ended
 July 2,
2022
July 3,
2021
Variance
in
Dollars
Variance
in
Percent
July 2,
2022
July 3,
2021
Variance
in
Dollars
Variance
in
Percent
Sales and marketing expenses$41,138 $29,710 $11,428 38 %$77,229 $57,761 $19,468 34 %
Percent of total revenue20 %18 %20 %17 %
Sales and marketing expenses for the three months ended July 2, 2022 increased by $11.4 million compared with the corresponding period in 2021 primarily due to increases in personnel expenses mainly related to sales headcount and higher sales incentive compensation of $8.2 million, travel expenses of $1.5 million and stock-based compensation of $1.1 million.
Sales and marketing expenses for the six months ended July 2, 2022 increased by $19.5 million compared with the corresponding period in 2021 primarily due to increases in sales headcount and higher sales incentive compensation of $14.1 million, travel expenses of $2.6 million and stock-based compensation of $2.2 million.
We expect our investments in sales and marketing will increase in absolute dollars, but be relatively consistent as a percentage of revenue, as we extend our market reach and grow our business in support of our key strategic initiatives.
Research and Development Expenses
The following table sets forth our research and development expenses (dollars in thousands):
 Three Months EndedSix Months Ended
 July 2,
2022
July 3,
2021
Variance
in
Dollars
Variance
in
Percent
July 2,
2022
July 3,
2021
Variance
in
Dollars
Variance
in
Percent
Research and development expenses$30,430 $25,716 $4,714 18 %$60,247 $50,080 $10,167 20 %
Percent of total revenue15 %15 %16 %15 %
Percentage of systems gross profit31 %30 %33 %29 %
Research and development expenses for the three months ended July 2, 2022 increased by $4.7 million as compared with the corresponding period in 2021 mainly due to increases in personnel expenses of $2.7 million, stock-based compensation of $0.6 million, depreciation and amortization of $0.4 million and outside services of $0.3 million.
Research and development expenses for the six months ended July 2, 2022 increased by $10.2 million as compared with the corresponding period in 2021 mainly due to increases in personnel expenses of $5.3 million, stock-based compensation of $2.8 million and outside services of $0.9 million.
We expect our investments in research and development to increase in absolute dollars, but remain relatively consistent as a percentage of systems gross profit, as we expand the functionality and capabilities of our platforms.
General and Administrative Expenses
The following table sets forth our general and administrative expenses (dollars in thousands):
 Three Months EndedSix Months Ended
 July 2,
2022
July 3,
2021
Variance
in
Dollars
Variance
in
Percent
July 2,
2022
July 3,
2021
Variance
in
Dollars
Variance
in
Percent
General and administrative expenses$18,911 $13,664 $5,247 38 %$34,942 $26,689 $8,253 31 %
Percent of total revenue%%%%
21

General and administrative expenses for the three months ended July 2, 2022 increased by $5.2 million as compared with the corresponding period in 2021 mainly due to increases in personnel expenses of $2.4 million, stock-based compensation of $1.7 million and outside services of $0.7 million. These increases were driven by continued investments in information technology infrastructure.
General and administrative expenses for the six months ended July 2, 2022 increased by $8.3 million as compared with the corresponding period in 2021 mainly due to increases in stock-based compensation of $3.5 million, personnel expenses of $3.0 million and outside services of $1.2 million. These increases were driven by continued investments in information technology infrastructure.
We expect our general and administrative investments to increase in absolute dollars but decline slightly as a percentage of revenue over time as revenue continues to grow.
Income Taxes
The following table sets forth our income taxes (dollars in thousands):
 Three Months EndedSix Months Ended
 July 2,
2022
July 3,
2021
Variance
in
Dollars
Variance
in
Percent
July 2,
2022
July 3,
2021
Variance
in
Dollars
Variance
in
Percent
Income taxes$2,148 $207 $1,941 938 %$3,849 $357 $3,492 978 %
Effective tax rate22.2 %1.0 %19.7 %0.9 %
We maintained a full valuation allowance against our deferred tax assets until the third quarter of 2021. As such, for the three and six months ended July 3, 2021, our income tax provision was primarily due to state and foreign taxes payable. For the three and six months ended July 2, 2022, our income tax expense was $2.1 million and $3.8 million for an effective tax rate of 22.2% and 19.7%, respectively, which differs from the statutory rate of 21% primarily due to U.S. federal research tax credits and excess tax benefits from stock-based compensation partially offset by state taxes, the inclusion of income from certain foreign operations and the effect of non-deductible stock-based compensation for executive officers.
Our income taxes may be subject to fluctuation during the year and in future years as new information is obtained, which may affect the assumptions used to estimate the annual effective tax rate, including factors such as actual results differing from our estimates of pre-tax earnings in the various jurisdictions in which we operate, which could impact the recognition of our deferred tax assets, further benefits from stock option exercises, investments in our foreign operations, the recognition or de-recognition of tax benefits related to uncertain tax positions and changes in or the interpretation of tax laws in jurisdictions where we conduct business.
Liquidity and Capital Resources
We have funded our operations and investing activities primarily through sales of our common stock, cash flow generated from operations and various borrowing arrangements. As of July 2, 2022, we had cash, cash equivalents and marketable securities of $224.9 million, which consisted of deposits held at banks and major financial institutions and highly liquid marketable securities such as U.S. government agency securities and commercial paper.
Operating Activities
Net cash provided by operating activities was $14.4 million for the six months ended July 2, 2022 and consisted of net income of $15.6 million partially offset by non-cash charges of $29.2 million and cash flow decreases of $30.5 million reflected in the net change in assets and liabilities. Non-cash charges primarily consisted of stock-based compensation of $20.5 million, depreciation and amortization of $7.7 million and deferred income taxes of $1.0 million.
Cash flow decreases resulting from the net change in assets and liabilities primarily consisted of an increase in prepaid expenses and other assets of $23.3 million mainly due to advanced payments to supply chain partners, an increase in inventory of $9.4 million to improve our responsiveness to customer demand, a decrease in accounts payable of $6.1 million due to the timing of payments related to inventory purchases and an increase in accounts receivable of $0.9 million in line with our revenue growth. These changes were partially offset by an increase in deferred revenue of $8.7 million due to Calix Cloud and Revenue Edge subscriptions, and support contracts.
Net cash provided by operating activities was $33.4 million for the six months ended July 3, 2021 and consisted of net income of $41.1 million and non-cash charges of $19.1 million, partially offset by cash flow decreases of $26.8 million reflected in the net change in assets and liabilities. Non-cash charges consisted of stock-based compensation of $11.4 million and depreciation and amortization of $7.7 million. Cash flow decreases resulting from the net change in assets and liabilities primarily consisted of an increase in inventory of $24.9 million to support revenue growth and to mitigate supply chain shortages and disruptions
22

and a decrease in total accrued liabilities of $12.9 million, mainly related to incentive compensation payouts, rebate redemptions and a reduction of customer advance payments. In addition, there was an increase in accounts receivable of $10.7 million, due to product shipment timing, and an increase in prepaid expenses and other assets of $6.4 million mainly due to advance payments to our supply chain partners for deposits, expedite fees and component surcharges. These changes were partially offset by an increase in accounts payable of $21.9 million due to increased inventory purchases and an increase in deferred revenue of $6.2 million due to Calix Cloud subscriptions, support contracts and extended warranties.
Investing Activity
For the six months ended July 2, 2022, cash used in investing activities of $27.7 million consisted of net purchases of marketable securities of $21.8 million and capital expenditures of $5.9 million, consisting primarily of purchases of test equipment and computer equipment.
For the six months ended July 3, 2021, cash used in investing activities of $68.2 million consisted of net purchases of marketable securities of $64.3 million and capital expenditures of $3.9 million, consisting primarily of purchases of test equipment and computer equipment.
Financing Activities
Net cash provided by financing activities of $13.9 million for the six months ended July 2, 2022 and $12.6 million for the six months ended July 3, 2021 primarily consisted of proceeds from the issuance of common stock related to our equity plans.
Working Capital and Capital Expenditure Needs
Our material cash commitments include non-cancelable firm purchase commitments, normal recurring trade payables, compensation-related and expense accruals, operating leases and revenue-share obligations. We believe that our outsourced approach to manufacturing provides us significant flexibility in both managing inventory levels and financing our inventory. Furthermore, in July 2022, our Board of Directors has authorized a one-year stock repurchase program for up to $100 million of our common stock.
We believe, based on our current operating plan and expected operating cash flows, that our existing cash, cash equivalents and marketable securities will be sufficient to meet our anticipated cash needs for at least the next twelve months. If we are unable to execute on our current operating plan or continue to generate operating income and positive cash flows, our liquidity, results of operations and financial condition will be adversely affected, and we may need to cease our repurchase program or seek other sources of liquidity, including the sale of additional equity or borrowing, to support our working capital needs. In addition, we may choose to seek other sources of liquidity even if we believe we have generated sufficient cash flows to support our operational needs. There is no assurance that any other sources of liquidity may be available to us on acceptable terms or at all. If we are unable to generate sufficient cash flows or obtain other sources of liquidity, we will be forced to limit our development activities, reduce our investment in growth initiatives and institute cost-cutting measures, all of which may adversely impact our business and potential growth.
Contractual Obligations and Commitments
Our principal commitments as of July 2, 2022 consisted of our contractual obligations under non-cancelable outstanding purchase obligations, operating lease obligations for office space and a revenue share obligation. The following table summarizes our contractual obligations as of July 2, 2022 (in thousands):
Payments Due by Period
TotalLess Than 1 Year1-3 Years3-5 YearsMore Than 5 Years
Non-cancelable purchase commitments (1)
$359,324 $295,104 $60,452 $3,768 $— 
Operating lease obligations (2)
16,025 4,593 8,973 2,459 — 
Revenue share obligation (3)
13,617 4,001 9,616 — — 
$388,966 $303,698 $79,041 $6,227 $— 

(1) Represents outstanding purchase commitments to be delivered by our third-party manufacturers or other vendors. See Note 6, “Commitments and Contingencies” of the Notes to Condensed Consolidated Financial Statements included in Part I, Item 1 of this Quarterly Report on Form 10-Q for further discussion regarding our outstanding purchase commitments related to our third-party manufacturers.
(2) Future minimum operating lease obligations in the table above primarily include payments for our office locations, which expire at various dates through 2026. See Note 6 “Commitments and Contingencies” of the Notes to Condensed
23

Consolidated Financial Statements included in Part I, Item 1 of this Quarterly Report on Form 10-Q for further discussion regarding our operating leases.
(3) Represents remaining payments related to a revenue-share obligation, including imputed interest associated with developed software product and related enhancements by an engineering service provider. The schedule reflects our expected revenue-share and true-up payments based on our revenue projections for the developed products over a sales period through March 2024. If the minimum revenue-share payments are not achieved by the end of that period, a true-up payment will be due. See Note 5 “Balance Sheet Details” of the Notes to Condensed Consolidated Financial Statements included in Part I, Item 1 of this Quarterly Report on Form 10-Q for further discussion regarding our outstanding liability.
ITEM 3. Quantitative and Qualitative Disclosures About Market Risk
Interest Rate Risk
The primary objectives of our investment activity are to preserve principal, provide liquidity and maximize income without significantly increasing risk. By policy, we do not enter into investments for trading or speculative purposes. As of July 2, 2022, we had cash, cash equivalents and marketable securities of $224.9 million, which was held primarily in cash, money market funds and highly liquid marketable securities such as U.S. government agency securities and commercial paper. Due to the nature of these money market funds and highly liquid marketable securities, we believe that we do not have any material exposure to changes in the fair value of our cash equivalents and marketable securities as a result of changes in interest rates.
Foreign Currency Exchange Risk
Our primary foreign currency exposures are described below.
Economic Exposure
The direct effect of foreign currency fluctuations on our sales and expenses has not been material because our sales and expenses are primarily denominated in U.S. dollars, or USD. However, we are indirectly exposed to changes in foreign currency exchange rates to the extent of our use of foreign CMs whom we pay in USD. Increases in the local currency rates of these vendors in relation to USD could cause an increase in the price of products that we purchase. Additionally, if the USD strengthens relative to other currencies, such strengthening could have an indirect effect on our sales to the extent it raises the cost of our products to non-U.S. customers and thereby reduces demand. A weaker USD could have the opposite effect. The precise indirect effect of currency fluctuations is difficult to measure or predict because our sales are influenced by many factors in addition to the impact of such currency fluctuations.
Translation Exposure
Our sales contracts are primarily denominated in USD and, therefore, the majority of our revenue is not subject to foreign currency risk. We are directly exposed to changes in foreign exchange rates to the extent such changes affect our expenses related to our foreign assets and liabilities with our subsidiaries in China, India and the United Kingdom, whose functional currencies are Chinese Renminbi, or RMB, Indian Rupee, or INR, and British Pounds Sterling, or GBP.
Our operating expenses are incurred primarily in the United States, in China associated with our research and development operations that are maintained there, in India for our new center of excellence and in the United Kingdom for our international sales and marketing activities. Our operating expenses are generally denominated in the functional currencies of our subsidiaries in which the operations are located. The percentages of our operating expenses denominated in the following currencies for the indicated periods were as follows:
 Six Months Ended
 July 2,
2022
July 3,
2021
USD92 %92 %
RMB%%
GBP%%
INR%— %
100 %100 %
If USD had appreciated or depreciated by 10%, relative to RMB, GBP and INR, our operating expenses for the first six months of 2022 would have decreased or increased by approximately $1.4 million, or approximately 1%.
24

Foreign exchange rate fluctuations may also adversely impact our financial position as the assets and liabilities of our foreign operations are translated into USD in preparing our Condensed Consolidated Balance Sheets. The effect of foreign exchange rate fluctuations on our consolidated financial position for the six months ended July 2, 2022 was a net translation loss of $0.5 million. This loss is recognized as an adjustment to stockholders’ equity through “Accumulated other comprehensive loss.”
Transaction Exposure
We have certain assets and liabilities, primarily receivables and accounts payable (including inter-company transactions) that are denominated in currencies other than the relevant entity’s functional currency. In certain circumstances, changes in the functional currency value of these assets and liabilities create fluctuations in our reported consolidated financial position, cash flows and results of operations. Periodically, we use derivatives to hedge against fluctuations in foreign exchange rates. We do not enter into derivatives for speculative or trading purposes. We use foreign currency forward contracts to mitigate variability in gains and losses generated from the re-measurement of certain assets denominated in foreign currencies. These foreign exchange forward contracts typically have maturities of approximately one to two months. Transaction gains and losses on these foreign currency denominated assets and liabilities are recognized each period within “Other income (expense), net” in our Condensed Consolidated Statements of Comprehensive Income. During the six months ended July 2, 2022, the net loss we recognized related to these foreign exchange assets and liabilities of approximately $0.1 million.
ITEM 4.Controls and Procedures
Evaluation of Disclosure Controls and Procedures
Based on their evaluation as of July 2, 2022, our Chief Executive Officer and Chief Financial Officer, with the participation of our management, have concluded that our disclosure controls and procedures (as defined in Rules 13a–15(e) and 15d–15(e) under the Exchange Act) were effective at the reasonable assurance level.
Limitations on the Effectiveness of Controls
Our disclosure controls and procedures provide our Chief Executive Officer and Chief Financial Officer reasonable assurance that our disclosure controls and procedures will achieve their objectives. The term “disclosure controls and procedures,” as defined in Rules 13a-15(e) and 15d-15(e) under the Exchange Act, means controls and other procedures of a company that are designed to ensure that information required to be disclosed by a company in the reports that it files or submits under the Exchange Act is recorded, processed, summarized and reported within the time periods specified in the SEC’s rules and forms. Disclosure controls and procedures include, without limitation, controls and procedures designed to ensure that information required to be disclosed by a company in the reports that it files or submits under the Exchange Act is accumulated and communicated to the company’s management, including its principal executive and principal financial officers, as appropriate, to allow timely decisions regarding required disclosure. Our management, including our Chief Executive Officer and Chief Financial Officer, does not expect that our disclosure controls and procedures or our internal control over financial reporting can or will prevent all human error. Our management recognizes that a control system, no matter how well designed and implemented, can provide only reasonable, not absolute, assurance that the objectives of the control system are met. Furthermore, the design of a control system must reflect the fact that there are internal resource constraints, and the benefit of controls must be weighed relative to their corresponding costs. Because of the limitations in all control systems, no evaluation of controls can provide complete assurance that all control issues and instances of error, if any, within our company are detected. These inherent limitations include the realities that judgments in decision-making can be faulty, and that breakdowns can occur due to human error or mistake. Additionally, controls, no matter how well designed, could be circumvented by the individual acts of specific persons within the organization. The design of any system of controls is also based in part upon certain assumptions about the likelihood of future events, and there can be no assurance that any design will succeed in achieving its stated objectives under all potential future conditions.
Changes in Internal Control over Financial Reporting
There was no change in our internal control over financial reporting identified in connection with the evaluation required by Rule 13a-15(d) and 15d-15(d) of the Exchange Act that occurred during the period covered by this report that has materially affected, or is reasonably likely to materially affect, our internal control over financial reporting.
25

PART II. OTHER INFORMATION

ITEM 1. Legal Proceedings
For a description of our material pending legal proceedings, please refer to Note 6 “Commitments and Contingencies – Litigation” of the Notes to Condensed Consolidated Financial Statements included in Part I, Item 1 of this Quarterly Report on Form 10-Q, which is incorporated by reference.
ITEM 1A. Risk Factors
We have identified the following additional risks and uncertainties that may affect our business, financial condition and/or results of operations. The risks described below include any material changes to and supersede the description of the risk factors disclosed in Part I, Item 1A of our Annual Report on Form 10-K for the year ended December 31, 2021, as filed with the Securities and Exchange Commission on February 22, 2022. Investors should carefully consider the risks described below, together with the other information set forth in this Quarterly Report on Form 10-Q, before making any investment decision. The risks described below are not the only ones we face. Additional risks not currently known to us or that we currently believe are immaterial may also significantly impair our business operations. Our business could be harmed by any of these risks. The trading price of our common stock could decline due to any of these risks, and investors may lose all or part of their investment.
Business and Operational Risks
We have risks associated with being materially dependent upon third-party vendors; certain factors that affect our business as a result of those dependencies have in the past and could continue to disrupt our business and adversely impact our gross margin and results of operations.
We materially depend upon third-party vendors for our complex global supply chain operations, including for services to develop, design and source components and materials, as well as manufacture, transport and deliver our products. If any of these vendors stop providing their services, for any reason, we would have to obtain similar services from other sources, which may not be available on commercially reasonable terms, if at all. We also have limited control over disruptions that may occur at the facilities of those providers, such as supply interruptions, labor shortages, strikes, shipping backlogs at ports and similar disruptions to transportation infrastructure, design and manufacturing failures, quality control issues, systems failures or even facility closures arising from the COVID-19 pandemic or natural disasters. In addition, switching development firms or manufacturers could delay the manufacture and availability of products and/or require us to re-qualify our products with our customers, which would be costly and time-consuming. Any interruption in the development, supply or distribution of our products would adversely affect our ability to meet scheduled product deliveries to our customers and could result in lost revenue or higher costs, which would negatively impact our gross margin and operating results and harm our business.
Particular risks associated with management of our global supply chain operations include the following:
Manufacturing constraints, shortages and other disruptions. We do not have internal manufacturing capabilities and rely solely on a small number of contract manufacturers, or CMs, and original design manufacturers, or ODMs, to manufacture and supply our products. Our business operations and ability to supply our products are highly dependent upon our ability to secure adequate third-party manufacturing capabilities and capacity and to effectively manage those third parties to meet our business needs. Our dependence solely on third-party manufacturers makes us vulnerable to possible supply and capacity constraints and reduces our control over manufacturing disruptions due to component availability, extended lead times delivery schedules, quality, manufacturing yields and increased costs. Some of these risks have occurred from time to time in our business, including recent unforeseen increases in component costs. If these disruptions and constraints are prolonged, or if these manufacturers do not have the ability or business continuity plans to fulfill their obligations to us, our business could be disrupted. If we cannot effectively manage our vendors or if we fail to invest adequate resources to manage our supply chain operations, our ability to meet customer orders and generate revenue may be negatively impacted. A substantial portion of our manufacturing is done at facilities outside of the U.S., largely in Asia, which presents increased supply risk, including the risk of supply interruptions, delays, shortages or reductions in manufacturing quality or controls. In addition, these supply interruptions, delays and shortages could impair our ability to meet our customer requirements, require us to pay higher prices or incur expedite fees, which would harm our business and negatively impact our gross margin and results of operations. Our international manufacturing also creates risks and uncertainties associated with regulatory changes or government actions such as local business requirements, trade restrictions and tariffs, economic sanctions or related legislation, which may complicate our export and import activities, be disruptive to the operations of our manufacturers and logistics partners or result in higher product and shipping costs and variability of supply. For example, substantially all our silicon suppliers have extended their lead times to 52 weeks or more and increased prices. Manufacturing in Asia
26

further heightens our risk of meeting customer delivery requirements as we rely upon third-party logistics companies to transport and import significant volumes of products to the U.S. where we generate a substantial majority of our revenue. These supply chain risks are further increased by periodic shipping backlogs at ports and similar disruptions to transportation infrastructure due to a growing surge in global demand for goods.
Limited sources and sole-sourced supply. We are dependent upon sole-source or limited-source suppliers for some key product components such as chipsets and certain of our application-specific integrated circuit processors and resistor components, including certain components sourced solely through suppliers located in China and other Asian countries. Any of these suppliers could stop producing our components and raise the prices they charge us, in addition those products may be subject to higher tariffs, epidemics or other conditions that disrupt their operations, cease operations or enter into exclusive arrangements with our competitors, consequently affecting our operations and results. For example, we have experienced disruptions in our supply of certain components that we source from suppliers in China and other Asian countries as a result of the effects of the COVID-19 pandemic, causing delays in supply of our products due to production disruptions, factory closures and longer lead times for components and from uncertainty around trade and tariff policies between the U.S. and China. Being dependent upon a limited number of suppliers constrains our ability to mitigate these disruptions in our supply chain and such disruptions, particularly if prolonged. This may adversely affect our ability to obtain components and materials needed to manufacture our products at acceptable prices or at all. These risks would adversely affect our ability to meet scheduled product deliveries to our customers, increase costs and in turn harm our business and results of operations.
Limitations on ability to manage third-party risks. Our business with third-party manufacturers typically represents a relatively small percentage of their total revenue. Consequently, our orders may not be given adequate priority if such manufacturers have to allocate limited capacity among competing customers. This could delay supplies of product to us or limit our ability to ramp product volumes within desired timeframes. If any of our manufacturing partners are unable or unwilling to continue manufacturing our products in required volumes and at high quality levels, we would have to identify, qualify and select acceptable alternative manufacturers. Having to take the time to qualify new third-party manufacturers could disrupt our ability to maintain continuous supply of product to meet customer requirements. An alternative manufacturer may not be available to us when needed or may not be in a position to satisfy our production requirements at commercially reasonable prices and quality. In addition, we and/or our manufacturers may not be able to negotiate commercially reasonable terms and sufficient quantities of component supplies with component and materials suppliers to meet our manufacturing needs because our purchase volumes may be too low for us to be considered a priority customer for securing supplies, particularly when there are shortages or limited availability of key components and materials. As a result, suppliers could stop selling to us and our manufacturers at commercially reasonable prices, or at all. We have worked to mitigate the cost impact of recent price increases, but those efforts may not be successful. Any such interruption or delay may force us and our manufacturers to seek components or materials from alternative sources, which may not be available, or result in higher prices. Switching suppliers could also force us to redesign our products to accommodate new components and could require us to re-qualify our products with our customers, which would be costly and time consuming. A significant interruption in manufacturing or supply availability for any of these reasons would reduce supply to our customers, which would result in lost revenue and harm our customer relationships.
Ability to forecast and manage inventory liability with vendors. We have experienced unanticipated increases in demand from customers, in part as a result of higher consumer demand for internet services and improved Wi-Fi due to COVID-19; in turn, this has resulted in our shipments being delayed. If we underestimate product demand from our customers, our manufacturers may have inadequate component inventory to meet our demand. If we are not able to adequately anticipate demand, this could interrupt our product manufacturing, increase our cost of product revenue associated with expedite fees and air freight and/or result in delays or cancellation of customer orders. If we are unable to deliver products timely to our customers, we may lose customer goodwill or our customers may choose to purchase from other vendors, all of which may have a material negative impact on our revenue and operating results. If we overestimate our product demand, our third-party manufacturers may purchase excess components and build excess inventory, and we could be required to pay for these excess parts or products and their storage costs. Long lead times for component supply, which have been magnified by factory closures and shortages due to the COVID-19 pandemic as well as higher demand for certain components, and unanticipated demand for our products have in the past and are expected to continue to impact our ability to accurately forecast our production requirements. We may incur liabilities for certain component inventory purchases that have been rendered excess or obsolete, which may have an adverse effect on our gross margin, financial condition and results of operations.
27

Our business and results of operations have been, and may continue to be, negatively affected by the on-going effects of the COVID-19 pandemic and related severe impacts on the global economy.
For over two years the COVID-19 pandemic has severely impacted the global economy, disrupting financial markets, global manufacturing activities, customer purchasing patterns and general business operations, resulting in business closures, significant unemployment rates and substantial and prolonged government restrictions on business, travel and personal activities. These measures have disrupted our global supply chain activities, including our third-party manufacturers, logistics providers and suppliers, and significantly limited our business travel, customer engagements and normal business activities, all of which heighten our business and operational risks. Although global economic conditions have generally improved with the rollout of COVID-19 vaccines, business activity may not recover as quickly as anticipated, including as a result of inflationary pressures and the responses by central banking authorities to control such inflation, rising interest rates, debt and equity market fluctuations, diminished liquidity and credit availability, increased unemployment rates, decreased investor and consumer confidence, political turmoil, and supply chain challenges. As the effects of the pandemic persist, we may continue to experience a sustained shortage of components and materials, which may have a material negative impact on our ability to supply products to meet customer requirements and could materially adversely affect our business and results of operations. Although demand for our products has been strong in the short-term as subscribers seek more bandwidth and better Wi-Fi at home for work and entertainment, as the pandemic appears to be subsiding, the future of broadband expansion is unclear. For example, BSPs may not invest in our new platforms or delay infrastructure improvements due to the uncertainty in the global economy. A prolonged disruption to our business and operations and other adverse residual impacts of the COVID-19 pandemic or further future disruptions could have a material adverse effect on our business, results of operations and financial condition.
With the increased availability of vaccines in the U.S., we reopened our offices in July 2021 for fully-vaccinated employees who choose to work at the office and resumed business travel with safety precautions. We continue to monitor evolving pandemic conditions and focus on the safety, well-being and productivity of our workforce. The rapid emergence and subsidence of multiple COVID-19 variants and sub-variants suggest that effects of current and potential future COVID-19 variants on our business will continue to make planning responses to new outbreaks an on-going challenge. There are no assurances that the global economy will recover from the on-going effects of the pandemic quickly or at all, or that impacted areas will be able to adequately contain COVID-19 infections.
Security breaches and data loss may expose us to liability, harm our reputation and adversely affect our business.
As part of our business operations, we collect, store, process, use and/or disclose sensitive data relating to our business, including in connection with the provision of our cloud services and in our information systems and data centers (including third-party data centers). We also engage third-party providers to support various internal functions, such as human resources, finance, information technology and electronic communications, as well as the development and delivery of our products and cloud services, which includes collecting, handling, processing and/or storage of data on our behalf. These internal and external functions involve an array of software and systems (including cloud-based) that enable us to conduct, monitor and/or protect our business, operations, systems and IT assets. Our cloud-based solutions enable us to host our customers’ subscriber data in third-party data centers. While we and our third-party providers apply multiple layers of security to prevent unauthorized access to, use, alteration or disclosure of data, including encryption and authentication technologies, these security measures may be compromised by malicious hackers. Hackers could steal proprietary or personal information related to our business, products, employees and customers; hold data ransom; or otherwise interrupt our systems and services or those of our supply chain partners, vendors, customers or others. There have been increasing instances of cybersecurity attacks and security breaches, including sophisticated supply chain attacks. As we and our third-party providers continue to increase our reliance on virtual environments and communications systems and cloud-based solutions to support our work-from-anywhere culture and overall business needs, our exposures to third-party vulnerabilities and security risks also increase. Despite our on-going enhancement of security precautions, hackers are increasingly more sophisticated and aggressive, and our efforts may be inadequate to prevent all incidents of data breach or theft due, for example, to the increased use by attackers of tools and techniques that are specifically designed to circumvent controls, to avoid detection, and to remove or obfuscate forensic evidence.
We and certain of our third-party providers have in the past been subject to cyberattacks and security incidents. The theft, loss or misuse of proprietary or personal data collected, stored or processed by us or our service providers to run our business could result in significant security and remediation costs, regulatory fines and penalties, and/or litigation costs. Even if we and our third-party providers allocate, implement and manage reasonable security and data protection measures, we could experience data loss, unauthorized data disclosure or a breach of our systems, products or those of our third-party data centers that materially impact our business. The continued growth of our cloud-based platforms and services portfolio and increased reliance on third-party development partners and third-party software and cloud-based solutions, increases the likely risks arising from security breaches or data loss. Any data loss or compromise of our systems that collect and process personal information, or third-party data centers where that personal information is stored, could result in loss of confidence in the security of our offerings and loss of customers or customer goodwill. Such losses also could damage our reputation, lead to liability given the increasing development of strict privacy and data security laws and regulations around the world, and adversely affect our business, financial condition, operating results and cash flows. Although we maintain insurance that may
28

apply to cybersecurity risks and liabilities, there can be no guarantee that any or all costs or losses incurred will be partially or fully insured.
Business and operational risks associated with expanding our international operations could harm our business.
We are subject to business and operational risks associated with our international operations, including our global supply chain operations and our international offices located in Nanjing, China and Bangalore, India. In addition, we are exposed to risk arising from dependence upon third-party development contractors in India and our growing Bangalore staff, and, to a lesser extent, dependence upon our international sales operations. The risks associated with our international operations also include costs of complying with differing and changing laws and regulatory requirements, tariffs, export quotas, custom duties and other trade restrictions; effects of inflation, currency controls and/or fluctuations in currency exchange rates; limited, inadequate or non-existent IP protection; and uncertainties associated with political conflicts and instabilities, variable economic conditions, terrorist attacks or acts of war. Our development operations and activities in China and India involve these and other significant risks, including: local labor conditions and regulations; knowledge transfer related to our technology and exposure to misappropriation of IP or confidential information, including information that is proprietary to us, our customers and third parties; heightened exposure to changes in the economic, security, political and pandemic conditions; international trade agreements and U.S. tax provisions that could adversely affect our international operations; complexities of managing development timelines and deliverables from abroad; and differences in local business practices and customs that may not align with our expectations and standards.
Along with the foregoing risks, our international sales operations involve risks associated with greater costs and complexity localizing and supporting our products and platforms in local markets; evolving privacy regulations, trade regulations, compliance requirements and incremental costs applicable to the qualification, production, sale and delivery of our products; longer collection periods, financial instability and other difficulties impacting collection of accounts receivable in certain jurisdictions; more intense competition including from local equipment suppliers; and our reliance on value added resellers to sell and support our products in international markets given our limited presence and infrastructure outside the U.S. To expand our international operations, we will need to invest resources to attract key talent, build operational infrastructure, execute on our international strategy and drive international market demand for our products. If we invest substantial resources to expand our international operations and are unable to do so successfully and in a timely manner, our financial condition and results of operations may suffer.
If we do not successfully execute our business strategy to increase our sales to new and existing BSPs, our operating results, financial condition, cash flows and long-term growth may be negatively impacted.
Our growth depends upon our ability to increase sales to existing and new BSP customers of all types and sizes, and the execution of our strategy to increase sales to BSPs involves significant risk. The majority of our revenue is not recurring, and our customers generally have no committed purchase requirements, may cancel orders or cease purchasing our products at any time. If our customers stop purchasing our products for any reason, our business and results of operations would be harmed. If we are unable to increase our sales to new and existing BSPs, our operating results, financial condition, cash flows and long-term growth may be negatively impacted. Our strategy includes investing in regional sales teams and select channel partners to sell to smaller regional BSPs. A large portion of our current sales are to customers with smaller regional networks and limited capital expenditure budgets. The spending patterns of many of these customers are generally less formal than larger service providers and often characterized by small and sporadic purchases, and the potential revenue from any one of these customers is limited. We rely primarily on channel partners, including value added resellers, internationally and for certain U.S. markets. We face fierce competition for business with key channel partners. If we are unable to engage channel partners that we believe are key to our strategy, we may fail to grow our sales as planned. Furthermore, we rely on our channel partners to promote and sell our products. The loss of a key channel partner or the failure of our partners to provide adequate services could have a negative effect on customer satisfaction and could cause harm to our business.
Our selling efforts to larger BSPs require substantial investments of technical, marketing and sales resources through lengthy equipment qualification and sales cycles without any assurance of generating sales. We may be required to invest in costly upgrades to meet more stringent performance criteria and interoperability requirements, develop new customer-specific features or adapt our products to meet required standards. We have invested and expect to continue to invest considerable time, effort and expenditures, including investment in product research and development, related to these opportunities without any assurance that our efforts will result in revenue.
The quality of our support and services offerings is important to sustain and increase our sales to new and existing customers. Our services to customers have increasingly broadened to help them deploy our products within their networks. Once our products are deployed within our customers’ networks, they depend on our support organization to resolve any issues relating to those products. If we do not effectively assist our customers in deploying our products, succeed in helping them quickly resolve post-deployment issues or provide effective support, it could adversely affect our ability to sell our products to existing
29

customers and harm our reputation with potential new customers. As a result, our failure to maintain high quality support and services could result in the loss of customers, which would harm our business.
If we do not successfully increase our sales through adoption of our new platform offerings, our operating results, financial condition, cash flows and long-term growth may be negatively impacted.
We have platform offerings that are new and early in their life cycles and subject to uncertain market demand. If our customers are unwilling to adopt these new offerings, install our new products or deploy our new services, or if we are unable to achieve market acceptance of our products and platforms, our business and financial results may be harmed. Moreover, adoption of our cloud product offerings, such as our Revenue EDGE, is dependent upon the success of our customers in investing, marketing, selling and deploying broader services—including ancillary services—to their subscribers, and our ability to differentiate our products from competing or substitutive product and service offerings. For example, our Revenue EDGE Suites include network security, parental controls and a growing ecosystem of services from partners like Arlo, Bark and Servify. However, if subscriber demand for such services does not grow as expected or declines, or our customers are unable or unwilling to invest in our platforms to deploy and market these services, demand for our products may not grow as we anticipate.
We may have difficulty evolving and scaling our business and operations to meet customer and market demand, which could result in lower profitability or cause us to fail to execute on our business strategies.
In order to grow our business, we will need to continually evolve and scale our business and operations to meet customer and market demand. Evolving and scaling our business and operations places increased demands on our management as well as our financial and operational resources to effectively manage organizational change; design scalable processes; accelerate and/or refocus research and development activities; expand our manufacturing, supply chain and distribution capacity; increase our sales and marketing efforts; broaden our customer-support and services capabilities; maintain or increase operational efficiencies; scale support operations in a cost-effective manner; implement appropriate operational and financial systems; and maintain effective financial disclosure controls and procedures. If we cannot evolve and scale our business and operations effectively, we may not be able to execute our business strategies in a cost-effective manner and our business, financial condition, profitability and results of operations could be adversely affected.
Changing market and customer requirements may adversely affect the valuation of our inventory as well as our supplier purchase commitments.
Customer demand for our products can change rapidly in response to market and technology developments. We may, from time to time, adjust inventory valuations downward or end of life certain of our products in response to our assessment of our business strategy as well as consideration of demand from our customers for specific products or product lines. We also periodically evaluate our supplier purchase commitments, which have increased significantly due to extended lead-times in the current supply chain environment. We record a liability for excess and obsolete components based on our estimated future demand for our products, potential obsolescence of technology and product life cycles. If we fail to accurately plan our inventory levels, which becomes more challenging as component lead times increase, we may have to write off excess or obsolete inventory, or accrue a liability for component inventory held by our suppliers, both of which could have a material adverse effect on our financial condition and results of operations.
We could become subject to litigation that could harm our business or negatively impact our results of operations.
In the ordinary course of business, we are subject to legal claims and litigation, and may become involved in regulatory proceedings, related to disputes over commercial, competition, IP, labor and employment and other matters. Regardless of the merits of any such claims, litigation and regulatory proceedings are inherently uncertain, and can be costly, disruptive to our business and operations, harmful to our reputation, and distracting to management. In particular, as a technology company, we may be subject to IP claims asserting patent, copyright, trademark and/or other infringement claims that are costly to defend and could limit our ability to use some technologies in the future. The risk of such claims is heightened as we expand our products and services and increasingly rely on more technologies, including third-party IP rights that we license and incorporate into our products and services. Third parties from whom we license IP may be unable or unwilling to indemnify us for such claims or offer any other remedy to us. Increasingly, patent infringement claims are asserted by patent assertion entities and non-practicing entities, or NPEs, that do not conduct business as an operating company and hold and own patents only for the purpose of aggressively pursuing royalties through infringement assertions or patent infringement litigation. Further, in our industry, the number of assertions by NPEs continues to increase due in part to patent sales by operating companies to NPEs and availability of litigation financing. We have received and expect to continue to receive assertions from NPEs and other third parties alleging that we may be infringing their patents or other IP rights; offering licenses to such IP; and/or threatening litigation. Recently, two NPEs filed litigation against us alleging patent infringement; although we do not believe we infringe the asserted patents, the defense of these cases could be time-consuming, expensive, and divert the efforts of our engineering teams and management. If our products are found to infringe, these claims could also result in the suspension of our ability to import, market and sell our products and services, product shipment delays or requirements to modify our products or enter into
30

costly settlements or licensing agreements. Such royalty or licensing agreements, if required, may not be available to us on acceptable terms, if at all. Furthermore, we may additionally be financially responsible for claims made against our customers, including costs of litigation and damages awarded, under indemnity obligations which could further negatively impact our results of operations. Protracted litigation could cause us to incur significant defense costs, which would negatively impact our results of operations.
We have a history of losses and fluctuations in our gross margin and operating results, which make it difficult to predict our future performance and could cause the market price of our stock to decline.
We have a history of net operating losses and fluctuations in our quarterly and annual gross margin and operating results, including losses and fluctuations due to factors outside of our control. Factors that impact variability of our operating results include our ability to predict our revenue and reduce and control our costs, our ability to predict product functions and features desired by our customers, the impact of global economic conditions, our ability to effectively manage our global supply chain operations, our ability to effectively manage third parties upon whom we depend to conduct our business, our customers’ spending patterns and purchasing decisions, the impact of competition, customer adoption of our products, our ability to manage our legal, contractual and regulatory obligations and liabilities, and other risk factors identified in the lead-in to “Management’s Discussion and Analysis of Financial Condition and Results of Operations” above and in this “Risk Factors” section. Our gross margin is further impacted by customer, geographic and product mix, the impact of competition on our prices, our ability to manage our costs associated with components and materials, excess and obsolescence, expedite fees and logistics-related activities, contractual commitments and other product costs. Fluctuating results make it difficult to predict our future performance and could cause the market price of our stock to decline. We expect to continue to incur significant expenses and cash outlays as we expand our business and operations and target new customer opportunities. Given our anticipated growth and the intense competitive pressures we face, we may be unable to adequately control our operating expenses or maintain positive operating income. Comparing our operating results on a period-to-period basis may not be meaningful, and you should not rely on our past results as an indication of our future performance. If our revenue or operating results fall below the expectations of investors or securities analysts, or below any guidance we may provide to the market, the market price of our stock would likely decline.
We cannot guarantee that we will achieve sustained profitability. We will have to generate and sustain significant and consistent increased revenue, while continuing to control our expenses, to maintain profitability. If we are unable to sustain our operating income and positive cash flows from operations, our liquidity, results of operations and financial condition will be adversely affected, and we may be forced to limit our development activities, reduce our investment in growth initiatives and institute cost-cutting measures, any of which would adversely impact our business and growth.
We are exposed to customer credit risks that could adversely affect our operating results and financial condition.
We generally extend credit terms for sales to our customers which exposes us to credit risk. If we are unable to collect our accounts receivable balances as anticipated, our operating results and financial condition will be harmed. A number of factors contribute to this risk, including our ability to adequately assess a customer’s creditworthiness and financial condition, changes in a customer’s financial condition and/or liquidity, our ability to timely collect our accounts receivable from customers, disagreements with customers on invoiced balances and economic downturns or other unanticipated events impacting a customer’s ability to pay. Furthermore, some of our international customers operate in countries with developing economies, volatile financial markets or currency regulations that impact their ability to make payments in U.S. dollars. The COVID-19 pandemic has also presented financial challenges to numerous businesses, including delays in collections from some of our international customers in emerging markets and, if prolonged, may result in liquidity issues leading to heightened difficulties with collections. While we take measures to pursue collections on our accounts receivable, we have from time to time written down accounts receivable and written off doubtful accounts and may need to do so in future periods. The determination of allowances for doubtful accounts involves significant judgment, and if we underestimate our allowance for doubtful accounts, we will have to make further write-downs. Such write-downs or write-offs could negatively affect our operating results for the period in which they occur and could harm our cash flow or our financial condition.
If we lose any of our key personnel, or are unable to attract, train and retain qualified personnel, our ability to manage our business and continue our growth would be negatively impacted.
Our success depends, in large part, on the continued contributions of our key personnel who are highly skilled and would be difficult to replace. Competition for skilled personnel, particularly in software development and engineering, is intense. We cannot be certain that we will be successful in attracting and retaining qualified personnel, or that newly hired personnel will function effectively, both individually and as a group. If we are unable to effectively recruit, hire and utilize new employees to align with our company objectives, execution of our business strategy and our ability to react to changing market conditions may be impeded, and our business, financial condition and results of operations may suffer. We have operated using a “work-from-anywhere” model since the first half of 2020, and if we do not continue to effectively manage our distributed workforce, we could face challenges maintaining our corporate culture, which could increase attrition or limit our ability to attract
31

personnel. None of our key personnel are bound by a written employment contract to remain with us for a specified period. In addition, we do not currently maintain key person life insurance covering our key personnel. If we lose the services of any key personnel, our business, financial condition and results of operations may suffer.
If we experience disruptions with our enterprise resource planning system, we may not be able to effectively transact business or produce financial statements, which would adversely affect our business, results of operations and cash flows.
In January 2020, we migrated our Oracle enterprise resource planning, or ERP, system to Oracle’s cloud platform. With that migration, we are highly dependent upon Oracle to host, manage and maintain our ERP system. Any disruptions to their business or processes, or delays in their ability to provide services to us, may in turn disrupt our business operations or increase costs. Furthermore, we receive quarterly system updates and enhancements on the cloud platform according to Oracle’s release timeline and change management processes, which if not managed properly may disrupt our business operations and delay our ability to process transactions and produce reports necessary to conduct our business. We are highly dependent upon our ERP system for critical business functions, including order processing and management, supply chain and procurement operations, financial planning, accounting and reporting; accordingly, protracted disruption in functionality or processing capabilities of the ERP system could materially impair our ability to process transactions timely or produce accurate financial statements on a timely basis. If our systems suffer prolonged interruption, our results of operations and cash flows would be adversely affected.
As a public company we are subject to significant accounting, legal and regulatory requirements; our failure to comply with these requirements may adversely affect our operating results and financial condition.
We are subject to significant accounting, legal and regulatory requirements, including requirements and rules under the Sarbanes-Oxley Act, or SOX, and the Dodd-Frank Wall Street Reform and Consumer Protection Act, or Dodd-Frank, among other rules and regulations implemented by the SEC, as well as listing requirements of the New York Stock Exchange, or NYSE. We incur significant accounting, legal and other expenses and must invest substantial time and resources to comply with public company reporting and compliance requirements, including costs to ensure we have adequate internal controls over accounting and financial reporting, proper documentation and testing procedures among other requirements. We cannot be certain that the actions we have taken to implement internal controls over financial reporting will be sufficient. We have in the past discovered, and may in the future discover, areas of our internal financial and accounting controls and procedures that need improvement, particularly as we enhance, automate and improve functionality of our processes and internal applications, including Oracle’s cloud platform. New laws and regulations as well as changes to existing laws and regulations affecting public companies, including the provisions of SOX and Dodd-Frank and rules adopted by the SEC and the NYSE, would likely result in increased costs to us as we respond to their requirements. We continue to invest resources to comply with evolving laws and regulations, and this investment may result in increased general and administrative expense.
If we fail to maintain proper and effective internal controls, our ability to produce accurate financial statements on a timely basis could be impaired, which would adversely affect our operating results and our stock price.
Our management is responsible for establishing and maintaining adequate internal control over financial reporting to provide reasonable assurance regarding the reliability of our financial reporting and the preparation of financial statements in accordance with U.S. generally accepted accounting principles. Our management does not expect that our internal control over financial reporting will prevent or detect all error and all fraud. A control system, no matter how well designed and operated, can provide only reasonable, not absolute, assurance that the control system’s objectives will be met. Because of the inherent limitations in all control systems, no evaluation of controls can provide absolute assurance that misstatements due to error or fraud will not occur or that all control issues and instances of fraud, if any, within our company will have been detected. If we are unable to produce accurate financial statements on a timely basis, investors could lose confidence in the reliability of our financial statements, which could cause the market price of our common stock to decline and make it more difficult for us to finance our operations and growth.
Risks Related to Our Products
Our products are highly technical and may contain undetected hardware or software defects or software bugs, which could harm our reputation and adversely affect our business.
Our products, including our cloud and software platforms and systems, are highly technical and, when deployed, are critical to the operation of many networks. Our products have contained and may contain undetected defects, bugs or security vulnerabilities, which risks may be exacerbated as we continue to expand our cloud and software portfolio and include services from third-party partners. Some defects in our products may only be discovered after a product has been installed and used by customers and may in some cases only be detected under certain circumstances or after extended use. Any errors, bugs, defects or security vulnerabilities discovered in our products after commercial release could result in loss of revenue or delay in revenue recognition, loss of customers and increased service and warranty and retrofit costs, any of which could adversely affect our business, operating results and financial condition. In addition, we could face claims for security and data breach,
32

product liability, tort or breach of warranty. Our contracts with customers contain provisions relating to warranty disclaimers and liability limitations, which may not be upheld. Defending a lawsuit, regardless of its merit, is costly and may divert management’s attention and adversely affect the market’s perception of us and our products. In addition, if our business liability insurance coverage proves inadequate or future coverage is unavailable on acceptable terms or at all, our business, operating results and financial condition could be adversely impacted.
If we are unable to ensure that our products interoperate properly and as required within our customers’ networks, our business will be harmed.
Our products must interoperate with our customers’ existing and planned networks, which often have varied and complex specifications, utilize multiple protocol standards, include software applications and customizations and products from multiple vendors and contain multiple generations of products that have been added over time. As a result, we must continually ensure that our products interoperate properly with these existing and planned networks. To meet these requirements, we must undertake development efforts, including test protocols, that require substantial capital investment and employee resources. We may not accomplish these development goals quickly or cost-effectively, if at all. If we fail to maintain interoperability, we may face substantially reduced demand for our products, which would reduce our revenue opportunities and market share. We rely upon interoperability arrangements with equipment and software vendors for the use or integration of their technology with our products. If these relationships fail, we may have to devote substantially more resources to developing alternative products and processes and our efforts may not be as effective as the combined solutions under our current arrangements. In some cases, these other vendors are either direct competitors or companies that have extensive relationships with our existing and potential customers and influence the purchasing decisions of those customers. Some of our competitors have stronger relationships with some of our interoperability partners, and as a result, our ability to have successful interoperability arrangements with these companies may be harmed, which in turn may harm our ability to successfully sell and market our products.
Our estimates regarding warranty or product obligations are highly subjective. If our estimates change, the liability for warranty or product obligations may be increased, impacting future cost of revenue.
Our products are highly complex, and our product testing may not be adequate to detect all defects, errors, failures and quality issues. Accordingly, our estimates regarding future warranty or product obligations are highly subjective, and if our estimates change, the liability for warranty or product obligations may be increased, impacting future cost of revenue. Quality or performance problems for products covered under warranty could adversely impact our reputation and negatively affect our operating results and financial position. The development and production of new products with high complexity often involves problems with software, components and manufacturing methods. If significant warranty or other product obligations arise due to reliability or quality issues arising from defects in software, faulty components or improper manufacturing methods, our operating results and financial position could be negatively impacted by cost associated with fixing software or hardware defects; high service and warranty expenses; high inventory obsolescence expense; delays in collecting accounts receivable; payment of liquidated damages for performance failures; and loss of customer goodwill and future sales.
Our business and operations depend on proprietary technologies, and our financial performance may suffer if we cannot protect and enforce our IP rights.
Our success and ability to compete depend on proprietary technology. We rely significantly upon patent, copyright, trademark, trade secret and other IP laws, IP registration rights and agreements with our employees, customers, partners, suppliers and other parties, to establish and maintain IP rights necessary for our business and operations. U.S. IP laws afford us only limited protection, and the laws of some foreign countries do not protect proprietary rights to the same extent or at all. Our patent applications may not result in issued patents, and our issued patents may not be enforceable. Our IP rights could be challenged, invalidated, infringed or circumvented, any of which could impair or harm our business and operations and be costly to defend. Our failure to adequately protect our IP rights could result in our competitors offering similar products, resulting in the loss of our competitive advantage and decreased sales.
We and our third-party providers may be unable to adequately prevent unauthorized third-party copying or use of our IP. For example, contractual provisions protecting our IP could be breached, our IP could be reverse engineered or unlawfully distributed. It may become more difficult to adequately protect our IP as we expand our reliance on third parties for the design, development and/or manufacture of our products. In addition, we may become subject to increased risks arising from or related to security breaches, data loss or theft of our data or our IP, and have greater difficulty protecting our IP as our work-from-anywhere workforce and work product become more distributed. Policing the unauthorized use and distribution of our IP is difficult and costly. Litigation, which could result in substantial costs, diversion of resources and harm to our business, may be necessary to enforce our IP rights, protect our trade secrets or determine the validity and scope of proprietary rights.
33

If we are unable to obtain third-party technology licenses needed for our products and platform solutions, our business and operations will be impaired, and our operating results could be adversely affected.
We increasingly rely on technology licensed from third parties for our products and platform solutions. We may not be able to secure or maintain necessary technology licenses from these third parties on commercially reasonable terms or at all. Third parties may also choose to not renew licenses with us, demand unreasonable license fees or cease to offer technologies that we require. The inability to obtain necessary third-party licenses or to secure reasonable license terms at a cost acceptable to us could harm the competitiveness of our products and solutions, result in lost revenue and adversely affect our operating results. For example, we may be forced to forego product features or platform offerings, including features and offerings we believe are critical to our strategy, accept substitute technology of lower quality or performance standards or incur higher costs, or the time-to-market of our products or product features could be delayed. Furthermore, our ability to utilize third-party technology may be disrupted by disputes over IP rights, including claims of IP infringement, which could prevent us from offering or selling the products that utilize the disputed technology and adversely affect our operating results.
Our use of open-source software could impose limitations on our ability to commercialize our products.
We incorporate open-source software into our products. The terms of many open-source software licenses have not been interpreted by the courts, and there is a risk that such licenses could be construed in a manner that could impose unanticipated conditions or restrictions on our ability to sell our products. In such event, we could be required to make our proprietary software generally available to third parties, including competitors, at no cost, to seek licenses from third parties in order to continue offering our products, to re-engineer our products or to discontinue the sale of our products in the event re-engineering cannot be accomplished on a timely basis or at all, any of which could adversely affect our revenue and operating expenses.
Macroeconomic and Industry Risks
Adverse global economic, market and industry conditions, geopolitical issues and other conditions that impact our increasingly global operations could have a negative effect on our business, results of operations and financial condition and liquidity.
As a global company, our performance is affected by global economic, market and industry conditions (including the current inflationary economic environment and rising interest rates) as well as geopolitical issues and other conditions with global reach. In recent years, concerns about the global economic outlook have adversely affected market and business conditions in general. Macroeconomic weakness and uncertainty make it more difficult for us to manage our operations and accurately forecast revenue, gross margin and expenses. Geopolitical issues, such as the Russian invasion of Ukraine, ongoing conflicts between the United States and China, tariff and trade policy changes, increasing potential of conflict involving countries in Asia that are critical to our supply chain operations, such as Taiwan and China, have resulted in increasing global tensions and create uncertainty for global commerce. In particular, we incurred substantial costs and diversion of resources realigning our supply chain operations to move substantially all of our product manufacturing to locations outside of China as a result of U.S. tariff and trade policy changes. The on-going global impact of the COVID-19 pandemic continues to create shortages in component and supplies and otherwise disrupt and delay our global supply chain operations. Moreover, shipping backlogs and similar disruptions to transportation infrastructure due to an increasing surge in the global demand for goods has exacerbated supply chain challenges. In addition, historically high rising interest rates in the United States have begun to affect businesses across many industries, including ours, by increasing the costs of labor, employee healthcare, components, and freight and shipping, which may further constrain our customers’ or prospective customers’ budgets. To the extent there is a sustained general economic downturn, and our platforms and services are perceived by customers or potential customers as costly, or too difficult to deploy or migrate to, our revenue may be disproportionately affected by delays or reductions in spending. Sustained or worsening of global economic conditions and geopolitical issues may increase our cost of doing business, materially disrupt our supply chain operations, cause our customers to reduce or delay spending and intensify pricing pressures. We cannot predict the timing, strength, or duration of any economic slowdown, instability, or recovery, generally or within any particular industry. If the economic conditions of the general economy or markets in which we operate worsen from present levels, demand for our products, and our business, financial condition, and results of operations, could be adversely affected.
We face intense competition that could reduce our revenue and adversely affect our financial results.
The market for our products is highly competitive, and we expect competition from both established and new companies to increase. Our ability to compete successfully depends on a number of factors, including our ability to successfully develop new products and solutions that anticipate BSP and market requirements and changes in technology and industry standards; BSP acceptance and adoption of our products and solutions; our ability to differentiate our products from our competitors’ offerings based on performance, features, cost-effectiveness or other factors; our product capabilities to meet customer network requirements and preferences; and our success in marketing and selling our products and platform solutions.
34

Many of our current or potential competitors have longer operating histories, greater name recognition, broader product lines, larger customer bases and significantly greater financial, technical, sales, marketing and other resources than we do and are better positioned to acquire and offer complementary products and services. As the broadband access equipment market has undergone and continues to undergo consolidation, our competitors have merged, grown and been able to offer more comprehensive solutions than they individually had offered. Potential customers may also prefer to purchase from their existing suppliers rather than a new supplier, regardless of product performance or features, because the products that we and our competitors offer require a substantial investment of time and funds to qualify and install. The demand on network capacity due to the shift towards a remote workforce may attract new market entrants with competitive or substitutive products, which may lead to increased sales cycles, cause pricing pressure and impact adoption of our platforms due to the broader availability of product offerings. Some of our competitors may offer substantial discounts or rebates to win or retain customers. If we are forced to reduce prices to retain existing customers or win new customers, we may be unable to sustain gross margin at desired levels or profitability. Competitive pressures could result in increased pricing pressure, reduced profit margin, increased sales and marketing expenses and failure to increase, or the loss of, market share, any of which could reduce our revenue and adversely affect our financial results.
Our industry is characterized by rapid technological advance, and if we fail to develop new products or enhancements that meet changing BSP requirements, we could experience lower sales.
Our industry is characterized by rapid technological change, changing needs of BSPs, evolving industry standards and frequent introductions of new products and platforms. We invest significant amounts to pursue innovative technologies that we believe will be adopted by BSPs. For example, we have invested and continue to invest resources in our cloud and software platforms. In addition, on an ongoing basis, we expect to reposition our product and service offerings and introduce new offerings as we encounter rapidly changing BSP requirements and increasing competitive pressures. If we cannot increase sales of our new platforms and services, keep pace with rapid technological developments to meet customer needs and compete with evolving standards or if the technologies we choose to invest in fail to meet customer needs or are not adopted by customers in the timeframes that we expect, our financial condition and results of operations would be adversely affected.
Developing our products is complex and involves uncertainties, including pricing risks for key materials, component shortages and limited suppliers. We may experience design, manufacturing, software development quality, support, marketing and other difficulties that could delay or prevent the development, introduction or marketing of new products and enhancements. If we fail to meet our development targets, demand for our products will decline. If we are unable to anticipate and develop new products or enhancements to our existing products on a timely and cost-effective basis, our products may become technologically obsolete more rapidly than anticipated over time, resulting in lower sales which would harm our business. Furthermore, the introduction of new or enhanced products also requires that we manage the transition from older products in accordance with customer requirements. If we fail to maintain compatibility requirements in our customers’ networks, demand for our products would decline, which would reduce our revenue opportunities and market share.
We use third-party development partners both for key skills and to augment our employee developers. Using third-party development partners for our product and service platforms allows us to accelerate development and leverage the third parties’ expertise, but increases our risks due to reduced direct control over the third party’s work. This product development approach may cause unforeseen issues in product design, as well as challenges arising from integration and support of third-party features in our products. We have engineering services agreements that include future revenue-share payments on our sale of the developed products and that require us to make minimum payments regardless of whether we achieve the desired revenue levels. Even if our actual demand falls short of expectations, our agreements obligate us to make these minimum payments, which could adversely affect our financial results. In addition, our product revenues based on the third parties’ product development work may take several years to cover our out-of-pocket expenses, if ever.
Our sales cycles can be long and unpredictable, and our sales efforts require considerable time and expense. As a result, our sales are difficult to predict and may vary substantially, which may cause our operating results to fluctuate significantly.
The timing of our revenue is difficult to predict. Our sales efforts often involve educating BSPs about the use and benefits of our products, platforms and services. BSPs typically undertake a significant evaluation process, which frequently involves not only our products, platforms and services, but also those of our competitors and results in a lengthy sales cycle. Sales cycles for larger customers are relatively longer and require considerably more time and expense. We spend substantial time, effort and money in our sales efforts without any assurance that our efforts will produce sales. In addition, product purchases are frequently subject to budget constraints, multiple approvals and unplanned administrative, processing and other delays. The timing of revenue related to sales of products and services that have installation requirements may be difficult to predict due to interdependencies that may be beyond our control, such as BSP testing and turn-up protocols or other vendors’ products, services or installations of equipment upon which our products and services rely. Such delays may result in fluctuations in our quarterly revenue. If sales expected from a specific customer for a particular quarter are not realized in that quarter or at all, we may not achieve our revenue forecasts and our financial results would be adversely affected.
35

Our business depends upon the capital spending patterns and decisions of BSPs, and any decrease or delay in capital spending by BSPs due to the timing and availability of capital and other causes would reduce our revenue and harm our business.
Demand for our products depends on the magnitude and timing of capital spending by BSPs as they construct, expand, upgrade and maintain their access networks as well as BSPs’ adoption of our platforms and cloud-based services. Capital spending is cyclical in our industry, sporadic among individual BSPs and can change on short notice, which gives us little visibility into changes in spending behavior in any particular quarter. Capital spending for network infrastructure projects could be delayed or canceled in response to factors outside our control, such as reduced consumer spending, challenging capital markets or declining liquidity trends. BSP spending is also affected by reductions in budgets, including as a result of a general economic downturn, delays in purchasing cycles, access to government funding programs or capital markets, and seasonality and delays in capital allocation decisions. Historically, our customers may spend less or have less deployments in the first quarter due to pending annual budgets or, in certain regions, due to weather conditions that inhibit outside fiber deployment, resulting in weaker demand for our products in the first quarter. Softness in demand in any of our customer markets, including due to macro-economic conditions beyond our control or uncertainties associated with regulatory reforms, has in the past and could in the future lead to unexpected decline or slowdown in customer capital expenditure. Further, BSPs may pursue capital investment in network technologies other than those offered by us or may choose not to adopt our products and platform solutions in their networks. Reductions in capital expenditures by BSPs would have a material negative impact on our revenue and results of operations and slow our rate of revenue growth. As a consequence, our results for a particular period may be difficult to predict, and our prior results are not necessarily indicative of results in future periods.
Historically, our customer base has been concentrated, and the loss of any of our key customers may adversely impact our revenue and results of operations, and any delays in payment by a key customer could negatively impact our cash flows and working capital.
Historically, a large portion of our sales has been, and in the future may be, to a limited number of large customers. Changes in the BSP market, such as financial difficulties, spending cuts or corporate consolidations that impact purchasing decisions by these customers have and may again negatively impact our revenue, and as a result, revenue from such customers may remain flat or continue to decline. For example, sales to Lumen, our only greater than 10% customer in 2020, declined in 2021 and sales to other BSP customers increased such that Lumen was not a 10% customer. There is no assurance that purchasing levels by Lumen will increase from current levels. Any decrease or delay in purchases of any of our key customers, particularly if prolonged or sustained, or our inability to grow our sales with them, may have a material negative impact on our revenue and results of operations.
In addition, some larger customers may demand discounts and rebates or desire to purchase their access systems and software from multiple providers. As a result of these factors, our future revenue opportunities may be limited, and we may face pricing pressures, which in turn could adversely impact our gross margin and our profitability. The loss of, reduction in, or pricing discounts associated with orders from any larger customer could significantly reduce our revenue and harm our business. Furthermore, delays in payment and/or extended payment terms from any of our larger customers could have a material negative impact on our cash flows and working capital to support our business operations.
Over the years, the BSP market has undergone substantial consolidation, reducing the number of potential customers and delays or decreases in capital spending. Continued consolidation of the BSP industry and among independent local exchange carriers and independent operating company, or IOC, customers, who represent a large part of our business, could make it more difficult for us to grow our customer base, increase sales of our products and maintain adequate gross margin.
Government-sponsored programs and U.S. federal government shutdowns could impact the timing and buying patterns of BSPs, which may cause fluctuations in our operating results.
We sell to BSPs, including U.S.-based IOCs, which rely significantly upon interstate and intrastate access charges and federal and state subsidies in the form of grants and other funding such as the Federal Communications Commission’s, or FCC’s, Rural Digital Opportunity Fund, the CARES Act or the American Rescue Plan Act. The FCC and some states may change such payments and subsidies, which could reduce IOC revenue. Furthermore, many IOCs use or expect to use government-supported loan programs or grants, such as Rural Utility Service loans and grants, to finance capital spending. These government-supported loan programs and grants generally include conditions such as deployment criteria, domestic preference provisions and other requirements that apply to the project and selected equipment as conditions for funding. For example, the U.S. government recently introduced legislation imposing domestic content requirements for infrastructure programs that receive federal funding. Changes to the terms or administration of these programs, including uncertainty from government and administrative change, increasing focus on domestic requirements by the U.S. that may require re-assessment of compliance, potential funding limitations that impact our ability to meet program requirements or delays due to U.S. federal government shutdowns could reduce the ability of IOCs to access capital or secure funding these programs to purchase our products and services and thus reduce our revenue opportunities. Customers may curtail purchases if they receive less funding than planned,
36

are negatively impacted by federal government shutdowns or changes in government regulations and subsidies, or as funding winds down, any of which could have an adverse effect on our operating results and financial condition.
Government and Regulatory Risks
Increasing data privacy regulations could impact our business and expose us to increased liability.
Government authorities in the United States and around the world have implemented and are continuing to implement broader and more stringent laws and regulations concerning data protection. The interpretation and application of these data protection laws and regulations are often uncertain and changing, and it is possible that they may be interpreted and applied in a manner that is inconsistent with our data practices. For example, the General Data Protection Regulation, or EU GDPR, adopted by the European Union, or EU, and the UK General Data Protection Regulation, or UK GDPR, adopted by the United Kingdom, or UK (the EU GDPR and UK GDPR hereinafter referred to as the GDPR) and national data protection supplementing laws in these jurisdictions impose specific duties and requirements upon companies that collect, process or control personal data of individuals located in the EU/UK, including a principle of accountability and the obligation to demonstrate compliance through policies, procedures, training and audit. Although we currently do not have material operations or business in the EU or the UK, we are in the process of expanding in these jurisdictions and we have incurred and will continue to incur substantial costs in this respect. Furthermore, the GDPR imposes significant penalties for noncompliance of at least €20 million (for the EU GDPR) or £17.5 million (for the UK GDPR), or up to 4% of a company’s worldwide revenue; thus, any non-compliance with the GDPR could result in a material adverse effect on our business, financial condition and results of operations. Twice, the Court of Justice of the European Union, or the CJEU, has invalidated regulations designed to facilitate the transfer of data from European countries to the United States and in July 2020, the CJEU held that transfers must be assessed on a case-by-case basis and reliance on standard contractual clauses (a standard form of contract approved by the European Commission as an adequate mechanism for personal data transfers) may not be sufficient in all circumstances. In March 2022, the U.S. and EU announced a new regulatory regime intended to replace the invalidated regulations; however, this new regime has not yet been published. We currently rely on the standard contractual clauses and the UK International Data Transfer Agreement (or Addendum) to transfer personal data outside the European Economic Area and the UK respectively, including to the United States. As the enforcement landscape further develops, and supervisory authorities issue further guidance on – and revised standard contractual clauses for - international data transfers, we could suffer additional costs, complaints and/or regulatory investigations or fines; we may have to stop using certain tools and vendors and make other operational changes; we have had to and will have to implement revised standard contractual clauses for existing intragroup, customer and vendor arrangements within required time frames; and/or it could otherwise affect the manner in which we provide our services, and could adversely affect our business, operations and financial condition.
We and/or our customers are also subject to evolving EU and UK privacy laws on cookies, tracking technologies, e-marketing and electronic communications. Recent European court and regulator decisions are driving increased attention to cookies and tracking technologies. If the trend of increasing enforcement by regulators of the strict approach to opt-in consent for all but essential use cases, as seen in recent guidance and decisions continues, this could lead to substantial costs, require significant systems changes, limit the effectiveness of marketing activities conducted on behalf of our customers, divert the attention of our technology personnel, adversely affect our margins, and subject us to additional liabilities.
In light of the complex and evolving nature of EU, EU Member State and UK privacy laws, there can be no assurances that we will be successful in our efforts to comply with such laws; violations of such laws could result in regulatory investigations, fines, orders to cease/ change our use of technologies, as well as lead to civil claims including class actions, and reputational damage.
Since 2020, a number of U.S. states, including California, Colorado, Oklahoma, Utah and Virginia have enacted laws and regulations to protect consumers’ personal information and efforts to enact a comprehensive federal privacy law have intensified. Most of the new or proposed laws include restrictions on processing consumer information for targeted advertising, which could negatively affect our marketing cloud product. Complying with new and changing laws could cause us to incur substantial costs in order to market and sell our cloud-based solutions in the U.S. and internationally, deter customers from adopting our cloud-based solutions or require us to redesign our platform in order to meet customer requirements related to such laws. Regulatory actions or claims involving our practices in the collection, storage, processing, use or disclosure of consumer information or other personal data, even if unfounded, could damage our reputation and adversely affect our operating results. The failure or perceived failure to comply may result in government or civil proceedings or actions against us, or could cause us to lose customers, which could have an adverse effect on our business.
If we fail to comply with evolving industry standards, sales of our products would be adversely affected.
Our products are subject to a significant number of domestic and international standards, which evolve as new technologies are developed and deployed. As we expand into new global markets, we are likely to encounter additional standards. Our products must comply with these standards in order to be widely marketable. In some cases, we are required to obtain certifications or
37

authorizations before our products can be introduced, marketed or sold in new markets or to new customers. For example, our ability to maintain Operations System Modification for Intelligent Network Elements certification for our products will affect our ongoing ability to continue to sell our products to large BSPs. In addition, our ability to expand our international operations may be limited by standards in countries or may require us to redesign our products or develop new products to meet local standards. We may not be able to design our products to comply with local requirements, which would impede or prevent our ability to grow our business in those locations. Moreover, as we expand our business and operations globally, we must increase investments to maintain compliance with evolving standards across all of our markets. The costs of complying with evolving standards or failure to obtain timely authorizations or certification could prevent us from selling our products where these standards or regulations apply, which would result in lower revenue and lost market share.
Our failure or the failure of our manufacturers to comply with environmental and other legal regulations could adversely impact our results of operations.
The manufacture, assembly and testing of our products may require the use and disposal of hazardous materials that are subject to environmental, health and safety regulations, or materials subject to laws restricting the use of conflict minerals. We substantially depend upon our third-party manufacturers to comply with these requirements. Any failure by us or our third-party manufacturers to comply with these requirements could result in regulatory penalties, legal claims or disruption of production of our products. In addition, any failure to properly manage the use, transportation, emission, discharge, storage, recycling or disposal of hazardous materials could subject us to increased costs or liabilities. Existing and future environmental regulations and other legal requirements may restrict our use of certain materials to manufacture, assemble and test products. Any of these consequences could adversely impact our results of operations by increasing our expenses and/or requiring us to alter our manufacturing processes.
We are subject to governmental export and import controls that could subject us to liability or impair our ability to compete in additional international markets.
Our products are subject to U.S. export and trade controls and restrictions. International shipments of certain of our products may require export licenses or are subject to additional export requirements. In addition, the import laws of other countries may limit our ability to distribute our products, or our customers’ ability to buy and use our products, in those countries. Changes in our products or changes in export and import regulations or duties may create delays in the introduction of our products in international markets, prevent our customers with international operations from deploying our products or, in some cases, prevent the export or import of our products to certain countries altogether. Any change in export or import regulations, duties or related legislation, shift in approach to the enforcement or scope of existing regulations, or change in the countries, persons or technologies targeted by such regulations, could negatively impact our ability to sell, profitably or at all, our products to existing or potential international customers.
Regulatory and physical impacts of climate change and other natural events may affect our customers and our manufacturers, resulting in adverse effects on our operating results.
As emissions of greenhouse gases continue to alter the composition of the atmosphere, affecting large-scale weather patterns and the global climate, any new regulation of greenhouse gas emissions may result in additional costs to our customers and our manufacturers. In addition, the physical impacts of climate change and other natural events, including changes in weather patterns, drought, rising ocean and temperature levels, earthquakes and tsunamis may impact our customers, suppliers and manufacturers, and our operations. These potential physical effects may adversely affect our revenue, costs, production and delivery schedules, and cause harm to our results of operations and financial condition.
Our customers are subject to government regulation, and changes in current or future laws or regulations that negatively impact our customers could harm our business.
The FCC has jurisdiction over our U.S. customers, and FCC regulatory policies that create disincentives for investment in access network infrastructure or impact the competitive environment in which our customers operate may harm our business. For example, adoption of regulations that affect providers of broadband Internet access services could impede the penetration of our customers into certain markets or affect the prices they may charge in such markets. Similarly, changes to regulatory tariff requirements or other regulations relating to pricing or terms of carriage on communication networks could slow the development or expansion of network infrastructures, which could adversely affect the sale of our products and services. Many of our customers are subject to FCC rate regulation of interstate telecommunications services and are recipients of government stimulus payments. Limits or restrictions on access to these programs could affect the ability of IOCs to access capital, which would in turn reduce our revenue opportunities. In addition, many of our customers are subject to state and federal regulation of their businesses, including rates for such services, and may also receive funding from state universal service funds. Changes in state or federal rate regulations or universal service funding rules could adversely affect our customers’ revenue and capital spending plans. Moreover, various international regulatory bodies have jurisdiction over certain of our customers outside the U.S. Changes in any of these standards, laws and regulations, or judgments in favor of plaintiffs in lawsuits against BSPs based
38

on changed standards, laws and regulations could adversely affect the development of broadband networks and services. This, in turn, could directly or indirectly adversely impact the communications industry in which our customers operate.
Risks Related to Ownership of Our Common Stock and Other Risks
Our stock price may continue to be volatile, and the value of an investment in our common stock may decline.
The trading price of our common stock has been, and is likely to continue to be, volatile, which means that it could decline substantially within a short period of time and could fluctuate widely in response to various factors, some of which are beyond our control. These factors include those discussed above and others such as quarterly variations in our results of operations or those of our competitors; failure to meet any guidance that we have previously provided regarding our anticipated results; changes in earnings estimates or recommendations by securities analysts; failure to meet securities analysts’ estimates; announcements by us or our competitors of new products, significant contracts, commercial relationships, acquisitions or capital commitments; developments with respect to IP rights; our ability to develop and market new and enhanced products on a timely basis; our commencement of, or involvement in, litigation and developments relating to such litigation; changes in governmental regulations; and a slowdown in the communications industry or the general economy.
In the past several months, the stock market in general, and the market for technology companies in particular, has experienced extreme price and volume fluctuations that have often been unrelated or disproportionate to the operating performance of those companies. Broad market and industry factors may seriously affect the market price of our common stock, regardless of our actual operating performance. Since early 2020, the COVID-19 pandemic has severely impacted U.S. markets, causing dramatic swings in the U.S. stock exchanges that resulted in increased volatility in the trading price of our common stock. Historically, following periods of volatility in the market price of a company’s securities, there is increased risk that stockholders may initiate securities class action litigation against the company. Such litigation, if instituted against us, could result in substantial costs and a diversion of our management’s attention and resources.
Provisions in our charter documents and under Delaware law could discourage a takeover that stockholders may consider favorable and may lead to entrenchment of our management and Board of Directors.
Our amended and restated certificate of incorporation and amended and restated bylaws contain provisions that could have the effect of delaying or preventing changes in control or changes in our management or our Board of Directors. These provisions include: (1) a classified Board of Directors with three-year staggered terms, which may delay the ability of stockholders to change the membership of a majority of our Board of Directors; (2) no cumulative voting in the election of directors, which limits the ability of minority stockholders to elect director candidates; (3) the exclusive right of our Board of Directors to elect a director to fill a vacancy created by the expansion of the Board of Directors or the resignation, death or removal of a director, which prevents stockholders from being able to fill vacancies on our Board of Directors; (4) the ability of our Board of Directors to issue shares of preferred stock and to determine the price and other terms of those shares, including preferences and voting rights, without stockholder approval, which could be used to significantly dilute the ownership of a hostile acquirer; (5) a prohibition on stockholder action by written consent, which forces stockholder action to be taken at an annual or special meeting of our stockholders; (6) the requirement that a special meeting of stockholders may be called only by the chairman of the Board of Directors, the chief executive officer or the Board of Directors, which may delay the ability of our stockholders to force consideration of a proposal or to take action, including the removal of directors; and (7) advance notice procedures that stockholders must comply with in order to nominate candidates to our Board of Directors or to propose matters to be acted upon at a stockholders’ meeting, which may discourage or deter a potential acquirer from conducting a solicitation of proxies to elect the acquirer’s own slate of directors or otherwise attempting to obtain control of us. We are also subject to certain anti-takeover provisions under Delaware law, which prohibits a corporation, in general, from engaging in a business combination with any holder of 15% or more of its capital stock unless the holder has held the stock for three years or, among other things, the Board of Directors has approved the transaction.
We may need additional capital in the future to finance our business.
Our working capital needs and cash use have continued to increase to support our business operations and growth, and we may need additional capital if our current plans and assumptions change. In January 2022, we terminated our loan and security agreement with Bank of America, N.A. If our financial position deteriorates, we may not be able to secure a similar source of financing to support our working capital needs on acceptable terms or at all. If future financings involve the issuance of equity securities, our then-existing stockholders would suffer dilution. If we raise additional debt financing, we may be subject to restrictive covenants that limit our ability to conduct our business. If we are unable to sustain positive operating income and cash flows from operations, our liquidity, results of operations and financial condition may be adversely affected. Furthermore, if we are unable to generate sufficient cash flows to support our operational needs, we may need to cease our repurchase program or seek additional sources of liquidity, including borrowings, to support our working capital needs, even if we believe we have generated sufficient cash flows to support our operational needs. There is no assurance that any other sources of liquidity may be available to us on acceptable terms or at all. If we are unable to generate sufficient cash flows or obtain other
39

sources of liquidity, we will be forced to limit our development activities, reduce our investment in growth initiatives and institute cost-cutting measures, all of which would adversely impact our business and growth.
We do not currently intend to pay dividends on our common stock and, consequently, our stockholders’ ability to achieve a return on their investment will depend on appreciation in the price of our common stock.
We do not currently intend to pay a cash dividend on our common stock for the foreseeable future. We currently intend to invest our future earnings, if any, to fund our growth. Therefore, our stockholders are not likely to receive any dividends on our common stock for the foreseeable future.
Our failure to adequately address and resolve risks and uncertainties associated with acquisitions could have a material adverse impact on our financial condition and results of operations.
We may in the future acquire businesses, products or technologies to expand our product offerings and capabilities, customer base and business. We have evaluated and expect to continue to evaluate a wide array of potential strategic transactions. Such investments may involve significant risks and uncertainties, including distraction of management from current operations, unanticipated costs, and legal and regulatory challenges, all of which could have a material adverse impact on our financial condition and results of operations. In addition, the anticipated benefit of any acquisition may never materialize or the process of integrating acquired businesses, products or technologies may create unforeseen operating difficulties and expenditures.
ITEM 2. Unregistered Sales of Equity Securities and Use of Proceeds
None.
ITEM 3. Defaults Upon Senior Securities
None.
ITEM 4. Mine Safety Disclosures
Not applicable.
ITEM 5. Other Information
None.
40

ITEM 6. Exhibits
Exhibit
Number
Description
3.1
3.2
31.1
31.2
32.1
101.INSXBRL Instance Document
101.SCHXBRL Taxonomy Extension Schema Document
101.CALXBRL Taxonomy Extension Calculation Linkbase Document
101.DEFXBRL Taxonomy Extension Definition Linkbase Document
101.LABXBRL Taxonomy Extension Label Linkbase Document
101.PREXBRL Taxonomy Extension Presentation Linkbase Document
 



41

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.
 CALIX, INC.
(Registrant)
Date: July 26, 2022By:/s/ Carl Russo
 Carl Russo
 Chief Executive Officer
(Principal Executive Officer)
Date: July 26, 2022By:/s/ Cory Sindelar
 Cory Sindelar
 Chief Financial Officer
(Principal Financial Officer)
42
EX-31.1 2 calx_22q2ex311.htm EX-31.1 Document

Exhibit 31.1
CERTIFICATION OF CHIEF EXECUTIVE OFFICER
PURSUANT TO SECTION 302 OF
THE SARBANES-OXLEY ACT OF 2002
I, Carl Russo, certify that:
1.I have reviewed this quarterly report on Form 10-Q of Calix, Inc. for the quarter ended July 2, 2022;
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: July 26, 2022  /s/ Carl Russo
  Carl Russo
  Chief Executive Officer

EX-31.2 3 calx_22q2ex3121.htm EX-31.2 Document

Exhibit 31.2
CERTIFICATION OF CHIEF FINANCIAL OFFICER
PURSUANT TO SECTION 302 OF
THE SARBANES-OXLEY ACT OF 2002
I, Cory Sindelar, certify that:
1.I have reviewed this quarterly report on Form 10-Q of Calix, Inc. for the quarter ended July 2, 2022;
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: July 26, 2022  /s/ Cory Sindelar
  Cory Sindelar
  Chief Financial Officer

EX-32.1 4 calx_22q2ex321.htm EX-32.1 Document

Exhibit 32.1
CERTIFICATION OF CHIEF EXECUTIVE OFFICER AND CHIEF FINANCIAL OFFICER
PURSUANT TO 18 U.S.C. SECTION 1350,
AS ADOPTED PURSUANT TO
SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002
I, Carl Russo, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that the Quarterly Report of Calix, Inc. (the “Company”) on Form 10-Q for the fiscal quarter ended July 2, 2022 fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934 and that information contained in such Quarterly Report on Form 10-Q fairly presents in all material respects the financial condition and results of operations of the Company.
 
Date: July 26, 2022  /s/ Carl Russo
  Carl Russo
  Chief Executive Officer

I, Cory Sindelar, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that the Quarterly Report of Calix, Inc. (the “Company”) on Form 10-Q for the fiscal quarter ended July 2, 2022 fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934 and that information contained in such Quarterly Report on Form 10-Q fairly presents in all material respects the financial condition and results of operations of the Company.
 
Date: July 26, 2022  /s/ Cory Sindelar
  Cory Sindelar
  Chief Financial Officer
This certification accompanies the Form 10-Q to which it relates, is not deemed filed with the Securities and Exchange Commission and is not to be incorporated by reference into any filing of Calix, Inc. under the Securities Act of 1933, as amended, or the Securities Exchange Act of 1934, as amended (whether made before or after the date of the Form 10-Q), irrespective of any general incorporation language contained in such filing.

EX-101.SCH 5 calx-20220702.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0001001 - Document - Cover link:presentationLink link:calculationLink link:definitionLink 1001002 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 1002003 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 1003004 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME link:presentationLink link:calculationLink link:definitionLink 1004005 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY link:presentationLink link:calculationLink link:definitionLink 1005006 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 2101101 - Disclosure - Company and Basis of Presentation link:presentationLink link:calculationLink link:definitionLink 2102102 - Disclosure - Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 2203201 - Disclosure - Significant Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 2104103 - Disclosure - Cash, Cash Equivalents, and Marketable Securities link:presentationLink link:calculationLink link:definitionLink 2305301 - Disclosure - Cash, Cash Equivalents and Restricted Cash (Tables) link:presentationLink link:calculationLink link:definitionLink 2406401 - Disclosure - Cash, Cash Equivalents, and Marketable Securities - Summary of Cash and Cash Equivalents (Details) link:presentationLink link:calculationLink link:definitionLink 2407402 - Disclosure - Cash, Cash Equivalents, and Marketable Securities - Schedule of Marketable Securities (Details) link:presentationLink link:calculationLink link:definitionLink 2108104 - Disclosure - Fair Value Measurements link:presentationLink link:calculationLink link:definitionLink 2309302 - Disclosure - Fair Value Measures and Disclosures (Tables) link:presentationLink link:calculationLink link:definitionLink 2410403 - Disclosure - Fair Value Measures and Disclosures (Details) link:presentationLink link:calculationLink link:definitionLink 2111105 - Disclosure - Balance Sheet Details link:presentationLink link:calculationLink link:definitionLink 2312303 - Disclosure - Balance Sheet Details (Tables) link:presentationLink link:calculationLink link:definitionLink 2413404 - Disclosure - Balance Sheet Details - Accounts Receivable (Details) link:presentationLink link:calculationLink link:definitionLink 2414405 - Disclosure - Balance Sheet Details - Inventory (Details) link:presentationLink link:calculationLink link:definitionLink 2415406 - Disclosure - Balance Sheet Details - Property and Equipment, net (Details) link:presentationLink link:calculationLink link:definitionLink 2416407 - Disclosure - Balance Sheet Details - Other Long-Term Assets (Details) link:presentationLink link:calculationLink link:definitionLink 2417408 - Disclosure - Balance Sheet Details - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2418409 - Disclosure - Balance Sheet Details - Accrued Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 2419410 - Disclosure - Balance Sheet Details - Warranty Reserve (Details) link:presentationLink link:calculationLink link:definitionLink 2120106 - Disclosure - Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink 2321304 - Disclosure - Commitments and Contingencies (Tables) link:presentationLink link:calculationLink link:definitionLink 2422411 - Disclosure - Commitments and Contingencies - Operating Leases (Details) link:presentationLink link:calculationLink link:definitionLink 2422411 - Disclosure - Commitments and Contingencies - Operating Leases (Details) link:presentationLink link:calculationLink link:definitionLink 2423412 - Disclosure - Commitments and Contingencies - Operating Lease Liability (Details) link:presentationLink link:calculationLink link:definitionLink 2424413 - Disclosure - Commitments and Contingencies - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2125107 - Disclosure - Stockholders' Equity link:presentationLink link:calculationLink link:definitionLink 2326305 - Disclosure - Stockholders' Equity (Tables) link:presentationLink link:calculationLink link:definitionLink 2427414 - Disclosure - Stockholders' Equity - 2019 Equity Incentive Award Plan (Details) link:presentationLink link:calculationLink link:definitionLink 2428415 - Disclosure - Stockholders' Equity - Stock Options (Details) link:presentationLink link:calculationLink link:definitionLink 2429416 - Disclosure - Stockholders' Equity - Employee Stock Purchase Plans (Details) link:presentationLink link:calculationLink link:definitionLink 2430417 - Disclosure - Stockholders' Equity - Stock-Based Compensation Expense (Details) link:presentationLink link:calculationLink link:definitionLink 2131108 - Disclosure - Revenue from Contracts with Customers link:presentationLink link:calculationLink link:definitionLink 2332306 - Disclosure - Revenue from Contracts with Customers (Tables) link:presentationLink link:calculationLink link:definitionLink 2433418 - Disclosure - Revenue from Contracts with Customers - Revenue (Details) link:presentationLink link:calculationLink link:definitionLink 2434419 - Disclosure - Revenue from Contracts with Customers - Contract Asset and Liability (Details) link:presentationLink link:calculationLink link:definitionLink 2435420 - Disclosure - Revenue from Contracts with Customers - Performance Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 2435420 - Disclosure - Revenue from Contracts with Customers - Performance Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 2436421 - Disclosure - Revenue from Contracts with Customers - Contract Costs (Details) link:presentationLink link:calculationLink link:definitionLink 2437422 - Disclosure - Revenue from Contracts with Customers - Concentration Risk (Details) link:presentationLink link:calculationLink link:definitionLink 2138109 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 2339307 - Disclosure - Income Taxes (Tables) link:presentationLink link:calculationLink link:definitionLink 2440423 - Disclosure - Income Taxes - (Details) link:presentationLink link:calculationLink link:definitionLink 2141110 - Disclosure - Net Income Per Common Share link:presentationLink link:calculationLink link:definitionLink 2342308 - Disclosure - Net Income Per Common Share (Tables) link:presentationLink link:calculationLink link:definitionLink 2443424 - Disclosure - Net Income Per Common Share (Details) link:presentationLink link:calculationLink link:definitionLink 2144111 - Disclosure - Subsequent Event link:presentationLink link:calculationLink link:definitionLink 2445425 - Disclosure - Subsequent Events (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 6 calx-20220702_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 7 calx-20220702_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 8 calx-20220702_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Increase (Decrease) in Stockholders' Equity [Roll Forward] Increase (Decrease) in Stockholders' Equity [Roll Forward] Total future minimum lease payments Total future minimum lease payments Lessee, Operating Lease, Liability, to be Paid Summary of cash and cash equivalents Schedule of Cash and Cash Equivalents [Table Text Block] Other long-term liabilities Increase (Decrease) in Other Noncurrent Liabilities Deferred tax assets Deferred Income Tax Assets, Net Entity Address, Postal Zip Code Entity Address, Postal Zip Code Preferred stock, shares outstanding (in shares) Preferred Stock, Shares Outstanding Property and equipment, gross Property, Plant and Equipment, Gross Income Tax Disclosure [Abstract] Income Tax Disclosure [Abstract] Summary of inventory, net Inventory, Net [Abstract] Financial Instruments [Domain] Financial Instruments [Domain] Number of offering periods Share-Based Compensation Arrangement By Share-Based Payment Award, Number Of Offering Periods Share-Based Compensation Arrangement By Share-Based Payment Award, Number Of Offering Periods Depreciation and amortization Depreciation Stock options exercised (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period Weighted average operating discount rate used to determine the operating lease liability (percent) Operating Lease, Weighted Average Discount Rate, Percent Additional paid-in capital Additional Paid in Capital, Common Stock Short-Term Marketable Securities And Cash Equivalents Short-Term Marketable Securities And Cash Equivalents [Member] Short-Term Marketable Securities And Cash Equivalents Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Net income Net income Net income Net Income (Loss) Attributable to Parent Potentially dilutive shares, weighted average (in shares) Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Subsequent Event Type [Axis] Subsequent Event Type [Axis] San Jose, California San Jose, California [Member] San Jose, California Employee termination period following purchase date to receive shares subject to risk of forfeiture Share-Based Compensation Arrangement By Share-Based Payment Award, Employee Termination Period Following Purchase Date To Receive Shares Subject To Risk Of Forfeiture Share-Based Compensation Arrangement By Share-Based Payment Award, Employee Termination Period Following Purchase Date To Receive Shares Subject To Risk Of Forfeiture Accounts receivable Accounts Receivable, before Allowance for Credit Loss, Current Equity Component [Domain] Equity Component [Domain] Subsequent Event Type [Domain] Subsequent Event Type [Domain] Total assets Assets, Fair Value Disclosure Award vesting rights, percentage Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage Plan Name [Axis] Plan Name [Axis] Contract with customer, asset Contract with Customer, Asset, after Allowance for Credit Loss Total cash, cash equivalents, and marketable securities Cash, Cash Equivalents, And Marketable Securities Cash, Cash Equivalents, And Marketable Securities Operating lease, liability, current, statement of financial position Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration] Executive Officer Executive Officer [Member] Unrecognized stock-based compensation expense Share-Based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount Plan Name [Domain] Plan Name [Domain] Remainder of 2022 Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year Statement of Cash Flows [Abstract] Statement of Cash Flows [Abstract] Entity Address, State or Province Entity Address, State or Province Level 1 Fair Value, Inputs, Level 1 [Member] Employee Stock Purchase Plan Employee Stock [Member] Other comprehensive income (loss), net of tax: Other Comprehensive Income (Loss), Net of Tax [Abstract] Contract with customer, asset, expected to be billed remainder of year, percent Contract With Customer, Asset, Expected To Be Billed Remainder Of Year, Percent Contract With Customer, Asset, Expected To Be Billed Remainder Of Year, Percent Award Type [Axis] Award Type [Axis] Denominator: Weighted Average Number of Shares Outstanding, Basic [Abstract] Net cash provided by operating activities Net Cash Provided by (Used in) Operating Activities Total interest and other income (expense), net Interest And Other Income (Expense), Nonoperating Interest And Other Income (Expense), Nonoperating Operating leases Accrued liabilities - current portion of operating leases Operating Lease, Liability, Current Debt securities, available-for-sale Debt Securities, Available-for-Sale [Table Text Block] 2017 Nonqualified Employee Stock Purchase Plan 2017 Nonqualified Employee Stock Purchase Plan [Member] 2017 Nonqualified Employee Stock Purchase Plan Other Liabilities Other Liabilities 2021 Performance Targets 2021 Performance Targets [Member] 2021 Performance Targets Schedule of Cash and Cash Equivalents [Table] Schedule of Cash and Cash Equivalents [Table] Total liabilities Liabilities Weighted average remaining lease term for operating lease Operating Lease, Weighted Average Remaining Lease Term Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Geographical [Axis] Geographical [Axis] Investing activities Net Cash Provided by (Used in) Investing Activities [Abstract] Cost of warranty and retrofit claims Standard and Extended Product Warranty Accrual, Decrease for Payments Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Fair Value Hierarchy and NAV [Domain] Fair Value Hierarchy and NAV [Domain] Summary of property and equipment, net Property, Plant and Equipment [Table Text Block] Inventories Inventories [Member] Preferred stock, shares issued (in shares) Preferred Stock, Shares Issued Document Type Document Type Concentration Risk Benchmark [Domain] Concentration Risk Benchmark [Domain] Summary of property and equipment, net Property, Plant and Equipment, Net, by Type [Abstract] Finite-Lived Intangible Assets, Major Class Name [Domain] Finite-Lived Intangible Assets, Major Class Name [Domain] Cost of revenue: Cost of Revenue [Abstract] Product and Service [Domain] Product and Service [Domain] Entity Shell Company Entity Shell Company Deferred income taxes Deferred Income Tax Expense (Benefit) Accrued liabilities Increase (Decrease) in Accrued Liabilities Deferred revenue Increase (Decrease) in Deferred Revenue Concentration Risk [Table] Concentration Risk [Table] 2023 Lessee, Operating Lease, Liability, to be Paid, Year One Financial Instrument [Axis] Financial Instrument [Axis] Services Technology Service [Member] Net income per share, target achievement performance threshold, percent Share-Based Compensation Arrangement By Share-Based Payment Award, Net Income, Target Achievement Performance Threshold, Percent Share-Based Compensation Arrangement By Share-Based Payment Award, Net Income, Target Achievement Performance Threshold, Percent Subsequent Event Subsequent Event [Member] Deferred revenue, by arrangement, disclosure Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] Document Period End Date Document Period End Date Period One Share-Based Payment Arrangement, Tranche One [Member] Current portion of warranty and retrofit Product Warranty Accrual, Current Freight Accrued Freight Accrued Freight Debt Securities, Available-for-sale [Table] Debt Securities, Available-for-Sale [Table] Total assets Assets Net income per common share: Earnings Per Share [Abstract] Products Cost Of Revenue, Products [Member] Cost Of Revenue, Products [Member] Income Statement Location [Axis] Income Statement Location [Axis] 2019 Equity Incentive Award Plan 2019 Equity Incentive Award Plan [Member] 2019 Equity Incentive Award Plan [Member] Accrued liabilities Total accrued liabilities Accrued Liabilities, Current Weighted-average exercise price per share, stock options (in dollars per share) Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price Net cash provided by financing activities Net Cash Provided by (Used in) Financing Activities Accounting Policies [Abstract] Accounting Policies [Abstract] Stock repurchase program, authorized amount Stock Repurchase Program, Authorized Amount Stockholders' Equity Note [Abstract] Stockholders' Equity Note [Abstract] Compensation and related benefits Employee-related Liabilities, Current Income before income taxes Income before income taxes Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Stockholders’ equity: Stockholders' Equity Attributable to Parent [Abstract] Prepaid expenses and other current assets Prepaid Expense and Other Assets, Current Net Income Per Common Share Earnings Per Share [Text Block] Customer [Axis] Customer [Axis] Disclosure of share-based compensation arrangements by share-based payment award Disclosure of Share-Based Compensation Arrangements by Share-Based Payment Award [Table Text Block] Balance Sheet Details Supplemental Balance Sheet Disclosures [Text Block] Schedule of income taxes Schedule of Components of Income Tax Expense (Benefit) [Table Text Block] Award Type [Domain] Award Type [Domain] Recognition period Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition Computer equipment Computer Equipment [Member] Gross profit Gross Profit Schedule of other long-term assets Schedule of Other Assets, Noncurrent [Table Text Block] Entity Registrant Name Entity Registrant Name Subsequent Event Subsequent Events [Text Block] Entity Address, City or Town Entity Address, City or Town Operating expenses: Operating Expenses [Abstract] Statement of Financial Position [Abstract] Statement of Financial Position [Abstract] Entity Emerging Growth Company Entity Emerging Growth Company Deferred Revenue Arrangement Type [Axis] Deferred Revenue Arrangement Type [Axis] Common stock, par value (in dollars per share) Common Stock, Par or Stated Value Per Share Raw materials Inventory, Raw Materials, Net of Reserves Commitments and Contingencies Disclosure [Abstract] Commitments and Contingencies Disclosure [Abstract] Fair Value Measurements Fair Value Disclosures [Text Block] Trading Symbol Trading Symbol Entity File Number Entity File Number Municipal securities Municipal Notes [Member] Long-term portion of deferred revenue Deferred revenue, current Contract with Customer, Liability, Noncurrent Research and development Research and Development Expense Test equipment Equipment [Member] Offering period Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Offering Period Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Offering Period Title of Individual [Axis] Title of Individual [Axis] Effective tax rate Effective Income Tax Rate Reconciliation, Percent Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Axis] Money market funds Cash and Cash Equivalents, Fair Value Disclosure Bookings, target achievement performance threshold, percent Share-Based Compensation Arrangement By Share-Based Payment Award, Bookings, Target Achievement Performance Threshold, Percent Share-Based Compensation Arrangement By Share-Based Payment Award, Bookings, Target Achievement Performance Threshold, Percent Accounts payable Increase (Decrease) in Accounts Payable Subsequent Events [Abstract] Concentration risk, percentage Concentration Risk, Percentage Number of additional shares authorized (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Additional Shares Authorized Balance at beginning of period Balance at end of period Standard and Extended Product Warranty Accrual Income Taxes Income Tax Disclosure [Text Block] Middle East & Africa Middle East And Africa [Member] Middle East And Africa Customer advances or rebates Accrued Customer Rebates Accrued customer rebates. Finished goods Inventory, Finished Goods, Net of Reserves Basic (in dollars per share) Basic net income per common share (in dollars per share) Earnings Per Share, Basic Award performance period Share-Based Compensation Arrangement by Share-Based Payment Award, Award Requisite Service Period 2025 Lessee, Operating Lease, Liability, to be Paid, Year Three Capitalized contract cost, gross Capitalized Contract Cost, Gross Concentration Risk Type [Domain] Concentration Risk Type [Domain] Sales and marketing Selling and Marketing Expense Total stockholders’ equity Balance at beginning of period Balance at end of period Stockholders' Equity Attributable to Parent Vesting [Domain] Vesting [Domain] Entity Interactive Data Current Entity Interactive Data Current Capitalized contract cost, amortization Capitalized Contract Cost, Amortization Stockholders' Equity Shareholders' Equity and Share-Based Payments [Text Block] Schedule of Property, Plant and Equipment [Table] Property, Plant and Equipment [Table] Changes in operating assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] Numerator: Net Income (Loss) Attributable to Parent [Abstract] Other long-term assets Other Assets, Miscellaneous, Noncurrent Money market funds Money Market Funds [Member] Accumulated Deficit Retained Earnings [Member] Unrecognized stock-based compensation expense, stock options Share-Based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount Cash and Cash Equivalents [Line Items] Cash and Cash Equivalents [Line Items] Common Stock Common Stock [Member] ESPP, maximum employee payroll deduction percentage Share-Based Compensation Arrangement by Share-Based Payment Award, Maximum Employee Subscription Rate Total other comprehensive income (loss), net of tax Other comprehensive loss Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent Issuance of common stock under equity incentive plans, net of forfeitures Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture Shares available for future grant (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant Revenue Recognition Revenue [Policy Text Block] Statement [Table] Statement [Table] Document Quarterly Report Document Quarterly Report Furniture and fixtures Furniture and Fixtures [Member] Current assets: Assets, Current [Abstract] Operating leases Operating leases Operating Lease, Liability, Noncurrent Software Software [Member] Software Leasehold improvements Leasehold Improvements [Member] Revenue from external customers by geographic areas Revenue from External Customers by Geographic Areas [Table Text Block] Accumulated deficit Retained Earnings (Accumulated Deficit) Americas ex U.S. Americas ex U.S. [Member] Americas ex U.S. Number of shares purchased (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Shares Purchased for Award Cash equivalents Cash Equivalents, at Carrying Value Accounts receivable, net Accounts receivable, net Accounts Receivable, after Allowance for Credit Loss, Current Schedule of Finite-Lived Intangible Assets [Table] Schedule of Finite-Lived Intangible Assets [Table] Equity Components [Axis] Equity Components [Axis] Fair Value, Recurring Fair Value, Recurring [Member] Interest income (expense), net Interest Income (Expense), Nonoperating, Net Document Fiscal Year Focus Document Fiscal Year Focus Systems Systems Product [Member] Systems Product [Member] Long-term Purchase Commitment, Category of Item Purchased [Domain] Long-Term Purchase Commitment, Category of Item Purchased [Domain] Operating activities: Net Cash Provided by (Used in) Operating Activities [Abstract] Statement [Line Items] Statement [Line Items] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Axis] Loss Contingencies [Table] Loss Contingencies [Table] Amortized Cost Debt Securities, Available-for-Sale, Amortized Cost, Excluding Accrued Interest, after Allowance for Credit Loss, Current Gross Unrealized Losses Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax Right-of-use operating leases Operating Lease, Right-of-Use Asset Shares award weighting percent Share-Based Compensation Arrangement By Share-Based Payment Award, Shares Award Weighting Percent For Target Achievement Performance Threshold, Percent Share-Based Compensation Arrangement By Share-Based Payment Award, Shares Award Weighting Percent For Target Achievement Performance Threshold, Percent Accumulated Other Comprehensive Loss AOCI Attributable to Parent [Member] Document Transition Report Document Transition Report Local Phone Number Local Phone Number Summary of accounts receivable, net Accounts Receivable, after Allowance for Credit Loss, Current [Abstract] Operating income Operating Income (Loss) Inventory Increase (Decrease) in Inventories Newly Adopted Accounting Standard and Recent Accounting Pronouncements Not Yet Adopted New Accounting Pronouncements, Policy [Policy Text Block] Prepaid expenses and other assets Increase (Decrease) in Prepaid Expense and Other Assets Weighted-average number of shares used to compute net income per common share Weighted Average Number of Shares Outstanding Reconciliation [Abstract] Common stock, shares outstanding (in shares) Beginning Balance (in shares) Ending Balance (in shares) Common Stock, Shares, Outstanding Goodwill Goodwill Movement in Standard Product Warranty Accrual [Roll Forward] Movement in Standard Product Warranty Accrual [Roll Forward] Balance Sheet Related Disclosures [Abstract] Balance Sheet Related Disclosures [Abstract] Property, Plant and Equipment, Type [Axis] Long-Lived Tangible Asset [Axis] Category of Item Purchased [Axis] Category of Item Purchased [Axis] Number of shares granted if no-GAAP income below 80% and bookings below 90% of target (in shares) Share-Based Compensation Arrangement By Share-Based Payment Award, Number Of Shares Granted If Target Achievement Performance Threshold Not Met Share-Based Compensation Arrangement By Share-Based Payment Award, Number Of Shares Granted If Target Achievement Performance Threshold Not Met Adjustments to reconcile net income to net cash provided by operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Income taxes Income taxes Income Tax Expense (Benefit) Geographical [Domain] Geographical [Domain] Valuation allowance Deferred Tax Assets, Valuation Allowance Product warranty activities Schedule of Product Warranty Liability [Table Text Block] Preferred stock, par value (in dollars per share) Preferred Stock, Par or Stated Value Per Share 2026 Lessee, Operating Lease, Liability, to be Paid, Year Four Income Statement [Abstract] Income Statement [Abstract] Stock options granted (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross Additional Paid-in Capital Additional Paid-in Capital [Member] Balance Sheet Location [Domain] Balance Sheet Location [Domain] Document Fiscal Period Focus Document Fiscal Period Focus Net income per common share: Earnings Per Share, Basic [Abstract] Cost of revenue Cost of Goods and Services Sold Diluted (in shares) Weighted-average common shares outstanding used to compute diluted net income (loss) per share (in shares) Weighted Average Number of Shares Outstanding, Diluted Accumulated depreciation and amortization Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Summary of inventory Schedule of Inventory, Current [Table Text Block] ESPP, maximum number of shares per employee (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Maximum Number of Shares Per Employee Commitments and Contingencies [Line Items] Loss Contingencies [Line Items] Debt Securities, Available-for-sale [Line Items] Debt Securities, Available-for-Sale [Line Items] Accounts Receivable Accounts Receivable [Member] Shares purchased under ESPP (in shares) Stock Issued During Period, Shares, Employee Stock Ownership Plan Common stock, $0.025 par value; 100,000 shares authorized; 65,241 shares issued and outstanding as of July 2, 2022, and 64,274 shares issued and outstanding as of December 31, 2021 Common Stock, Value, Issued Accruals for product warranty and retrofit Standard and Extended Product Warranty Accrual, Increase for Warranties Issued Asia Pacific Asia Pacific [Member] One Customer One Customer [Member] One Customer Preferred stock, shares authorized (in shares) Preferred Stock, Shares Authorized Maximum contribution percent (up to 25%) Share-Based Compensation Arrangement By Share-Based Payment Award, Maximum Contribution Percent Share-Based Compensation Arrangement By Share-Based Payment Award, Maximum Contribution Percent Cash and cash equivalents at beginning of period Cash and cash equivalents at end of period Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents Commitments and Contingencies Commitments and Contingencies Disclosure [Text Block] Current liabilities: Liabilities, Current [Abstract] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Proceeds from common stock issuances related to employee benefit plans Proceeds from Stock Options Exercised Marketable securities Fair Value Debt Securities, Available-for-Sale, Excluding Accrued Interest, Current Common stock, shares issued (in shares) Common Stock, Shares, Issued Concentration Risk [Line Items] Concentration Risk [Line Items] Deferred revenue Deferred revenue, current Contract with Customer, Liability, Current Income Statement Location [Domain] Income Statement Location [Domain] 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] Amendment Flag Amendment Flag Useful life Finite-Lived Intangible Asset, Useful Life Net cash used in investing activities Net Cash Provided by (Used in) Investing Activities Rent expense Operating Lease, Cost Comprehensive income Comprehensive Income (Loss), Net of Tax, Attributable to Parent Operations Restructuring Reserve, Current Entity Current Reporting Status Entity Current Reporting Status Other assets Other assets, noncurrent Other Assets, Noncurrent ESPP, discounted purchase price percentage Share-Based Compensation Arrangement by Share-Based Payment Award, Purchase Price of Common Stock, Percent Products and services Product and Services [Member] Product and Services Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Component inventory held by suppliers Accrued customer rebates/prepayments Accrued Excess and Obsolete Inventory At Contract Manufacturer Accrued excess and obsolete inventory at contract manufacturer. Cash and Cash Equivalents [Axis] Cash and Cash Equivalents [Axis] Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Extended warranty Extended Warranty [Member] Extended Warranty Basis of Presentation Basis of Accounting, Policy [Policy Text Block] Effect of exchange rate changes on cash and cash equivalents Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations Property and equipment, net Property and equipment, net Property, Plant and Equipment, Net Cash and Cash Equivalents [Abstract] Cash and Cash Equivalents [Abstract] Operating lease, payments Operating Lease, Payments Sales and marketing Selling and Marketing Expense [Member] Stock Options Share-Based Payment Arrangement, Option [Member] Title of Individual [Domain] Title of Individual [Domain] Allowance for doubtful accounts Accounts Receivable, Allowance for Credit Loss, Current Other income (expense), net Other Nonoperating Income (Expense) Balance Sheet Location [Axis] Balance Sheet Location [Axis] Common stock, shares authorized (in shares) Common Stock, Shares Authorized Total operating expenses Operating Expenses Accumulated other comprehensive loss Accumulated Other Comprehensive Income (Loss), Net of Tax Cash and cash equivalents Total cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Product returns Product Return Reserve, Current Product Return Reserve, Current Total current assets Assets, Current Contract with customer, liability, revenue recognized Contract with Customer, Liability, Revenue Recognized Entity Small Business Entity Small Business Measurement Frequency [Domain] Measurement Frequency [Domain] Number of shares issued (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Shares Issued in Period Revenue: Revenues [Abstract] Intangible asset Finite-Lived Intangible Assets, Net Performance obligations expected to be satisfied, expected timing Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period Fair value, assets measured on recurring basis Fair Value, Assets Measured on Recurring Basis [Table Text Block] Purchases of marketable securities Payments to Acquire Debt Securities, Available-for-Sale Significant Accounting Policies Significant Accounting Policies [Text Block] Licensed Software Computer Software, Intangible Asset [Member] Property, Plant and Equipment, Type [Domain] Long-Lived Tangible Asset [Domain] Deferred Revenue [Domain] Deferred Revenue [Domain] Accounts receivable, net Increase (Decrease) in Accounts Receivable Title of 12(b) Security Title of 12(b) Security Company and Basis of Presentation Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block] Subsequent Event [Line Items] Subsequent Event [Line Items] Capitalized contract cost, impairment Capitalized Contract Cost, Impairment Loss Issuance of common stock under equity incentive plans, net of forfeitures (in shares) Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture Operating lease liability Operating Lease, Liability U.S. government agency securities US Government Agencies Debt Securities [Member] Royalty payment commitment Royalty Guarantees, Commitments, Amount LIABILITIES AND STOCKHOLDERS’ EQUITY Liabilities and Equity [Abstract] Foreign currency translation adjustments, net Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent Fair Value, Recurring and Nonrecurring [Table] Fair Value, Recurring and Nonrecurring [Table] Services Cost Of Revenue, Services [Member] Cost Of Revenue, Services [Member] Cash, Cash Equivalents, and Marketable Securities Cash, Cash Equivalents, and Marketable Securities [Text Block] Inventory Total inventory Inventory, Net Accounts payable Accounts Payable, Current Entity Filer Category Entity Filer Category Basic (in shares) Weighted-average common shares outstanding used to compute basic net income (loss) per share (in shares) Weighted Average Number of Shares Outstanding, Basic United States UNITED STATES Summary of accrued liabilities Accrued Liabilities, Current [Abstract] Stock-based compensation Share-Based Payment Arrangement, Expense Commitments and contingencies (See Note 6) Commitments and Contingencies Security Exchange Name Security Exchange Name Short-Term Marketable Securities Short-Term Marketable Securities [Member] Short-Term Marketable Securities Preferred stock, $0.025 par value; 5,000 shares authorized; no shares issued and outstanding as of July 2, 2022 and December 31, 2021 Preferred Stock, Value, Issued Property, Plant and Equipment [Line Items] Property, Plant and Equipment [Line Items] General and administrative General and Administrative Expense [Member] Revenue Total revenues Revenue from Contract with Customer, Excluding Assessed Tax Cover [Abstract] Revenue from Contracts with Customers Revenue from Contract with Customer [Text Block] Stock repurchase program, period authorized Stock Repurchase Program, Period in Force U.S. government securities US Government Debt Securities [Member] Total liabilities and stockholders’ equity Liabilities and Equity Cash Cash Effect of dilutive common stock equivalents (in shares) Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements Organization, Consolidation and Presentation of Financial Statements [Abstract] Organization, Consolidation and Presentation of Financial Statements [Abstract] Contract with customer, asset, prior period, not recognized Contract with Customer, Asset, Prior Period, Not Recognized Contract with Customer, Asset, Prior Period, Not Recognized Level 2 Fair Value, Inputs, Level 2 [Member] Current Fiscal Year End Date Current Fiscal Year End Date Current portion of revenue share payments Revenue Share Obligation, Current Revenue Share Obligation, Current Performance Based Stock Options Performance Based Stock Options [Member] Performance Based Stock Options Less imputed interest Lessee, Operating Lease, Liability, Undiscounted Excess Amount Vesting [Axis] Vesting [Axis] Finite-Lived Intangible Assets [Line Items] Finite-Lived Intangible Assets [Line Items] Intangible asset, net Intangible Assets, Net (Excluding Goodwill) Diluted (in dollars per share) Diluted net income per common share (in dollars per share) Earnings Per Share, Diluted Period Two Share-Based Payment Arrangement, Tranche Two [Member] Award vesting period Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period Stock-based compensation APIC, Share-Based Payment Arrangement, Increase for Cost Recognition Concentration Risk Type [Axis] Concentration Risk Type [Axis] Taxes payable Taxes Payable, Current, Excluding Accrued Income Taxes Taxes Payable, Current, Excluding Accrued Income Taxes Total current liabilities Liabilities, Current 2024 Lessee, Operating Lease, Liability, to be Paid, Year Two Summary of accounts receivable, net Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block] Customer Concentration Risk Customer Concentration Risk [Member] Purchase commitment period Long-Term Purchase Commitment, Period Remaining performance obligation, amount Revenue, Remaining Performance Obligation, Amount Corporate debt securities Corporate Debt Securities [Member] Interest and other income (expense), net: Nonoperating Income (Expense) [Abstract] Schedule of future minimum rental payments for operating leases Lessee, Operating Lease, Liability, Maturity [Table Text Block] Entity Address, Address Line One Entity Address, Address Line One Deferred revenue Contract with Customer, Liability Product and Service [Axis] Product and Service [Axis] Europe Europe [Member] Fair Value Disclosures [Abstract] Number of employee stock purchase plans Number Of Employee Stock Purchase Plans Number Of Employee Stock Purchase Plans Unrealized loss on available-for-sale marketable securities, net OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, after Tax Summary of accrued liabilities Schedule of Accrued Liabilities [Table Text Block] Cash and Cash Equivalents [Domain] Cash and Cash Equivalents [Domain] Equity [Abstract] Subsequent Event [Table] Subsequent Event [Table] Entity Tax Identification Number Entity Tax Identification Number Number of shares authorized (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized Payments related to financing arrangements Payments For Financing Arrangements Payments For Financing Arrangements Revenue from Contract with Customer [Abstract] Revenue from Contract with Customer [Abstract] Cash Cash [Member] Net increase (decrease) in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Commercial paper Commercial Paper [Member] Entity Central Index Key Entity Central Index Key Measurement Frequency [Axis] Measurement Frequency [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Maximum number of shares allocated per purchase period Share-Based Compensation Arrangement By Share-Based Payment Award, Number Of Shares Authorized Per Purchase Period Share-Based Compensation Arrangement By Share-Based Payment Award, Number Of Shares Authorized Per Purchase Period Other Other Accrued Liabilities, Current City Area Code City Area Code Professional and consulting fees Accrued Professional Fees, Current General and administrative General and Administrative Expense ASSETS Assets [Abstract] Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Maturities of marketable securities Proceeds from Maturities, Prepayments and Calls of Debt Securities, Available-for-Sale Remaining performance obligation, percentage Revenue, Remaining Performance Obligation, Percentage Financing activities: Net Cash Provided by (Used in) Financing Activities [Abstract] Stock-based compensation Share-Based Payment Arrangement, Noncash Expense Weighted-average grant date fair value (in dollars per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value Other long-term liabilities Other Liabilities, Noncurrent Purchases of property and equipment Payments to Acquire Property, Plant, and Equipment Increase in the number of shares of common stock issuable Share Based Compensation Arrangement By Share Based Payment Award Number Of Shares Available For Grant, Additional Shares Share Based Compensation Arrangement By Share Based Payment Award Number Of Shares Available For Grant, Additional Shares Disaggregation of Revenue [Line Items] Disaggregation of Revenue [Line Items] Research and development Research and Development Expense [Member] Outstanding purchase commitments Purchase Commitment, Remaining Minimum Amount Committed Schedule of net income (loss) per share Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Lessee, operating lease liability Lessee, Operating Lease Liability [Table Text Block] Lessee, Operating Lease Liability Customer [Domain] Customer [Domain] Target achievement threshold for shares award sliding scale Share-Based Compensation Arrangement By Share-Based Payment Award, Shares Award Target Achievement Performance Threshold, Percent Share-Based Compensation Arrangement By Share-Based Payment Award, Shares Award Target Achievement Performance Threshold, Percent EX-101.PRE 9 calx-20220702_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 10 R1.htm IDEA: XBRL DOCUMENT v3.22.2
Cover - shares
6 Months Ended
Jul. 02, 2022
Jul. 18, 2022
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Jul. 02, 2022  
Document Transition Report false  
Entity File Number 001-34674  
Entity Registrant Name Calix, Inc  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 68-0438710  
Entity Address, Address Line One 2777 Orchard Parkway  
Entity Address, City or Town San Jose  
Entity Address, State or Province CA  
Entity Address, Postal Zip Code 95134  
City Area Code 408  
Local Phone Number 514-3000  
Title of 12(b) Security Common Stock, par value $0.025 per share  
Trading Symbol CALX  
Security Exchange Name NYSE  
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   65,240,516
Entity Central Index Key 0001406666  
Amendment Flag false  
Document Fiscal Year Focus 2022  
Document Fiscal Period Focus Q2  
Current Fiscal Year End Date --12-31  
XML 11 R2.htm IDEA: XBRL DOCUMENT v3.22.2
CONDENSED CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Jul. 02, 2022
Dec. 31, 2021
Current assets:    
Cash and cash equivalents $ 51,516 $ 51,333
Marketable securities 173,369 153,002
Accounts receivable, net 86,128 85,219
Inventory 98,324 88,880
Prepaid expenses and other current assets 51,505 30,811
Total current assets 460,842 409,245
Property and equipment, net 22,029 21,783
Right-of-use operating leases 10,962 12,182
Deferred tax assets 167,928 168,962
Goodwill 116,175 116,175
Other assets 14,876 13,685
Total assets 792,812 742,032
Current liabilities:    
Accounts payable 22,951 29,061
Accrued liabilities 74,782 71,597
Deferred revenue 33,511 27,478
Total current liabilities 131,244 128,136
Long-term portion of deferred revenue 24,709 22,016
Operating leases 10,584 12,376
Other long-term liabilities 9,146 11,076
Total liabilities 175,683 173,604
Commitments and contingencies (See Note 6)
Stockholders’ equity:    
Preferred stock, $0.025 par value; 5,000 shares authorized; no shares issued and outstanding as of July 2, 2022 and December 31, 2021 0 0
Common stock, $0.025 par value; 100,000 shares authorized; 65,241 shares issued and outstanding as of July 2, 2022, and 64,274 shares issued and outstanding as of December 31, 2021 1,631 1,607
Additional paid-in capital 1,032,833 997,855
Accumulated other comprehensive loss (2,261) (320)
Accumulated deficit (415,074) (430,714)
Total stockholders’ equity 617,129 568,428
Total liabilities and stockholders’ equity $ 792,812 $ 742,032
XML 12 R3.htm IDEA: XBRL DOCUMENT v3.22.2
CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) - $ / shares
Jul. 02, 2022
Dec. 31, 2021
Statement of Financial Position [Abstract]    
Preferred stock, par value (in dollars per share) $ 0.025 $ 0.025
Preferred stock, shares authorized (in shares) 5,000,000 5,000,000
Preferred stock, shares issued (in shares) 0 0
Preferred stock, shares outstanding (in shares) 0 0
Common stock, par value (in dollars per share) $ 0.025 $ 0.025
Common stock, shares authorized (in shares) 100,000,000 100,000,000
Common stock, shares issued (in shares) 65,241,000 64,274,000
Common stock, shares outstanding (in shares) 65,241,000 64,274,000
XML 13 R4.htm IDEA: XBRL DOCUMENT v3.22.2
CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Jul. 02, 2022
Jul. 03, 2021
Jul. 02, 2022
Jul. 03, 2021
Revenue:        
Revenue $ 202,042 $ 168,670 $ 386,990 $ 330,744
Cost of revenue:        
Cost of revenue 101,862 79,051 195,018 154,883
Gross profit 100,180 89,619 191,972 175,861
Operating expenses:        
Sales and marketing 41,138 29,710 77,229 57,761
Research and development 30,430 25,716 60,247 50,080
General and administrative 18,911 13,664 34,942 26,689
Total operating expenses 90,479 69,090 172,418 134,530
Operating income 9,701 20,529 19,554 41,331
Interest and other income (expense), net:        
Interest income (expense), net 240 (119) 275 (244)
Other income (expense), net (272) 255 (340) 343
Total interest and other income (expense), net (32) 136 (65) 99
Income before income taxes 9,669 20,665 19,489 41,430
Income taxes 2,148 207 3,849 357
Net income $ 7,521 $ 20,458 $ 15,640 $ 41,073
Net income per common share:        
Basic (in dollars per share) $ 0.12 $ 0.32 $ 0.24 $ 0.65
Diluted (in dollars per share) $ 0.11 $ 0.30 $ 0.23 $ 0.61
Weighted-average number of shares used to compute net income per common share        
Basic (in shares) 64,836 63,042 64,662 62,795
Diluted (in shares) 68,169 67,634 68,285 67,347
Other comprehensive income (loss), net of tax:        
Unrealized loss on available-for-sale marketable securities, net $ (306) $ 0 $ (1,467) $ 0
Foreign currency translation adjustments, net (403) 44 (474) 9
Total other comprehensive income (loss), net of tax (709) 44 (1,941) 9
Comprehensive income 6,812 20,502 13,699 41,082
Systems        
Revenue:        
Revenue 191,195 159,553 365,621 312,855
Cost of revenue:        
Cost of revenue 94,448 72,673 180,361 142,336
Services        
Revenue:        
Revenue 10,847 9,117 21,369 17,889
Cost of revenue:        
Cost of revenue $ 7,414 $ 6,378 $ 14,657 $ 12,547
XML 14 R5.htm IDEA: XBRL DOCUMENT v3.22.2
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)
shares in Thousands, $ in Thousands
Total
Common Stock
Additional Paid-in Capital
Accumulated Other Comprehensive Loss
Accumulated Deficit
Beginning Balance (in shares) at Dec. 31, 2020   62,122      
Balance at beginning of period at Dec. 31, 2020 $ 280,325 $ 1,553 $ 948,055 $ (191) $ (669,092)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Stock-based compensation 11,394   11,394    
Issuance of common stock under equity incentive plans, net of forfeitures (in shares)   1,078      
Issuance of common stock under equity incentive plans, net of forfeitures 12,837 $ 27 12,810    
Net income 41,073       41,073
Other comprehensive loss 9     9  
Ending Balance (in shares) at Jul. 03, 2021   63,200      
Balance at end of period at Jul. 03, 2021 345,638 $ 1,580 972,259 (182) (628,019)
Beginning Balance (in shares) at Apr. 03, 2021   62,851      
Balance at beginning of period at Apr. 03, 2021 314,715 $ 1,572 961,846 (226) (648,477)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Stock-based compensation 6,223   6,223    
Issuance of common stock under equity incentive plans, net of forfeitures (in shares)   349      
Issuance of common stock under equity incentive plans, net of forfeitures 4,198 $ 8 4,190    
Net income 20,458       20,458
Other comprehensive loss 44     44  
Ending Balance (in shares) at Jul. 03, 2021   63,200      
Balance at end of period at Jul. 03, 2021 $ 345,638 $ 1,580 972,259 (182) (628,019)
Beginning Balance (in shares) at Dec. 31, 2021 64,274 64,274      
Balance at beginning of period at Dec. 31, 2021 $ 568,428 $ 1,607 997,855 (320) (430,714)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Stock-based compensation 20,475   20,475    
Issuance of common stock under equity incentive plans, net of forfeitures (in shares)   967      
Issuance of common stock under equity incentive plans, net of forfeitures 14,527 $ 24 14,503    
Net income 15,640       15,640
Other comprehensive loss $ (1,941)     (1,941)  
Ending Balance (in shares) at Jul. 02, 2022 65,241 65,241      
Balance at end of period at Jul. 02, 2022 $ 617,129 $ 1,631 1,032,833 (2,261) (415,074)
Beginning Balance (in shares) at Apr. 02, 2022   64,612      
Balance at beginning of period at Apr. 02, 2022 591,805 $ 1,616 1,014,336 (1,552) (422,595)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Stock-based compensation 10,007   10,007    
Issuance of common stock under equity incentive plans, net of forfeitures (in shares)   629      
Issuance of common stock under equity incentive plans, net of forfeitures 8,505 $ 15 8,490    
Net income 7,521       7,521
Other comprehensive loss $ (709)     (709)  
Ending Balance (in shares) at Jul. 02, 2022 65,241 65,241      
Balance at end of period at Jul. 02, 2022 $ 617,129 $ 1,631 $ 1,032,833 $ (2,261) $ (415,074)
XML 15 R6.htm IDEA: XBRL DOCUMENT v3.22.2
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
6 Months Ended
Jul. 02, 2022
Jul. 03, 2021
Operating activities:    
Net income $ 15,640 $ 41,073
Adjustments to reconcile net income to net cash provided by operating activities:    
Stock-based compensation 20,475 11,394
Depreciation and amortization 7,671 7,737
Deferred income taxes 1,034 0
Changes in operating assets and liabilities:    
Accounts receivable, net (909) (10,745)
Inventory (9,445) (24,868)
Prepaid expenses and other assets (23,268) (6,390)
Accounts payable (6,060) 21,918
Accrued liabilities 4,222 (10,184)
Deferred revenue 8,725 6,164
Other long-term liabilities (3,721) (2,742)
Net cash provided by operating activities 14,364 33,357
Investing activities    
Purchases of property and equipment (5,866) (3,928)
Purchases of marketable securities (103,286) (147,277)
Maturities of marketable securities 81,452 83,000
Net cash used in investing activities (27,700) (68,205)
Financing activities:    
Proceeds from common stock issuances related to employee benefit plans 14,527 12,837
Payments related to financing arrangements (632) (212)
Net cash provided by financing activities 13,895 12,625
Effect of exchange rate changes on cash and cash equivalents (376) 6
Net increase (decrease) in cash and cash equivalents 183 (22,217)
Cash and cash equivalents at beginning of period 51,333 80,807
Cash and cash equivalents at end of period $ 51,516 $ 58,590
XML 16 R7.htm IDEA: XBRL DOCUMENT v3.22.2
Company and Basis of Presentation
6 Months Ended
Jul. 02, 2022
Organization, Consolidation and Presentation of Financial Statements [Abstract]  
Company and Basis of Presentation Company and Basis of Presentation
Company
Calix, Inc. (together with its subsidiaries, “Calix” or the “Company”) was incorporated in August 1999 and is a Delaware corporation. The Company is the leading global provider of cloud and software platforms, systems and services that focus on the access network, the portion of the network that governs available bandwidth and determines the range and quality of services that can be offered to subscribers. These cloud and software platforms enable broadband service providers (“BSPs”) of all types and sizes to innovate and transform their businesses. The Company’s BSP customers are empowered to utilize real-time data and insights from Calix platforms to simplify their businesses and deliver experiences that excite their subscribers. These insights enable BSPs to grow their businesses through increased subscriber acquisition, loyalty and revenue, thereby increasing the value of their businesses and contributions to their communities.
Basis of Presentation
The accompanying unaudited condensed consolidated financial statements, including the accounts of Calix, Inc. and its wholly-owned subsidiaries, have been prepared in accordance with the requirements of the U.S. Securities and Exchange Commission (“SEC”) for interim reporting. As permitted under those rules, certain footnotes or other financial information that are normally required by U.S. generally accepted accounting principles (“GAAP”) can be condensed or omitted. In the opinion of management, the financial statements include all normal and recurring adjustments that are considered necessary for the fair presentation of the Company’s financial position and operating results. All intercompany balances and transactions have been eliminated in consolidation. The Condensed Consolidated Balance Sheet as of December 31, 2021 has been derived from the audited financial statements at that date.
The results of the Company’s operations can vary during each quarter of the year. Therefore, the results and trends in these interim financial statements may not be the same as those for the full year or any future periods. The information included in this Quarterly Report on Form 10-Q should be read in conjunction with the audited financial statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2021.
The Company’s fiscal year begins on January 1st and ends on December 31st. Quarterly periods are based on a 4-4-5 calendar with the first quarter ending on the Saturday closest to March 31st. As a result, the Company had one less day in the six months ended July 2, 2022 than for the six months ended July 3, 2021. The preparation of financial statements in conformity with GAAP for interim financial reporting requires management to make estimates and assumptions that affect the amounts reported in the condensed consolidated financial statements and accompanying notes. Actual results could differ from those estimates.
Risks and Uncertainties
The Company is subject to risks and uncertainties as a result of the COVID-19 pandemic. The extent of the impact of the COVID-19 pandemic on the Company’s business is highly uncertain and difficult to predict, particularly as variants of the coronavirus continue to spread around the world. Although the availability of vaccines has increased, there are no assurances as to when the pandemic will become endemic. The COVID-19 pandemic has had a prolonged impact on the Company’s supply chain operations due to restrictions, reduced capacity and limited availability from suppliers on whom the Company relies for sourcing components and materials and from third-party partners on whom the Company relies for manufacturing, warehousing and logistics services. The Company’s supply chain continues to face constraints primarily due to closures affecting suppliers and manufacturers in China that have led to challenges in sourcing components and materials. Shortages and delays relating to the Company’s components and materials have also caused, and may continue to cause, difficulties in managing global logistics, and transport and warehousing services for the Company’s products. The prolonged impact of COVID-19 could exacerbate these constraints or cause further supply chain disruptions.
XML 17 R8.htm IDEA: XBRL DOCUMENT v3.22.2
Significant Accounting Policies
6 Months Ended
Jul. 02, 2022
Accounting Policies [Abstract]  
Significant Accounting Policies Significant Accounting PoliciesThe Company’s significant accounting policies are disclosed in its Annual Report on Form 10-K for the year ended December 31, 2021. The Company’s significant accounting policies did not change during the six months ended July 2, 2022.
Newly Adopted Accounting Standard
The Company did not adopt any new accounting standards during the six months ended July 2, 2022 that were significant to the Company.

Recent Accounting Pronouncements Not Yet Adopted
There have been no additional accounting pronouncements or changes in accounting pronouncements during the six months ended July 2, 2022 as compared to the recent accounting pronouncements described in the Company’s Annual Report on Form 10-K for the year ended December 31, 2021, that are significant or potentially significant to the Company.
XML 18 R9.htm IDEA: XBRL DOCUMENT v3.22.2
Cash, Cash Equivalents, and Marketable Securities
6 Months Ended
Jul. 02, 2022
Cash and Cash Equivalents [Abstract]  
Cash, Cash Equivalents, and Marketable Securities Cash, Cash Equivalents and Marketable Securities
The Company has invested its excess cash primarily in money market funds and highly liquid marketable securities such as commercial paper, corporate debt securities, municipal securities and U.S. government securities. The Company considers all investments with maturities of three months or less when purchased to be cash equivalents. Marketable securities represent commercial paper, U.S. government agency securities, corporate debt securities, municipal securities and U.S. government securities with maturities greater than 90 days at date of purchase. Cash equivalents are stated at amounts that approximate fair value based on quoted market prices. Marketable securities are recorded at their fair values.
Marketable securities with maturities greater than one year are classified as current because management considers all marketable securities to be available for current operations.
The Company’s investments have been classified and accounted for as available-for-sale. Such investments are recorded at fair value and unrealized holding gains and losses are reported as a separate component of accumulated other comprehensive loss in the stockholders’ equity until realized. Realized gains and losses on sales of marketable securities, if any, are determined on the specific identification method and are reclassified from accumulated other comprehensive loss to results of operations as other expense, net. There were no realized gains and losses for the three and six months ended July 2, 2022 and July 3, 2021, respectively.
Cash, cash equivalents and marketable securities consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Cash and cash equivalents:
Cash$24,113 $26,442 
Commercial paper24,616 21,582 
Money market funds2,787 2,320 
Corporate debt securities— 989 
Total cash and cash equivalents51,516 51,333 
Marketable securities:
U.S. government securities99,808 60,279 
Commercial paper63,040 80,812 
U.S. government agency securities9,028 5,527 
Corporate debt securities799 3,576 
Municipal securities694 2,808 
Total marketable securities173,369 153,002 
$224,885 $204,335 
The carrying amounts of the Company’s money market funds approximate their fair values due to their nature, duration and short maturities.
The amortized cost and fair value of marketable securities as of July 2, 2022 were as follows (in thousands):
Amortized CostGross Unrealized LossesFair Value
U.S. government securities$101,289 $(1,481)$99,808 
Commercial paper87,725 (69)87,656 
U.S. government agency securities9,117 (89)9,028 
Corporate debt securities803 (4)799 
Municipal securities696 (2)694 
Total marketable securities$199,630 $(1,645)$197,985 
Unrealized gains and losses were de minimis as of December 31, 2021.
XML 19 R10.htm IDEA: XBRL DOCUMENT v3.22.2
Fair Value Measurements
6 Months Ended
Jul. 02, 2022
Fair Value Disclosures [Abstract]  
Fair Value Measurements Fair Value Measurements
The Company measures its cash equivalents and marketable securities at fair value on a recurring basis. Fair value is an exit price, representing the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As such, fair value is a market-based measurement that should be determined based on assumptions that market participants would use in pricing an asset or liability. The Company utilizes the following three-tier value hierarchy, which prioritizes the inputs used in measuring fair value:
Level 1 – Observable inputs that reflect quoted prices (unadjusted) for identical assets or liabilities in active markets.
Level 2 – Observable inputs other than quoted prices included in Level 1 for similar instruments in active markets, quoted prices for identical or similar instruments in markets that are not active, and model-driven valuations in which all significant inputs and significant value drivers are observable in active markets.
Level 3 – Unobservable inputs to the valuation derived from fair valuation techniques in which one or more significant inputs or significant value drivers are unobservable. The fair value hierarchy also requires the Company to maximize the use of observable inputs, when available, and to minimize the use of unobservable inputs when determining inputs and determining fair value.

The following tables sets forth the Company’s financial assets measured at fair value on a recurring basis based on the three-tier fair value hierarchy (in thousands):
As of July 2, 2022Level 1Level 2Total
Money market funds$2,787 $— $2,787 
U.S. government securities99,808 — 99,808 
Commercial paper— 87,656 87,656 
U.S. government agency securities— 9,028 9,028 
Corporate debt securities— 799 799 
Municipal securities— 694 694 
$102,595 $98,177 $200,772 

As of December 31, 2021Level 1Level 2Total
Money market funds$2,320 $— $2,320 
U.S. government securities60,279 — 60,279 
Commercial paper— 102,394 102,394 
U.S. government agency securities— 5,527 5,527 
Corporate debt securities— 4,565 4,565 
Municipal securities— 2,808 2,808 
$62,599 $115,294 $177,893 
XML 20 R11.htm IDEA: XBRL DOCUMENT v3.22.2
Balance Sheet Details
6 Months Ended
Jul. 02, 2022
Balance Sheet Related Disclosures [Abstract]  
Balance Sheet Details Balance Sheet Details
Accounts receivable, net consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Accounts receivable$86,788 $85,944 
Allowance for doubtful accounts(660)(725)
$86,128 $85,219 
Inventory consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Raw materials$674 $130 
Finished goods97,650 88,750 
$98,324 $88,880 
Property and equipment, net consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Test equipment$41,290 $39,476 
Computer equipment11,079 11,156 
Software9,623 9,013 
Leasehold improvements1,678 1,351 
Furniture and fixtures1,074 1,812 
Total64,744 62,808 
Accumulated depreciation and amortization(42,715)(41,025)
$22,029 $21,783 
Other long-term assets consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Intangible asset, net$5,569 $6,885 
Other long-term assets9,307 6,800 
$14,876 $13,685 
Intangible Asset Acquisition
In March 2018, and as amended in December 2020, the Company entered into an agreement with a vendor to develop a certain software product and related enhancements pursuant to which the Company is obligated to make revenue-share payments under the program, subject to aggregate fixed revenue-share payments of $15.8 million. The payments are based on a revenue-share rate applied to revenue from the developed-product and the corresponding hardware sales through March 2024. If the minimum revenue-share payments are not achieved by the end of that period, a true-up payment will be due. The Company had its first sale in August 2019, and as a result, the Company capitalized an intangible asset with a value of $13.2 million in the third quarter of 2019 and also recognized a liability of $13.2 million (a non-cash investing activity). The intangible asset has an estimated five-year useful life and is being amortized using the greater of the ratio of current gross revenue for the products to the total of current and anticipated future gross revenue for the products or the straight-line method. As of July 2, 2022, the liability, including accrued interest, was $12.9 million, of which $5.7 million is included in “Accrued liabilities” and $7.2 million in “Other long-term liabilities” in the accompanying Condensed Consolidated Balance Sheet. As of December 31, 2021, the liability, including accrued interest, was $13.2 million, of which $4.7 million was included in “Accrued liabilities” and $8.5 million in other “Other long-term liabilities.”
Accrued liabilities consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Compensation and related benefits$20,314 $23,165 
Component inventory held by suppliers9,310 7,611 
Current portion of warranty and retrofit6,777 7,076 
Current portion of revenue share payments5,747 4,731 
Professional and consulting fees5,678 4,819 
Freight5,201 3,997 
Customer advances or rebates5,118 4,742 
Operating leases3,822 3,596 
Taxes payable3,395 4,251 
Product returns2,804 1,836 
Operations1,765 1,400 
Other4,851 4,373 
$74,782 $71,597 
Changes in the Company’s accrued warranty and retrofit liability were as follows (in thousands):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Balance at beginning of period$9,570 $9,650 $9,594 $9,208 
Accruals for product warranty and retrofit
(351)1,003 177 2,205 
Cost of warranty and retrofit claims
(565)(742)(1,117)(1,502)
Balance at end of period$8,654 $9,911 $8,654 $9,911 
XML 21 R12.htm IDEA: XBRL DOCUMENT v3.22.2
Commitments and Contingencies
6 Months Ended
Jul. 02, 2022
Commitments and Contingencies Disclosure [Abstract]  
Commitments and Contingencies Commitments and Contingencies
Lease Commitments
The Company leases office space under non-cancelable operating leases. Certain of the Company’s operating leases contain renewal options and rent acceleration clauses. Future minimum payments under the non-cancelable operating leases consisted of the following as of July 2, 2022 (in thousands):
PeriodFuture Minimum Lease Payments
Remainder of 2022$2,263 
20234,680 
20244,510 
20254,010 
2026562 
Total future minimum lease payments16,025 
Less imputed interest(1,619)
$14,406 
As of July 2, 2022, the operating lease liability consisted of the following (in thousands):
Accrued liabilities - current portion of operating leases$3,822 
Operating leases10,584 
$14,406 
The Company leases its headquarters office space in San Jose, California under a lease agreement that expires in December 2025. The future minimum lease payments under the lease are $8.5 million and are included in the table above.
The weighted average discount rate for the Company’s operating leases as of July 2, 2022 was 6.1%. The weighted average remaining lease term as of July 2, 2022 was 3.5 years.
For the three and six months ended July 2, 2022, total rent expense of the Company was $1.1 million and $2.2 million, respectively. For the three and six months ended July 3, 2021, total rent expense of the Company was $0.9 million and $2.1 million, respectively. Cash paid within operating cash flows for operating leases was $2.3 million and $2.0 million for the six months ended July 2, 2022 and July 3, 2021, respectively.
Purchase Commitments
The Company’s suppliers, including contract manufacturers (“CMs”) and original design manufacturers (“ODMs”), place orders for certain component inventory in advance based upon the Company’s build forecasts in order to reduce manufacturing lead times and ensure adequate component supply. The components are used by the CMs and ODMs to build the products included in the build forecasts. The Company generally does not take ownership of the components held by CMs and ODMs. The Company places purchase orders with its CMs and ODMs in order to fulfill its monthly finished product inventory requirements. The Company incurs a liability when the CMs and ODMs convert the component inventory to a finished product and takes ownership of the finished goods inventory. In the event of termination of services with a manufacturing partner, the Company has purchased, and may be required to purchase in the future, certain of the remaining components inventory held by the CM or ODM as well as any outstanding orders pursuant to the contractual provisions with such CM or ODM. As of July 2, 2022 and December 31, 2021, the Company had approximately $324.2 million and $247.3 million, respectively, of outstanding purchase commitments for inventories to be delivered by its suppliers, including CMs and ODMs, within two years.
The Company has from time to time, and subject to certain conditions, reimbursed certain suppliers for component inventory purchases when this inventory has been rendered excess or obsolete, for example due to manufacturing and engineering change orders resulting from design changes, manufacturing discontinuation of products by its suppliers, or in cases where the Company has committed inventory levels that greatly exceed projected demand. The estimated excess and obsolete inventory liabilities related to such manufacturing and engineering change orders and other factors, which are included in accrued liabilities in the accompanying balance sheets, were $9.3 million and $7.6 million as of July 2, 2022 and December 31, 2021, respectively. The Company records the related charges in cost of systems revenue in its Condensed Consolidated Statements of Comprehensive Income.
Litigation
From time to time, the Company is involved in various legal proceedings arising from the normal course of business activities. The Company is not currently a party to any legal proceedings that, if determined adversely to the Company, in management’s opinion, are currently expected to individually or in the aggregate have a material adverse effect on the Company’s business, operating results or financial condition taken as a whole.
XML 22 R13.htm IDEA: XBRL DOCUMENT v3.22.2
Stockholders' Equity
6 Months Ended
Jul. 02, 2022
Stockholders' Equity Note [Abstract]  
Stockholders' Equity Stockholders’ Equity
2019 Equity Incentive Award Plan
Employees and consultants of the Company, its subsidiaries and affiliates, as well as members of the Company’s Board of Directors, are eligible to receive awards under the 2019 Equity Incentive Award Plan (“the 2019 Plan”). The 2019 Plan provides for the grant of stock options, including incentive stock options and nonqualified stock options, stock appreciation rights, restricted stock, restricted stock units, other stock or cash-based awards and dividend equivalents to eligible individuals. At the Company’s 2022 annual meeting of stockholders, the stockholders approved an increase in the number of shares of common stock issuable under the 2019 Plan by 1.5 million shares. As of July 2, 2022, there were 7.0 million shares available for issuance under the 2019 Plan.
Stock Options
During the three months ended July 2, 2022, stock option awards exercisable for up to an aggregate of 0.4 million shares of common stock were granted with a grant date weighted-average exercise price of $33.46 per share. During the six months ended July 2, 2022, stock option awards exercisable for up to an aggregate of 0.8 million shares of common stock were granted with a grant date weighted-average exercise price of $43.15 per share. These stock option awards vest 25% on the first anniversary of the vesting commencement date and on a quarterly basis thereafter over an additional three years.
In February 2022, performance-based stock option awards exercisable for up to an aggregate of 0.7 million shares of common stock were granted to certain Company executives with a grant date exercise price of $55.96 per share. The actual number of shares earned is contingent upon achievement of annual corporate financial targets for bookings and non-GAAP net operating income for 2022 (collectively, the “2022 Performance Targets”) during the one-year performance period. These performance-based stock option awards will vest, subject to certification by the Compensation Committee of the Company’s Board of Directors upon the achievement of the 2022 Performance Targets, as to 25% of the shares of common stock earned on the one year anniversary of the date of grant, and as to the remaining 75% of the shares of common stock earned, in substantially equal
quarterly installments over the subsequent 36 months, subject to the executive’s continuous service with the Company through the respective vesting dates. If the non-GAAP net operating income target is achieved below 80% of target or the bookings target is achieved below 90% of target, no shares would be awarded, and the performance-based stock option awards would be forfeited in full. If both targets are achieved at the minimum threshold of 80% of target for non-GAAP net operating income and 90% of target for bookings, then the shares are awarded at 50% of the granted shares, with an increasing percentage of shares awarded above the minimum thresholds up to 100% of the granted shares if both targets are achieved at 100% or more of target. The probability of meeting the performance conditions related to these performance-based stock option awards was assessed to be probable as of July 2, 2022, and stock-based compensation expense of $2.9 million was recognized for the three months ended July 2, 2022. For the six months ended July 2, 2022, stock-based compensation expense of $4.5 million was recognized.
During the three months ended July 2, 2022, 0.3 million shares of common stock were issued pursuant to the exercise of stock options at a weighted-average exercise price of $7.51 per share. During the six months ended July 2, 2022, 0.5 million shares of common stock were issued pursuant to the exercise of stock options at a weighted-average exercise price of $7.56 per share. As of July 2, 2022, unrecognized stock-based compensation expense of $55.3 million related to stock options, net of estimated forfeitures, is expected to be recognized over a weighted-average period of 2.2 years.
Employee Stock Purchase Plans
The Company maintains two employee stock purchase plans - the Amended and Restated Employee Stock Purchase Plan (the “ESPP”) and the Amended and Restated 2017 Nonqualified Employee Stock Purchase Plan (the “NQ ESPP”).
The ESPP allows eligible employees to purchase shares of the Company’s common stock through payroll deductions of up to 15% of their eligible compensation subject to certain Internal Revenue Code limitations. In addition, participants may purchase up to 2,000 shares of common stock during each offering period.
The offering periods under the ESPP are two six-month offering periods from August 15th through February 14th and February 15th through August 14th of each year. The price of common stock purchased under the ESPP is 85% of the lower of the fair market value of the common stock on the commencement date and the end date of each six-month offering period. At the Company’s 2022 annual meeting of stockholders, the stockholders approved an increase in the number of shares of common stock issuable under the ESPP by 1.3 million shares, which will go into effect for the six-month purchase period commencing August 15, 2022 and ending on February 14, 2023. The total shares authorized for issuance under the ESPP increased from 11.1 million shares to 12.4 million shares. As of July 2, 2022, there were 3.5 million shares available for issuance under the ESPP. During the six months ended July 2, 2022, 0.1 million shares were purchased under the ESPP. As of July 2, 2022, unrecognized stock-based compensation expense of $0.3 million related to the ESPP is expected to be recognized over a remaining service period of 0.1 years.
The NQ ESPP allows eligible employees to purchase shares of the Company’s common stock through payroll deductions of up to 25% of their eligible compensation. Eligible employees have the right to (a) purchase the maximum number of whole shares of common stock that can be purchased with the elected payroll deductions during each offering period for which the employee is enrolled at a purchase price equal to the closing price of the Company’s common stock on the last day of such offering period and (b) receive an equal number of shares of the Company’s common stock that are subject to a risk of forfeiture in the event the employee terminates employment within the one year period immediately following the purchase date. Beginning in the second quarter of 2022, the NQ ESPP provides quarterly offering periods from February 8th through May 7th, May 8th through August 7th, August 8th through November 7th and November 8th through February 7th of each year. A transition period began on May 15th and will end on August 7th. At the Company’s 2022 annual meeting of stockholders, the stockholders approved an increase in the number of shares of common stock issuable under the NQ ESPP by 0.8 million shares. The maximum number of shares of common stock currently authorized for issuance under the NQ ESPP is 6.3 million shares, with a maximum of 0.5 million shares allocated per purchase period. As of July 2, 2022, there were 3.3 million shares available for issuance under the NQ ESPP, including the stockholder-approved 0.8 million share increase. During the three and six months ended July 2, 2022, 0.4 million shares were purchased and issued. As of July 2, 2022, unrecognized stock-based compensation expense of $6.9 million related to the NQ ESPP is expected to be recognized over a remaining weighted-average service period of 0.9 years.
Stock-Based Compensation
The following table summarizes stock-based compensation expense (in thousands):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Cost of revenue:
Products$419 $186 $793 $348 
Services231 157 473 307 
Sales and marketing2,848 1,723 5,330 3,170 
Research and development2,259 1,644 6,004 3,227 
General and administrative4,250 2,513 7,875 4,342 
$10,007 $6,223 $20,475 $11,394 
XML 23 R14.htm IDEA: XBRL DOCUMENT v3.22.2
Revenue from Contracts with Customers
6 Months Ended
Jul. 02, 2022
Revenue from Contract with Customer [Abstract]  
Revenue from Contracts with Customers Revenue from Contracts with Customers
The Company derives revenue from contracts with customers primarily from the following and categorizes its revenue as follows:
Systems include revenue from the sale of access and premises systems, software platform licenses and cloud-based software subscriptions; and
Services include revenue from customer support, software- and cloud-based maintenance, extended warranty subscriptions, professional services, training and managed services.
The following is a summary of revenue disaggregated by geographic region based upon the location of the customers (in thousands):
Three Months EndedSix Months Ended
July 2, 2022July 3, 2021July 2, 2022July 3, 2021
United States$183,932 $138,587 $349,563 $277,934 
Americas ex U.S.10,808 14,457 19,679 25,860 
Europe2,954 9,844 9,527 13,259 
Middle East & Africa4,099 5,172 7,717 12,260 
Asia Pacific249 610 504 1,431 
$202,042 $168,670 $386,990 $330,744 
Contract Asset
The primary contract asset is revenue recognized on professional services contracts where the services are transferred to the customer over time, which has yet to be billed, and is classified within accounts receivable. Amounts are billed in accordance with the agreed-upon contractual terms. The balance as of December 31, 2021 was $1.7 million of which $0.4 million remained in the Company’s Condensed Consolidated Balance Sheet as of July 2, 2022. The closing balance as of July 2, 2022 was $1.7 million of which the Company expects to bill 60% of the balance during the remainder of 2022. The contract asset balance may fluctuate depending on the timing of professional services contracts with the Company's customers.
Contract Liability
Deferred revenue consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Current:
Products and services$28,535 $22,586 
Extended warranty4,976 4,892 
33,511 27,478 
Long-term:
Products and services6,453 3,137 
Extended warranty18,256 18,879 
24,709 22,016 
$58,220 $49,494 

The increase in the deferred revenue balance for the three and six months ended July 2, 2022 is primarily driven by cash payments received or due in advance of satisfying the Company’s performance obligations offset by $12.9 million of revenue recognized that was included in the deferred revenue balance at the beginning of the period.

Revenue allocated to remaining performance obligations (“RPOs”) represents contract revenue that has not yet been recognized, which includes deferred revenue and amounts that will be invoiced and recognized as revenue in future periods but excludes variable consideration where the monthly invoicing is based on usage or where actual usage exceeds the minimum commitment. RPOs were $162.8 million as of July 2, 2022, and the Company expects to recognize as revenue 34% of this amount over the next 12 months and the remainder thereafter.
Contract Costs
The Company capitalizes certain sales commissions related primarily to multi-year subscriptions and extended warranty support for which the expected amortization period is greater than one year. As of July 2, 2022 and December 31, 2021, the unamortized balance of deferred commissions was $7.7 million and $7.4 million, respectively. For the three and six months ended July 2, 2022, the amount of amortization was $0.9 million and $1.6 million, respectively, compared to $0.2 million and $0.3 million for the three and six months ended July 3, 2021, respectively. There was no impairment loss in relation to the costs capitalized for either period.
Concentration of Customer Risk
No customer accounted for more than 10% of the Company’s total revenue for the three or six months ended July 2, 2022 or July 3, 2021.
No customer represented more than 10% of the Company’s accounts receivable as of July 2, 2022. One customer represented 12% of the Company’s accounts receivable as of December 31, 2021.
XML 24 R15.htm IDEA: XBRL DOCUMENT v3.22.2
Income Taxes
6 Months Ended
Jul. 02, 2022
Income Tax Disclosure [Abstract]  
Income Taxes Income Taxes
The following table presents income taxes and the effective tax rates for the periods indicated (in thousands, except percentages):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Income before income taxes$9,669 $20,665 $19,489 $41,430 
Income taxes$2,148 $207 $3,849 $357 
Effective tax rate22.2 %1.0 %19.7 %0.9 %
The Company’s income taxes for the three months ended July 2, 2022 and July 3, 2021 were determined using an estimated effective tax rate adjusted for discrete items that occurred during the respective periods. The Company's effective tax rate for the three and six months ended July 2, 2022 differs from the statutory federal corporate tax rate of 21% primarily due to U.S. federal research tax credits and excess tax benefits from stock-based compensation partially offset by state taxes, the inclusion of income from certain foreign operations and the effect of non-deductible stock-based compensation for executive officers.
The Company's effective tax rate for the three and six months ended July 3, 2021 was significantly lower than 2022 as the Company maintained a full valuation allowance until the third quarter of 2021.
The Company has net deferred tax assets that have arisen primarily as a result of temporary differences, net operating loss carryforwards and tax credits. The Company’s ability to realize a deferred tax asset is based on its ability to generate sufficient future taxable income within the applicable carryforward period and subject to any applicable limitations. Management continues to believe that it is more likely than not we will utilize a significant portion of our deferred tax assets.
The Company continues to maintain a valuation allowance of $30.8 million on certain U.S. federal and state deferred tax assets that the Company believes are not more likely than not to be realized in future periods.
The Company considers scheduled reversals of deferred tax liabilities, projected future taxable income, ongoing tax planning strategies and other matters, including the period over which its deferred tax assets will be recoverable, in assessing the need for and the amount of the valuation allowance. In the event that actual results differ from these estimates, or if the Company decides to adjust these estimates in the future periods, further adjustments to its valuation allowance may be recorded, which could materially impact the Company’s financial position and net income in the period of the adjustment.
The Company’s income taxes may be subject to fluctuation during the year and in future years as new information is obtained, which may affect the assumptions used to estimate the annual effective tax rate including factors as actual results differing from its estimates of pre-tax earnings in the various jurisdictions in which the Company operates, which could impact the recognition of its deferred tax assets, benefits from stock option exercises, further investments in the Company’s foreign operations, the recognition or de-recognition of tax benefits related to uncertain tax positions and changes in or the interpretation of tax laws in jurisdictions where the Company conducts business.
XML 25 R16.htm IDEA: XBRL DOCUMENT v3.22.2
Net Income Per Common Share
6 Months Ended
Jul. 02, 2022
Earnings Per Share [Abstract]  
Net Income Per Common Share Net Income Per Common Share
The following table sets forth the computation of basic and diluted net income per common share for the periods indicated (in thousands, except per share data):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Numerator:
Net income$7,521 $20,458 $15,640 $41,073 
Denominator:
Weighted-average common shares outstanding used to compute basic net income per share64,836 63,042 64,662 62,795 
Effect of dilutive common stock equivalents3,333 4,592 3,623 4,552 
Weighted-average common shares outstanding used to compute diluted net income per share68,169 67,634 68,285 67,347 
Net income per common share:
Basic net income per common share$0.12 $0.32 $0.24 $0.65 
Diluted net income per common share$0.11 $0.30 $0.23 $0.61 
Potentially dilutive shares, weighted average2,617 1,096 2,196 752 
Potentially dilutive shares have been excluded from the computation of diluted net income per common share when their effect is antidilutive. These antidilutive shares were from stock options.
XML 26 R17.htm IDEA: XBRL DOCUMENT v3.22.2
Subsequent Event
6 Months Ended
Jul. 02, 2022
Subsequent Events [Abstract]  
Subsequent Event Subsequent EventIn July 2022, the Company’s Board of Directors authorized a one-year stock repurchase program for up to $100 million of the Company’s common stock. Under the repurchase program, repurchases can be made from time to time using a variety of methods, which may include open market purchases, privately negotiated transactions or otherwise, all in accordance with the rules of the SEC and other applicable legal requirements. The specific timing, price and size of the purchases will depend on prevailing stock prices, general economic and market conditions, and other considerations consistent with the Company’s capital allocation strategy. The repurchase program does not obligate the Company to acquire a particular amount of common stock, and the repurchase program may be suspended or discontinued at any time at the Company’s discretion.
XML 27 R18.htm IDEA: XBRL DOCUMENT v3.22.2
Significant Accounting Policies (Policies)
6 Months Ended
Jul. 02, 2022
Accounting Policies [Abstract]  
Basis of Presentation
Basis of Presentation
The accompanying unaudited condensed consolidated financial statements, including the accounts of Calix, Inc. and its wholly-owned subsidiaries, have been prepared in accordance with the requirements of the U.S. Securities and Exchange Commission (“SEC”) for interim reporting. As permitted under those rules, certain footnotes or other financial information that are normally required by U.S. generally accepted accounting principles (“GAAP”) can be condensed or omitted. In the opinion of management, the financial statements include all normal and recurring adjustments that are considered necessary for the fair presentation of the Company’s financial position and operating results. All intercompany balances and transactions have been eliminated in consolidation. The Condensed Consolidated Balance Sheet as of December 31, 2021 has been derived from the audited financial statements at that date.
The results of the Company’s operations can vary during each quarter of the year. Therefore, the results and trends in these interim financial statements may not be the same as those for the full year or any future periods. The information included in this Quarterly Report on Form 10-Q should be read in conjunction with the audited financial statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2021.
The Company’s fiscal year begins on January 1st and ends on December 31st. Quarterly periods are based on a 4-4-5 calendar with the first quarter ending on the Saturday closest to March 31st. As a result, the Company had one less day in the six months ended July 2, 2022 than for the six months ended July 3, 2021. The preparation of financial statements in conformity with GAAP for interim financial reporting requires management to make estimates and assumptions that affect the amounts reported in the condensed consolidated financial statements and accompanying notes. Actual results could differ from those estimates.
Newly Adopted Accounting Standard and Recent Accounting Pronouncements Not Yet Adopted
Newly Adopted Accounting Standard
The Company did not adopt any new accounting standards during the six months ended July 2, 2022 that were significant to the Company.

Recent Accounting Pronouncements Not Yet Adopted
There have been no additional accounting pronouncements or changes in accounting pronouncements during the six months ended July 2, 2022 as compared to the recent accounting pronouncements described in the Company’s Annual Report on Form 10-K for the year ended December 31, 2021, that are significant or potentially significant to the Company.
Revenue Recognition
The Company derives revenue from contracts with customers primarily from the following and categorizes its revenue as follows:
Systems include revenue from the sale of access and premises systems, software platform licenses and cloud-based software subscriptions; and
Services include revenue from customer support, software- and cloud-based maintenance, extended warranty subscriptions, professional services, training and managed services.
XML 28 R19.htm IDEA: XBRL DOCUMENT v3.22.2
Cash, Cash Equivalents and Restricted Cash (Tables)
6 Months Ended
Jul. 02, 2022
Cash and Cash Equivalents [Abstract]  
Summary of cash and cash equivalents
Cash, cash equivalents and marketable securities consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Cash and cash equivalents:
Cash$24,113 $26,442 
Commercial paper24,616 21,582 
Money market funds2,787 2,320 
Corporate debt securities— 989 
Total cash and cash equivalents51,516 51,333 
Marketable securities:
U.S. government securities99,808 60,279 
Commercial paper63,040 80,812 
U.S. government agency securities9,028 5,527 
Corporate debt securities799 3,576 
Municipal securities694 2,808 
Total marketable securities173,369 153,002 
$224,885 $204,335 
Debt securities, available-for-sale
The amortized cost and fair value of marketable securities as of July 2, 2022 were as follows (in thousands):
Amortized CostGross Unrealized LossesFair Value
U.S. government securities$101,289 $(1,481)$99,808 
Commercial paper87,725 (69)87,656 
U.S. government agency securities9,117 (89)9,028 
Corporate debt securities803 (4)799 
Municipal securities696 (2)694 
Total marketable securities$199,630 $(1,645)$197,985 
XML 29 R20.htm IDEA: XBRL DOCUMENT v3.22.2
Fair Value Measures and Disclosures (Tables)
6 Months Ended
Jul. 02, 2022
Fair Value Disclosures [Abstract]  
Fair value, assets measured on recurring basis
The following tables sets forth the Company’s financial assets measured at fair value on a recurring basis based on the three-tier fair value hierarchy (in thousands):
As of July 2, 2022Level 1Level 2Total
Money market funds$2,787 $— $2,787 
U.S. government securities99,808 — 99,808 
Commercial paper— 87,656 87,656 
U.S. government agency securities— 9,028 9,028 
Corporate debt securities— 799 799 
Municipal securities— 694 694 
$102,595 $98,177 $200,772 

As of December 31, 2021Level 1Level 2Total
Money market funds$2,320 $— $2,320 
U.S. government securities60,279 — 60,279 
Commercial paper— 102,394 102,394 
U.S. government agency securities— 5,527 5,527 
Corporate debt securities— 4,565 4,565 
Municipal securities— 2,808 2,808 
$62,599 $115,294 $177,893 
XML 30 R21.htm IDEA: XBRL DOCUMENT v3.22.2
Balance Sheet Details (Tables)
6 Months Ended
Jul. 02, 2022
Balance Sheet Related Disclosures [Abstract]  
Summary of accounts receivable, net
Accounts receivable, net consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Accounts receivable$86,788 $85,944 
Allowance for doubtful accounts(660)(725)
$86,128 $85,219 
Summary of inventory
Inventory consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Raw materials$674 $130 
Finished goods97,650 88,750 
$98,324 $88,880 
Summary of property and equipment, net
Property and equipment, net consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Test equipment$41,290 $39,476 
Computer equipment11,079 11,156 
Software9,623 9,013 
Leasehold improvements1,678 1,351 
Furniture and fixtures1,074 1,812 
Total64,744 62,808 
Accumulated depreciation and amortization(42,715)(41,025)
$22,029 $21,783 
Schedule of other long-term assets
Other long-term assets consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Intangible asset, net$5,569 $6,885 
Other long-term assets9,307 6,800 
$14,876 $13,685 
Summary of accrued liabilities
Accrued liabilities consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Compensation and related benefits$20,314 $23,165 
Component inventory held by suppliers9,310 7,611 
Current portion of warranty and retrofit6,777 7,076 
Current portion of revenue share payments5,747 4,731 
Professional and consulting fees5,678 4,819 
Freight5,201 3,997 
Customer advances or rebates5,118 4,742 
Operating leases3,822 3,596 
Taxes payable3,395 4,251 
Product returns2,804 1,836 
Operations1,765 1,400 
Other4,851 4,373 
$74,782 $71,597 
Product warranty activities
Changes in the Company’s accrued warranty and retrofit liability were as follows (in thousands):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Balance at beginning of period$9,570 $9,650 $9,594 $9,208 
Accruals for product warranty and retrofit
(351)1,003 177 2,205 
Cost of warranty and retrofit claims
(565)(742)(1,117)(1,502)
Balance at end of period$8,654 $9,911 $8,654 $9,911 
XML 31 R22.htm IDEA: XBRL DOCUMENT v3.22.2
Commitments and Contingencies (Tables)
6 Months Ended
Jul. 02, 2022
Commitments and Contingencies Disclosure [Abstract]  
Schedule of future minimum rental payments for operating leases Future minimum payments under the non-cancelable operating leases consisted of the following as of July 2, 2022 (in thousands):
PeriodFuture Minimum Lease Payments
Remainder of 2022$2,263 
20234,680 
20244,510 
20254,010 
2026562 
Total future minimum lease payments16,025 
Less imputed interest(1,619)
$14,406 
Lessee, operating lease liability
As of July 2, 2022, the operating lease liability consisted of the following (in thousands):
Accrued liabilities - current portion of operating leases$3,822 
Operating leases10,584 
$14,406 
XML 32 R23.htm IDEA: XBRL DOCUMENT v3.22.2
Stockholders' Equity (Tables)
6 Months Ended
Jul. 02, 2022
Stockholders' Equity Note [Abstract]  
Disclosure of share-based compensation arrangements by share-based payment award
The following table summarizes stock-based compensation expense (in thousands):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Cost of revenue:
Products$419 $186 $793 $348 
Services231 157 473 307 
Sales and marketing2,848 1,723 5,330 3,170 
Research and development2,259 1,644 6,004 3,227 
General and administrative4,250 2,513 7,875 4,342 
$10,007 $6,223 $20,475 $11,394 
XML 33 R24.htm IDEA: XBRL DOCUMENT v3.22.2
Revenue from Contracts with Customers (Tables)
6 Months Ended
Jul. 02, 2022
Revenue from Contract with Customer [Abstract]  
Revenue from external customers by geographic areas
The following is a summary of revenue disaggregated by geographic region based upon the location of the customers (in thousands):
Three Months EndedSix Months Ended
July 2, 2022July 3, 2021July 2, 2022July 3, 2021
United States$183,932 $138,587 $349,563 $277,934 
Americas ex U.S.10,808 14,457 19,679 25,860 
Europe2,954 9,844 9,527 13,259 
Middle East & Africa4,099 5,172 7,717 12,260 
Asia Pacific249 610 504 1,431 
$202,042 $168,670 $386,990 $330,744 
Deferred revenue, by arrangement, disclosure
Deferred revenue consisted of the following (in thousands):
July 2,
2022
December 31,
2021
Current:
Products and services$28,535 $22,586 
Extended warranty4,976 4,892 
33,511 27,478 
Long-term:
Products and services6,453 3,137 
Extended warranty18,256 18,879 
24,709 22,016 
$58,220 $49,494 
XML 34 R25.htm IDEA: XBRL DOCUMENT v3.22.2
Income Taxes (Tables)
6 Months Ended
Jul. 02, 2022
Income Tax Disclosure [Abstract]  
Schedule of income taxes
The following table presents income taxes and the effective tax rates for the periods indicated (in thousands, except percentages):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Income before income taxes$9,669 $20,665 $19,489 $41,430 
Income taxes$2,148 $207 $3,849 $357 
Effective tax rate22.2 %1.0 %19.7 %0.9 %
XML 35 R26.htm IDEA: XBRL DOCUMENT v3.22.2
Net Income Per Common Share (Tables)
6 Months Ended
Jul. 02, 2022
Earnings Per Share [Abstract]  
Schedule of net income (loss) per share
The following table sets forth the computation of basic and diluted net income per common share for the periods indicated (in thousands, except per share data):
 Three Months EndedSix Months Ended
July 2,
2022
July 3,
2021
July 2,
2022
July 3,
2021
Numerator:
Net income$7,521 $20,458 $15,640 $41,073 
Denominator:
Weighted-average common shares outstanding used to compute basic net income per share64,836 63,042 64,662 62,795 
Effect of dilutive common stock equivalents3,333 4,592 3,623 4,552 
Weighted-average common shares outstanding used to compute diluted net income per share68,169 67,634 68,285 67,347 
Net income per common share:
Basic net income per common share$0.12 $0.32 $0.24 $0.65 
Diluted net income per common share$0.11 $0.30 $0.23 $0.61 
Potentially dilutive shares, weighted average2,617 1,096 2,196 752 
XML 36 R27.htm IDEA: XBRL DOCUMENT v3.22.2
Cash, Cash Equivalents, and Marketable Securities - Summary of Cash and Cash Equivalents (Details) - USD ($)
$ in Thousands
Jul. 02, 2022
Dec. 31, 2021
Cash and Cash Equivalents [Line Items]    
Total cash and cash equivalents $ 51,516 $ 51,333
Marketable securities 173,369 153,002
Total cash, cash equivalents, and marketable securities 224,885 204,335
U.S. government securities | Short-Term Marketable Securities    
Cash and Cash Equivalents [Line Items]    
Marketable securities 99,808 60,279
Commercial paper    
Cash and Cash Equivalents [Line Items]    
Marketable securities 63,040 80,812
U.S. government agency securities    
Cash and Cash Equivalents [Line Items]    
Marketable securities 9,028 5,527
U.S. government agency securities | Short-Term Marketable Securities    
Cash and Cash Equivalents [Line Items]    
Marketable securities 9,028  
Corporate debt securities    
Cash and Cash Equivalents [Line Items]    
Marketable securities 799 3,576
Corporate debt securities | Short-Term Marketable Securities    
Cash and Cash Equivalents [Line Items]    
Marketable securities 799  
Municipal securities    
Cash and Cash Equivalents [Line Items]    
Marketable securities 694 2,808
Municipal securities | Short-Term Marketable Securities    
Cash and Cash Equivalents [Line Items]    
Marketable securities 694  
Cash    
Cash and Cash Equivalents [Line Items]    
Cash 24,113 26,442
Commercial paper    
Cash and Cash Equivalents [Line Items]    
Cash equivalents 24,616 21,582
Money market funds    
Cash and Cash Equivalents [Line Items]    
Cash equivalents 2,787 2,320
Corporate debt securities    
Cash and Cash Equivalents [Line Items]    
Cash equivalents $ 0 $ 989
XML 37 R28.htm IDEA: XBRL DOCUMENT v3.22.2
Cash, Cash Equivalents, and Marketable Securities - Schedule of Marketable Securities (Details) - USD ($)
$ in Thousands
Jul. 02, 2022
Dec. 31, 2021
Debt Securities, Available-for-sale [Line Items]    
Fair Value $ 173,369 $ 153,002
Short-Term Marketable Securities And Cash Equivalents    
Debt Securities, Available-for-sale [Line Items]    
Amortized Cost 199,630  
Gross Unrealized Losses (1,645)  
Fair Value 197,985  
U.S. government securities | Short-Term Marketable Securities    
Debt Securities, Available-for-sale [Line Items]    
Amortized Cost 101,289  
Gross Unrealized Losses (1,481)  
Fair Value 99,808 60,279
Commercial paper    
Debt Securities, Available-for-sale [Line Items]    
Fair Value 63,040 80,812
Commercial paper | Short-Term Marketable Securities And Cash Equivalents    
Debt Securities, Available-for-sale [Line Items]    
Amortized Cost 87,725  
Gross Unrealized Losses (69)  
Fair Value 87,656  
U.S. government agency securities    
Debt Securities, Available-for-sale [Line Items]    
Fair Value 9,028 5,527
U.S. government agency securities | Short-Term Marketable Securities    
Debt Securities, Available-for-sale [Line Items]    
Amortized Cost 9,117  
Gross Unrealized Losses (89)  
Fair Value 9,028  
Corporate debt securities    
Debt Securities, Available-for-sale [Line Items]    
Fair Value 799 3,576
Corporate debt securities | Short-Term Marketable Securities    
Debt Securities, Available-for-sale [Line Items]    
Amortized Cost 803  
Gross Unrealized Losses (4)  
Fair Value 799  
Municipal securities    
Debt Securities, Available-for-sale [Line Items]    
Fair Value 694 $ 2,808
Municipal securities | Short-Term Marketable Securities    
Debt Securities, Available-for-sale [Line Items]    
Amortized Cost 696  
Gross Unrealized Losses (2)  
Fair Value $ 694  
XML 38 R29.htm IDEA: XBRL DOCUMENT v3.22.2
Fair Value Measures and Disclosures (Details) - USD ($)
$ in Thousands
Jul. 02, 2022
Dec. 31, 2021
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities $ 173,369 $ 153,002
Commercial paper    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 63,040 80,812
U.S. government agency securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 9,028 5,527
Corporate debt securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 799 3,576
Municipal securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 694 2,808
Fair Value, Recurring    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Total assets 200,772 177,893
Fair Value, Recurring | Level 1    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Total assets 102,595 62,599
Fair Value, Recurring | Level 2    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Total assets 98,177 115,294
Fair Value, Recurring | U.S. government securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 99,808 60,279
Fair Value, Recurring | U.S. government securities | Level 1    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 99,808 60,279
Fair Value, Recurring | U.S. government securities | Level 2    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 0 0
Fair Value, Recurring | Commercial paper    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 87,656 102,394
Fair Value, Recurring | Commercial paper | Level 1    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 0 0
Fair Value, Recurring | Commercial paper | Level 2    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 87,656 102,394
Fair Value, Recurring | U.S. government agency securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 9,028 5,527
Fair Value, Recurring | U.S. government agency securities | Level 1    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 0 0
Fair Value, Recurring | U.S. government agency securities | Level 2    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 9,028 5,527
Fair Value, Recurring | Corporate debt securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 799 4,565
Fair Value, Recurring | Corporate debt securities | Level 1    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 0 0
Fair Value, Recurring | Corporate debt securities | Level 2    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 799 4,565
Fair Value, Recurring | Municipal securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 694 2,808
Fair Value, Recurring | Municipal securities | Level 1    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 0 0
Fair Value, Recurring | Municipal securities | Level 2    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Marketable securities 694 2,808
Fair Value, Recurring | Money market funds    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Money market funds 2,787 2,320
Fair Value, Recurring | Money market funds | Level 1    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Money market funds 2,787 2,320
Fair Value, Recurring | Money market funds | Level 2    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Money market funds $ 0 $ 0
XML 39 R30.htm IDEA: XBRL DOCUMENT v3.22.2
Balance Sheet Details - Accounts Receivable (Details) - USD ($)
$ in Thousands
Jul. 02, 2022
Dec. 31, 2021
Summary of accounts receivable, net    
Accounts receivable $ 86,788 $ 85,944
Allowance for doubtful accounts (660) (725)
Accounts receivable, net $ 86,128 $ 85,219
XML 40 R31.htm IDEA: XBRL DOCUMENT v3.22.2
Balance Sheet Details - Inventory (Details) - USD ($)
$ in Thousands
Jul. 02, 2022
Dec. 31, 2021
Summary of inventory, net    
Raw materials $ 674 $ 130
Finished goods 97,650 88,750
Total inventory $ 98,324 $ 88,880
XML 41 R32.htm IDEA: XBRL DOCUMENT v3.22.2
Balance Sheet Details - Property and Equipment, net (Details) - USD ($)
$ in Thousands
Jul. 02, 2022
Dec. 31, 2021
Summary of property and equipment, net    
Property and equipment, gross $ 64,744 $ 62,808
Accumulated depreciation and amortization (42,715) (41,025)
Property and equipment, net 22,029 21,783
Test equipment    
Summary of property and equipment, net    
Property and equipment, gross 41,290 39,476
Computer equipment    
Summary of property and equipment, net    
Property and equipment, gross 11,079 11,156
Software    
Summary of property and equipment, net    
Property and equipment, gross 9,623 9,013
Leasehold improvements    
Summary of property and equipment, net    
Property and equipment, gross 1,678 1,351
Furniture and fixtures    
Summary of property and equipment, net    
Property and equipment, gross $ 1,074 $ 1,812
XML 42 R33.htm IDEA: XBRL DOCUMENT v3.22.2
Balance Sheet Details - Other Long-Term Assets (Details) - USD ($)
$ in Thousands
Jul. 02, 2022
Dec. 31, 2021
Balance Sheet Related Disclosures [Abstract]    
Intangible asset, net $ 5,569 $ 6,885
Other long-term assets 9,307 6,800
Other assets, noncurrent $ 14,876 $ 13,685
XML 43 R34.htm IDEA: XBRL DOCUMENT v3.22.2
Balance Sheet Details - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended
Sep. 28, 2019
Jul. 02, 2022
Dec. 31, 2021
Dec. 31, 2020
Finite-Lived Intangible Assets [Line Items]        
Accrued liabilities   $ 74,782 $ 71,597  
Other long-term liabilities   9,146 11,076  
Licensed Software        
Finite-Lived Intangible Assets [Line Items]        
Royalty payment commitment       $ 15,800
Intangible asset $ 13,200      
Other Liabilities $ 13,200 12,900 13,200  
Useful life 5 years      
Accrued liabilities   5,700 4,700  
Other long-term liabilities   $ 7,200 $ 8,500  
XML 44 R35.htm IDEA: XBRL DOCUMENT v3.22.2
Balance Sheet Details - Accrued Liabilities (Details) - USD ($)
$ in Thousands
Jul. 02, 2022
Dec. 31, 2021
Summary of accrued liabilities    
Compensation and related benefits $ 20,314 $ 23,165
Component inventory held by suppliers 9,310 7,611
Current portion of warranty and retrofit 6,777 7,076
Current portion of revenue share payments 5,747 4,731
Professional and consulting fees 5,678 4,819
Freight 5,201 3,997
Customer advances or rebates 5,118 4,742
Operating leases 3,822 3,596
Taxes payable 3,395 4,251
Product returns 2,804 1,836
Operations 1,765 1,400
Other 4,851 4,373
Total accrued liabilities $ 74,782 $ 71,597
XML 45 R36.htm IDEA: XBRL DOCUMENT v3.22.2
Balance Sheet Details - Warranty Reserve (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 02, 2022
Jul. 03, 2021
Jul. 02, 2022
Jul. 03, 2021
Movement in Standard Product Warranty Accrual [Roll Forward]        
Balance at beginning of period $ 9,570 $ 9,650 $ 9,594 $ 9,208
Accruals for product warranty and retrofit (351) 1,003 177 2,205
Cost of warranty and retrofit claims (565) (742) (1,117) (1,502)
Balance at end of period $ 8,654 $ 9,911 $ 8,654 $ 9,911
XML 46 R37.htm IDEA: XBRL DOCUMENT v3.22.2
Commitments and Contingencies - Operating Leases (Details)
$ in Thousands
Jul. 02, 2022
USD ($)
Commitments and Contingencies Disclosure [Abstract]  
Remainder of 2022 $ 2,263
2023 4,680
2024 4,510
2025 4,010
2026 562
Total future minimum lease payments 16,025
Less imputed interest (1,619)
Operating lease liability $ 14,406
XML 47 R38.htm IDEA: XBRL DOCUMENT v3.22.2
Commitments and Contingencies - Operating Lease Liability (Details) - USD ($)
$ in Thousands
Jul. 02, 2022
Dec. 31, 2021
Commitments and Contingencies Disclosure [Abstract]    
Accrued liabilities - current portion of operating leases $ 3,822 $ 3,596
Operating leases 10,584 $ 12,376
Operating lease liability $ 14,406  
Operating lease, liability, current, statement of financial position Accrued Liabilities, Current  
XML 48 R39.htm IDEA: XBRL DOCUMENT v3.22.2
Commitments and Contingencies - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 02, 2022
Jul. 03, 2021
Jul. 02, 2022
Jul. 03, 2021
Dec. 31, 2021
Commitments and Contingencies [Line Items]          
Total future minimum lease payments $ 16,025   $ 16,025    
Weighted average operating discount rate used to determine the operating lease liability (percent) 6.10%   6.10%    
Weighted average remaining lease term for operating lease 3 years 6 months   3 years 6 months    
Rent expense $ 1,100 $ 900 $ 2,200 $ 2,100  
Operating lease, payments     2,300 $ 2,000  
Purchase commitment period 2 years        
Accrued customer rebates/prepayments $ 9,310   9,310   $ 7,611
Inventories          
Commitments and Contingencies [Line Items]          
Outstanding purchase commitments 324,200   324,200   $ 247,300
San Jose, California          
Commitments and Contingencies [Line Items]          
Total future minimum lease payments $ 8,500   $ 8,500    
XML 49 R40.htm IDEA: XBRL DOCUMENT v3.22.2
Stockholders' Equity - 2019 Equity Incentive Award Plan (Details) - 2019 Equity Incentive Award Plan
shares in Millions
Jul. 02, 2022
shares
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Increase in the number of shares of common stock issuable 1.5
Shares available for future grant (in shares) 7.0
XML 50 R41.htm IDEA: XBRL DOCUMENT v3.22.2
Stockholders' Equity - Stock Options (Details) - USD ($)
$ / shares in Units, $ in Thousands
1 Months Ended 3 Months Ended 6 Months Ended
Feb. 28, 2022
Jul. 02, 2022
Jul. 02, 2022
Jul. 03, 2021
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Stock options granted (in shares)   400,000 800,000  
Weighted-average grant date fair value (in dollars per share)   $ 33.46 $ 43.15  
Stock-based compensation     $ 20,475 $ 11,394
Stock options exercised (in shares)   300,000 500,000  
Weighted-average exercise price per share, stock options (in dollars per share)   $ 7.51 $ 7.56  
Unrecognized stock-based compensation expense, stock options   $ 55,300 $ 55,300  
Recognition period     2 years 2 months 12 days  
2021 Performance Targets | Stock Options | Period One        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Award vesting rights, percentage     25.00%  
2021 Performance Targets | Stock Options | Period Two        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Award vesting period     3 years  
2021 Performance Targets | Performance Based Stock Options | Executive Officer        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Stock options granted (in shares) 700,000      
Weighted-average grant date fair value (in dollars per share) $ 55.96      
Award performance period 1 year      
Net income per share, target achievement performance threshold, percent 80.00%      
Bookings, target achievement performance threshold, percent 90.00%      
Number of shares granted if no-GAAP income below 80% and bookings below 90% of target (in shares) 0      
Shares award weighting percent 50.00%      
Target achievement threshold for shares award sliding scale 100.00%      
Stock-based compensation   $ 2,900 $ 4,500  
2021 Performance Targets | Performance Based Stock Options | Period One | Executive Officer        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Award vesting rights, percentage 25.00%      
2021 Performance Targets | Performance Based Stock Options | Period Two | Executive Officer        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Award vesting rights, percentage 75.00%      
Award vesting period 36 months      
XML 51 R42.htm IDEA: XBRL DOCUMENT v3.22.2
Stockholders' Equity - Employee Stock Purchase Plans (Details)
$ in Millions
3 Months Ended 6 Months Ended
Jul. 02, 2022
USD ($)
period
plan
shares
Jul. 02, 2022
USD ($)
period
plan
shares
Aug. 15, 2022
shares
Apr. 02, 2022
shares
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Number of employee stock purchase plans | plan 2 2    
Recognition period   2 years 2 months 12 days    
Unrecognized stock-based compensation expense, stock options | $ $ 55.3 $ 55.3    
2017 Nonqualified Employee Stock Purchase Plan        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Increase in the number of shares of common stock issuable 800,000 800,000    
Number of shares authorized (in shares) 6,300,000 6,300,000    
Shares available for future grant (in shares) 3,300,000 3,300,000    
Recognition period   10 months 24 days    
Maximum contribution percent (up to 25%) 25.00% 25.00%    
Employee termination period following purchase date to receive shares subject to risk of forfeiture   1 year    
Number of additional shares authorized (in shares) 800,000      
Maximum number of shares allocated per purchase period 500,000 500,000    
Number of shares issued (in shares) 400,000 400,000    
Number of shares purchased (in shares) 400,000 400,000    
Unrecognized stock-based compensation expense, stock options | $ $ 6.9 $ 6.9    
Employee Stock Purchase Plan        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
ESPP, maximum employee payroll deduction percentage 15.00% 15.00%    
ESPP, maximum number of shares per employee (in shares)   2,000    
Number of offering periods | period 2 2    
Offering period   6 months    
ESPP, discounted purchase price percentage   85.00%    
Number of shares authorized (in shares) 12,400,000 12,400,000   11,100,000
Shares available for future grant (in shares) 3,500,000 3,500,000    
Shares purchased under ESPP (in shares) 100,000      
Unrecognized stock-based compensation expense | $ $ 0.3 $ 0.3    
Recognition period   1 month 6 days    
Employee Stock Purchase Plan | Subsequent Event        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Increase in the number of shares of common stock issuable     1,300,000  
XML 52 R43.htm IDEA: XBRL DOCUMENT v3.22.2
Stockholders' Equity - Stock-Based Compensation Expense (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 02, 2022
Jul. 03, 2021
Jul. 02, 2022
Jul. 03, 2021
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Stock-based compensation $ 10,007 $ 6,223 $ 20,475 $ 11,394
Products        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Stock-based compensation 419 186 793 348
Services        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Stock-based compensation 231 157 473 307
Sales and marketing        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Stock-based compensation 2,848 1,723 5,330 3,170
Research and development        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Stock-based compensation 2,259 1,644 6,004 3,227
General and administrative        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Stock-based compensation $ 4,250 $ 2,513 $ 7,875 $ 4,342
XML 53 R44.htm IDEA: XBRL DOCUMENT v3.22.2
Revenue from Contracts with Customers - Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 02, 2022
Jul. 03, 2021
Jul. 02, 2022
Jul. 03, 2021
Disaggregation of Revenue [Line Items]        
Total revenues $ 202,042 $ 168,670 $ 386,990 $ 330,744
United States        
Disaggregation of Revenue [Line Items]        
Total revenues 183,932 138,587 349,563 277,934
Americas ex U.S.        
Disaggregation of Revenue [Line Items]        
Total revenues 10,808 14,457 19,679 25,860
Europe        
Disaggregation of Revenue [Line Items]        
Total revenues 2,954 9,844 9,527 13,259
Middle East & Africa        
Disaggregation of Revenue [Line Items]        
Total revenues 4,099 5,172 7,717 12,260
Asia Pacific        
Disaggregation of Revenue [Line Items]        
Total revenues $ 249 $ 610 $ 504 $ 1,431
XML 54 R45.htm IDEA: XBRL DOCUMENT v3.22.2
Revenue from Contracts with Customers - Contract Asset and Liability (Details) - USD ($)
$ in Thousands
3 Months Ended
Jul. 02, 2022
Dec. 31, 2021
Disaggregation of Revenue [Line Items]    
Contract with customer, asset $ 1,700 $ 1,700
Contract with customer, asset, prior period, not recognized $ 400  
Contract with customer, asset, expected to be billed remainder of year, percent 60.00%  
Deferred revenue, current $ 33,511 27,478
Deferred revenue, current 24,709 22,016
Deferred revenue 58,220 49,494
Contract with customer, liability, revenue recognized 12,900  
Products and services    
Disaggregation of Revenue [Line Items]    
Deferred revenue, current 28,535 22,586
Deferred revenue, current 6,453 3,137
Extended warranty    
Disaggregation of Revenue [Line Items]    
Deferred revenue, current 4,976 4,892
Deferred revenue, current $ 18,256 $ 18,879
XML 55 R46.htm IDEA: XBRL DOCUMENT v3.22.2
Revenue from Contracts with Customers - Performance Obligations (Details)
$ in Millions
Jul. 02, 2022
USD ($)
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligation, amount $ 162.8
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-07-03  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligation, percentage 34.00%
Performance obligations expected to be satisfied, expected timing 1 year
XML 56 R47.htm IDEA: XBRL DOCUMENT v3.22.2
Revenue from Contracts with Customers - Contract Costs (Details) - USD ($)
3 Months Ended 6 Months Ended
Jul. 02, 2022
Jul. 03, 2021
Jul. 02, 2022
Jul. 03, 2021
Dec. 31, 2021
Revenue from Contract with Customer [Abstract]          
Capitalized contract cost, gross $ 7,700,000   $ 7,700,000   $ 7,400,000
Capitalized contract cost, amortization $ 900,000 $ 300,000 1,600,000 $ 200,000  
Capitalized contract cost, impairment     $ 0 $ 0  
XML 57 R48.htm IDEA: XBRL DOCUMENT v3.22.2
Revenue from Contracts with Customers - Concentration Risk (Details)
12 Months Ended
Dec. 31, 2021
One Customer | Customer Concentration Risk | Accounts Receivable  
Concentration Risk [Line Items]  
Concentration risk, percentage 12.00%
XML 58 R49.htm IDEA: XBRL DOCUMENT v3.22.2
Income Taxes - (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 02, 2022
Jul. 03, 2021
Jul. 02, 2022
Jul. 03, 2021
Income Tax Disclosure [Abstract]        
Income before income taxes $ 9,669 $ 20,665 $ 19,489 $ 41,430
Income taxes $ 2,148 $ 207 $ 3,849 $ 357
Effective tax rate 22.20% 1.00% 19.70% 0.90%
Valuation allowance $ 30,800   $ 30,800  
XML 59 R50.htm IDEA: XBRL DOCUMENT v3.22.2
Net Income Per Common Share (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Jul. 02, 2022
Jul. 03, 2021
Jul. 02, 2022
Jul. 03, 2021
Numerator:        
Net income $ 7,521 $ 20,458 $ 15,640 $ 41,073
Denominator:        
Weighted-average common shares outstanding used to compute basic net income (loss) per share (in shares) 64,836 63,042 64,662 62,795
Effect of dilutive common stock equivalents (in shares) 3,333 4,592 3,623 4,552
Weighted-average common shares outstanding used to compute diluted net income (loss) per share (in shares) 68,169 67,634 68,285 67,347
Net income per common share:        
Basic net income per common share (in dollars per share) $ 0.12 $ 0.32 $ 0.24 $ 0.65
Diluted net income per common share (in dollars per share) $ 0.11 $ 0.30 $ 0.23 $ 0.61
Potentially dilutive shares, weighted average (in shares) 2,617 1,096 2,196 752
XML 60 R51.htm IDEA: XBRL DOCUMENT v3.22.2
Subsequent Events (Details) - Subsequent Event
1 Months Ended
Jul. 26, 2022
USD ($)
Subsequent Event [Line Items]  
Stock repurchase program, period authorized 1 year
Stock repurchase program, authorized amount $ 100,000,000
XML 61 calx-20220702_htm.xml IDEA: XBRL DOCUMENT 0001406666 2022-01-01 2022-07-02 0001406666 2022-07-18 0001406666 2022-07-02 0001406666 2021-12-31 0001406666 calx:SystemsProductMember 2022-04-03 2022-07-02 0001406666 calx:SystemsProductMember 2021-04-04 2021-07-03 0001406666 calx:SystemsProductMember 2022-01-01 2022-07-02 0001406666 calx:SystemsProductMember 2021-01-01 2021-07-03 0001406666 us-gaap:TechnologyServiceMember 2022-04-03 2022-07-02 0001406666 us-gaap:TechnologyServiceMember 2021-04-04 2021-07-03 0001406666 us-gaap:TechnologyServiceMember 2022-01-01 2022-07-02 0001406666 us-gaap:TechnologyServiceMember 2021-01-01 2021-07-03 0001406666 2022-04-03 2022-07-02 0001406666 2021-04-04 2021-07-03 0001406666 2021-01-01 2021-07-03 0001406666 us-gaap:CommonStockMember 2022-04-02 0001406666 us-gaap:AdditionalPaidInCapitalMember 2022-04-02 0001406666 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-04-02 0001406666 us-gaap:RetainedEarningsMember 2022-04-02 0001406666 2022-04-02 0001406666 us-gaap:AdditionalPaidInCapitalMember 2022-04-03 2022-07-02 0001406666 us-gaap:CommonStockMember 2022-04-03 2022-07-02 0001406666 us-gaap:RetainedEarningsMember 2022-04-03 2022-07-02 0001406666 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-04-03 2022-07-02 0001406666 us-gaap:CommonStockMember 2022-07-02 0001406666 us-gaap:AdditionalPaidInCapitalMember 2022-07-02 0001406666 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-07-02 0001406666 us-gaap:RetainedEarningsMember 2022-07-02 0001406666 us-gaap:CommonStockMember 2021-04-03 0001406666 us-gaap:AdditionalPaidInCapitalMember 2021-04-03 0001406666 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-04-03 0001406666 us-gaap:RetainedEarningsMember 2021-04-03 0001406666 2021-04-03 0001406666 us-gaap:AdditionalPaidInCapitalMember 2021-04-04 2021-07-03 0001406666 us-gaap:CommonStockMember 2021-04-04 2021-07-03 0001406666 us-gaap:RetainedEarningsMember 2021-04-04 2021-07-03 0001406666 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-04-04 2021-07-03 0001406666 us-gaap:CommonStockMember 2021-07-03 0001406666 us-gaap:AdditionalPaidInCapitalMember 2021-07-03 0001406666 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-07-03 0001406666 us-gaap:RetainedEarningsMember 2021-07-03 0001406666 2021-07-03 0001406666 us-gaap:CommonStockMember 2021-12-31 0001406666 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0001406666 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-12-31 0001406666 us-gaap:RetainedEarningsMember 2021-12-31 0001406666 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-07-02 0001406666 us-gaap:CommonStockMember 2022-01-01 2022-07-02 0001406666 us-gaap:RetainedEarningsMember 2022-01-01 2022-07-02 0001406666 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-07-02 0001406666 us-gaap:CommonStockMember 2020-12-31 0001406666 us-gaap:AdditionalPaidInCapitalMember 2020-12-31 0001406666 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-12-31 0001406666 us-gaap:RetainedEarningsMember 2020-12-31 0001406666 2020-12-31 0001406666 us-gaap:AdditionalPaidInCapitalMember 2021-01-01 2021-07-03 0001406666 us-gaap:CommonStockMember 2021-01-01 2021-07-03 0001406666 us-gaap:RetainedEarningsMember 2021-01-01 2021-07-03 0001406666 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-07-03 0001406666 us-gaap:CashMember 2022-07-02 0001406666 us-gaap:CashMember 2021-12-31 0001406666 us-gaap:CommercialPaperMember 2022-07-02 0001406666 us-gaap:CommercialPaperMember 2021-12-31 0001406666 us-gaap:MoneyMarketFundsMember 2022-07-02 0001406666 us-gaap:MoneyMarketFundsMember 2021-12-31 0001406666 us-gaap:CorporateDebtSecuritiesMember 2022-07-02 0001406666 us-gaap:CorporateDebtSecuritiesMember 2021-12-31 0001406666 calx:ShortTermMarketableSecuritiesMember us-gaap:USGovernmentDebtSecuritiesMember 2022-07-02 0001406666 calx:ShortTermMarketableSecuritiesMember us-gaap:USGovernmentDebtSecuritiesMember 2021-12-31 0001406666 us-gaap:CommercialPaperMember 2022-07-02 0001406666 us-gaap:CommercialPaperMember 2021-12-31 0001406666 us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2022-07-02 0001406666 us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2021-12-31 0001406666 us-gaap:CorporateDebtSecuritiesMember 2022-07-02 0001406666 us-gaap:CorporateDebtSecuritiesMember 2021-12-31 0001406666 us-gaap:MunicipalNotesMember 2022-07-02 0001406666 us-gaap:MunicipalNotesMember 2021-12-31 0001406666 calx:ShortTermMarketableSecuritiesAndCashEquivalentsMember us-gaap:CommercialPaperMember 2022-07-02 0001406666 calx:ShortTermMarketableSecuritiesMember us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2022-07-02 0001406666 calx:ShortTermMarketableSecuritiesMember us-gaap:CorporateDebtSecuritiesMember 2022-07-02 0001406666 calx:ShortTermMarketableSecuritiesMember us-gaap:MunicipalNotesMember 2022-07-02 0001406666 calx:ShortTermMarketableSecuritiesAndCashEquivalentsMember 2022-07-02 0001406666 us-gaap:MoneyMarketFundsMember us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2022-07-02 0001406666 us-gaap:MoneyMarketFundsMember us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember 2022-07-02 0001406666 us-gaap:MoneyMarketFundsMember us-gaap:FairValueMeasurementsRecurringMember 2022-07-02 0001406666 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USGovernmentDebtSecuritiesMember 2022-07-02 0001406666 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USGovernmentDebtSecuritiesMember 2022-07-02 0001406666 us-gaap:FairValueMeasurementsRecurringMember us-gaap:USGovernmentDebtSecuritiesMember 2022-07-02 0001406666 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:CommercialPaperMember 2022-07-02 0001406666 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:CommercialPaperMember 2022-07-02 0001406666 us-gaap:FairValueMeasurementsRecurringMember us-gaap:CommercialPaperMember 2022-07-02 0001406666 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2022-07-02 0001406666 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2022-07-02 0001406666 us-gaap:FairValueMeasurementsRecurringMember us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2022-07-02 0001406666 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:CorporateDebtSecuritiesMember 2022-07-02 0001406666 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:CorporateDebtSecuritiesMember 2022-07-02 0001406666 us-gaap:FairValueMeasurementsRecurringMember us-gaap:CorporateDebtSecuritiesMember 2022-07-02 0001406666 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:MunicipalNotesMember 2022-07-02 0001406666 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:MunicipalNotesMember 2022-07-02 0001406666 us-gaap:FairValueMeasurementsRecurringMember us-gaap:MunicipalNotesMember 2022-07-02 0001406666 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2022-07-02 0001406666 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember 2022-07-02 0001406666 us-gaap:FairValueMeasurementsRecurringMember 2022-07-02 0001406666 us-gaap:MoneyMarketFundsMember us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2021-12-31 0001406666 us-gaap:MoneyMarketFundsMember us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember 2021-12-31 0001406666 us-gaap:MoneyMarketFundsMember us-gaap:FairValueMeasurementsRecurringMember 2021-12-31 0001406666 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USGovernmentDebtSecuritiesMember 2021-12-31 0001406666 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USGovernmentDebtSecuritiesMember 2021-12-31 0001406666 us-gaap:FairValueMeasurementsRecurringMember us-gaap:USGovernmentDebtSecuritiesMember 2021-12-31 0001406666 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:CommercialPaperMember 2021-12-31 0001406666 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:CommercialPaperMember 2021-12-31 0001406666 us-gaap:FairValueMeasurementsRecurringMember us-gaap:CommercialPaperMember 2021-12-31 0001406666 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2021-12-31 0001406666 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2021-12-31 0001406666 us-gaap:FairValueMeasurementsRecurringMember us-gaap:USGovernmentAgenciesDebtSecuritiesMember 2021-12-31 0001406666 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:CorporateDebtSecuritiesMember 2021-12-31 0001406666 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:CorporateDebtSecuritiesMember 2021-12-31 0001406666 us-gaap:FairValueMeasurementsRecurringMember us-gaap:CorporateDebtSecuritiesMember 2021-12-31 0001406666 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:MunicipalNotesMember 2021-12-31 0001406666 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:MunicipalNotesMember 2021-12-31 0001406666 us-gaap:FairValueMeasurementsRecurringMember us-gaap:MunicipalNotesMember 2021-12-31 0001406666 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2021-12-31 0001406666 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember 2021-12-31 0001406666 us-gaap:FairValueMeasurementsRecurringMember 2021-12-31 0001406666 us-gaap:EquipmentMember 2022-07-02 0001406666 us-gaap:EquipmentMember 2021-12-31 0001406666 us-gaap:ComputerEquipmentMember 2022-07-02 0001406666 us-gaap:ComputerEquipmentMember 2021-12-31 0001406666 calx:SoftwareMember 2022-07-02 0001406666 calx:SoftwareMember 2021-12-31 0001406666 us-gaap:LeaseholdImprovementsMember 2022-07-02 0001406666 us-gaap:LeaseholdImprovementsMember 2021-12-31 0001406666 us-gaap:FurnitureAndFixturesMember 2022-07-02 0001406666 us-gaap:FurnitureAndFixturesMember 2021-12-31 0001406666 us-gaap:ComputerSoftwareIntangibleAssetMember 2020-12-31 0001406666 us-gaap:ComputerSoftwareIntangibleAssetMember 2019-09-28 0001406666 us-gaap:ComputerSoftwareIntangibleAssetMember 2019-06-30 2019-09-28 0001406666 us-gaap:ComputerSoftwareIntangibleAssetMember 2022-07-02 0001406666 us-gaap:ComputerSoftwareIntangibleAssetMember 2021-12-31 0001406666 calx:SanJoseCaliforniaMember 2022-07-02 0001406666 us-gaap:InventoriesMember 2022-07-02 0001406666 us-gaap:InventoriesMember 2021-12-31 0001406666 calx:A2019EquityIncentiveAwardPlanMember 2022-07-02 0001406666 us-gaap:EmployeeStockOptionMember calx:A2021PerformanceTargetsMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2022-01-01 2022-07-02 0001406666 us-gaap:EmployeeStockOptionMember calx:A2021PerformanceTargetsMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2022-01-01 2022-07-02 0001406666 srt:ExecutiveOfficerMember calx:PerformanceBasedStockOptionsMember calx:A2021PerformanceTargetsMember 2022-02-01 2022-02-28 0001406666 srt:ExecutiveOfficerMember calx:PerformanceBasedStockOptionsMember calx:A2021PerformanceTargetsMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2022-02-01 2022-02-28 0001406666 srt:ExecutiveOfficerMember calx:PerformanceBasedStockOptionsMember calx:A2021PerformanceTargetsMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2022-02-01 2022-02-28 0001406666 srt:ExecutiveOfficerMember calx:PerformanceBasedStockOptionsMember calx:A2021PerformanceTargetsMember 2022-04-03 2022-07-02 0001406666 srt:ExecutiveOfficerMember calx:PerformanceBasedStockOptionsMember calx:A2021PerformanceTargetsMember 2022-01-01 2022-07-02 0001406666 us-gaap:EmployeeStockMember 2022-07-02 0001406666 us-gaap:EmployeeStockMember 2022-01-01 2022-07-02 0001406666 us-gaap:EmployeeStockMember us-gaap:SubsequentEventMember 2022-08-15 0001406666 us-gaap:EmployeeStockMember 2022-04-02 0001406666 us-gaap:EmployeeStockMember 2022-04-03 2022-07-02 0001406666 calx:A2017NonqualifiedEmployeeStockPurchasePlanMember 2022-07-02 0001406666 calx:A2017NonqualifiedEmployeeStockPurchasePlanMember 2022-01-01 2022-07-02 0001406666 calx:A2017NonqualifiedEmployeeStockPurchasePlanMember 2022-04-03 2022-07-02 0001406666 calx:CostOfRevenueProductsMember 2022-04-03 2022-07-02 0001406666 calx:CostOfRevenueProductsMember 2021-04-04 2021-07-03 0001406666 calx:CostOfRevenueProductsMember 2022-01-01 2022-07-02 0001406666 calx:CostOfRevenueProductsMember 2021-01-01 2021-07-03 0001406666 calx:CostOfRevenueServicesMember 2022-04-03 2022-07-02 0001406666 calx:CostOfRevenueServicesMember 2021-04-04 2021-07-03 0001406666 calx:CostOfRevenueServicesMember 2022-01-01 2022-07-02 0001406666 calx:CostOfRevenueServicesMember 2021-01-01 2021-07-03 0001406666 us-gaap:SellingAndMarketingExpenseMember 2022-04-03 2022-07-02 0001406666 us-gaap:SellingAndMarketingExpenseMember 2021-04-04 2021-07-03 0001406666 us-gaap:SellingAndMarketingExpenseMember 2022-01-01 2022-07-02 0001406666 us-gaap:SellingAndMarketingExpenseMember 2021-01-01 2021-07-03 0001406666 us-gaap:ResearchAndDevelopmentExpenseMember 2022-04-03 2022-07-02 0001406666 us-gaap:ResearchAndDevelopmentExpenseMember 2021-04-04 2021-07-03 0001406666 us-gaap:ResearchAndDevelopmentExpenseMember 2022-01-01 2022-07-02 0001406666 us-gaap:ResearchAndDevelopmentExpenseMember 2021-01-01 2021-07-03 0001406666 us-gaap:GeneralAndAdministrativeExpenseMember 2022-04-03 2022-07-02 0001406666 us-gaap:GeneralAndAdministrativeExpenseMember 2021-04-04 2021-07-03 0001406666 us-gaap:GeneralAndAdministrativeExpenseMember 2022-01-01 2022-07-02 0001406666 us-gaap:GeneralAndAdministrativeExpenseMember 2021-01-01 2021-07-03 0001406666 country:US 2022-04-03 2022-07-02 0001406666 country:US 2021-04-04 2021-07-03 0001406666 country:US 2022-01-01 2022-07-02 0001406666 country:US 2021-01-01 2021-07-03 0001406666 calx:AmericasExUSMember 2022-04-03 2022-07-02 0001406666 calx:AmericasExUSMember 2021-04-04 2021-07-03 0001406666 calx:AmericasExUSMember 2022-01-01 2022-07-02 0001406666 calx:AmericasExUSMember 2021-01-01 2021-07-03 0001406666 srt:EuropeMember 2022-04-03 2022-07-02 0001406666 srt:EuropeMember 2021-04-04 2021-07-03 0001406666 srt:EuropeMember 2022-01-01 2022-07-02 0001406666 srt:EuropeMember 2021-01-01 2021-07-03 0001406666 calx:MiddleEastAndAfricaMember 2022-04-03 2022-07-02 0001406666 calx:MiddleEastAndAfricaMember 2021-04-04 2021-07-03 0001406666 calx:MiddleEastAndAfricaMember 2022-01-01 2022-07-02 0001406666 calx:MiddleEastAndAfricaMember 2021-01-01 2021-07-03 0001406666 srt:AsiaPacificMember 2022-04-03 2022-07-02 0001406666 srt:AsiaPacificMember 2021-04-04 2021-07-03 0001406666 srt:AsiaPacificMember 2022-01-01 2022-07-02 0001406666 srt:AsiaPacificMember 2021-01-01 2021-07-03 0001406666 calx:ProductAndServicesMember 2022-07-02 0001406666 calx:ProductAndServicesMember 2021-12-31 0001406666 calx:ExtendedWarrantyMember 2022-07-02 0001406666 calx:ExtendedWarrantyMember 2021-12-31 0001406666 2022-07-03 2022-07-02 0001406666 calx:OneCustomerMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2021-01-01 2021-12-31 0001406666 us-gaap:SubsequentEventMember 2022-07-01 2022-07-26 0001406666 us-gaap:SubsequentEventMember 2022-07-26 shares iso4217:USD iso4217:USD shares pure calx:plan calx:period 0001406666 false 2022 Q2 --12-31 http://fasb.org/us-gaap/2022#AccruedLiabilitiesCurrent P1Y 10-Q true 2022-07-02 false 001-34674 Calix, Inc DE 68-0438710 2777 Orchard Parkway San Jose CA 95134 408 514-3000 Common Stock, par value $0.025 per share CALX NYSE Yes Yes Large Accelerated Filer false false false 65240516 51516000 51333000 173369000 153002000 86128000 85219000 98324000 88880000 51505000 30811000 460842000 409245000 22029000 21783000 10962000 12182000 167928000 168962000 116175000 116175000 14876000 13685000 792812000 742032000 22951000 29061000 74782000 71597000 33511000 27478000 131244000 128136000 24709000 22016000 10584000 12376000 9146000 11076000 175683000 173604000 0.025 0.025 5000000 5000000 0 0 0 0 0 0 0.025 0.025 100000000 100000000 65241000 65241000 64274000 64274000 1631000 1607000 1032833000 997855000 -2261000 -320000 -415074000 -430714000 617129000 568428000 792812000 742032000 191195000 159553000 365621000 312855000 10847000 9117000 21369000 17889000 202042000 168670000 386990000 330744000 94448000 72673000 180361000 142336000 7414000 6378000 14657000 12547000 101862000 79051000 195018000 154883000 100180000 89619000 191972000 175861000 41138000 29710000 77229000 57761000 30430000 25716000 60247000 50080000 18911000 13664000 34942000 26689000 90479000 69090000 172418000 134530000 9701000 20529000 19554000 41331000 240000 -119000 275000 -244000 -272000 255000 -340000 343000 -32000 136000 -65000 99000 9669000 20665000 19489000 41430000 2148000 207000 3849000 357000 7521000 20458000 15640000 41073000 0.12 0.32 0.24 0.65 0.11 0.30 0.23 0.61 64836000 63042000 64662000 62795000 68169000 67634000 68285000 67347000 7521000 20458000 15640000 41073000 -306000 0 -1467000 0 -403000 44000 -474000 9000 -709000 44000 -1941000 9000 6812000 20502000 13699000 41082000 64612000 1616000 1014336000 -1552000 -422595000 591805000 10007000 10007000 629000 15000 8490000 8505000 7521000 7521000 -709000 -709000 65241000 1631000 1032833000 -2261000 -415074000 617129000 62851000 1572000 961846000 -226000 -648477000 314715000 6223000 6223000 349000 8000 4190000 4198000 20458000 20458000 44000 44000 63200000 1580000 972259000 -182000 -628019000 345638000 64274000 1607000 997855000 -320000 -430714000 568428000 20475000 20475000 967000 24000 14503000 14527000 15640000 15640000 -1941000 -1941000 65241000 1631000 1032833000 -2261000 -415074000 617129000 62122000 1553000 948055000 -191000 -669092000 280325000 11394000 11394000 1078000 27000 12810000 12837000 41073000 41073000 9000 9000 63200000 1580000 972259000 -182000 -628019000 345638000 15640000 41073000 20475000 11394000 7671000 7737000 1034000 0 909000 10745000 9445000 24868000 23268000 6390000 -6060000 21918000 4222000 -10184000 8725000 6164000 -3721000 -2742000 14364000 33357000 5866000 3928000 103286000 147277000 81452000 83000000 -27700000 -68205000 14527000 12837000 632000 212000 13895000 12625000 -376000 6000 183000 -22217000 51333000 80807000 51516000 58590000 Company and Basis of Presentation<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Company</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Calix, Inc. (together with its subsidiaries, “Calix” or the “Company”) was incorporated in August 1999 and is a Delaware corporation. The Company is the leading global provider of cloud and software platforms, systems and services that focus on the access network, the portion of the network that governs available bandwidth and determines the range and quality of services that can be offered to subscribers. These cloud and software platforms enable broadband service providers (“BSPs”) of all types and sizes to innovate and transform their businesses. The Company’s BSP customers are empowered to utilize real-time data and insights from Calix platforms to simplify their businesses and deliver experiences that excite their subscribers. These insights enable BSPs to grow their businesses through increased subscriber acquisition, loyalty and revenue, thereby increasing the value of their businesses and contributions to their communities.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Basis of Presentation</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying unaudited condensed consolidated financial statements, including the accounts of Calix, Inc. and its wholly-owned subsidiaries, have been prepared in accordance with the requirements of the U.S. Securities and Exchange Commission (“SEC”) for interim reporting. As permitted under those rules, certain footnotes or other financial information that are normally required by U.S. generally accepted accounting principles (“GAAP”) can be condensed or omitted. In the opinion of management, the financial statements include all normal and recurring adjustments that are considered necessary for the fair presentation of the Company’s financial position and operating results. All intercompany balances and transactions have been eliminated in consolidation. The Condensed Consolidated Balance Sheet as of December 31, 2021 has been derived from the audited financial statements at that date.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The results of the Company’s operations can vary during each quarter of the year. Therefore, the results and trends in these interim financial statements may not be the same as those for the full year or any future periods. The information included in this Quarterly Report on Form 10-Q should be read in conjunction with the audited financial statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2021.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s fiscal year begins on January 1</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">st</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and ends on December 31</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">st</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. Quarterly periods are based on a 4-4-5 calendar with the first quarter ending on the Saturday closest to March 31</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">st</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. As a result, the Company had one less day in the six months ended July 2, 2022 than for the six months ended July 3, 2021. The preparation of financial statements in conformity with GAAP for interim financial reporting requires management to make estimates and assumptions that affect the amounts reported in the condensed consolidated financial statements and accompanying notes. Actual results could differ from those estimates.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Risks and Uncertainties</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is subject to risks and uncertainties as a result of the COVID-19 pandemic. The extent of the impact of the COVID-19 pandemic on the Company’s business is highly uncertain and difficult to predict, particularly as variants of the coronavirus continue to spread around the world. Although the availability of vaccines has increased, there are no assurances as to when the pandemic will become endemic. The COVID-19 pandemic has had a prolonged impact on the Company’s supply chain operations due to restrictions, reduced capacity and limited availability from suppliers on whom the Company relies for sourcing components and materials and from third-party partners on whom the Company relies for manufacturing, warehousing and logistics services. The Company’s supply chain continues to face constraints primarily due to closures affecting suppliers and manufacturers in China that have led to challenges in sourcing components and materials. Shortages and delays relating to the Company’s components and materials have also caused, and may continue to cause, difficulties in managing global logistics, and transport and warehousing services for the Company’s products. The prolonged impact of COVID-19 could exacerbate these constraints or cause further supply chain disruptions.</span></div> <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Basis of Presentation</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying unaudited condensed consolidated financial statements, including the accounts of Calix, Inc. and its wholly-owned subsidiaries, have been prepared in accordance with the requirements of the U.S. Securities and Exchange Commission (“SEC”) for interim reporting. As permitted under those rules, certain footnotes or other financial information that are normally required by U.S. generally accepted accounting principles (“GAAP”) can be condensed or omitted. In the opinion of management, the financial statements include all normal and recurring adjustments that are considered necessary for the fair presentation of the Company’s financial position and operating results. All intercompany balances and transactions have been eliminated in consolidation. The Condensed Consolidated Balance Sheet as of December 31, 2021 has been derived from the audited financial statements at that date.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The results of the Company’s operations can vary during each quarter of the year. Therefore, the results and trends in these interim financial statements may not be the same as those for the full year or any future periods. The information included in this Quarterly Report on Form 10-Q should be read in conjunction with the audited financial statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2021.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s fiscal year begins on January 1</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">st</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and ends on December 31</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">st</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. Quarterly periods are based on a 4-4-5 calendar with the first quarter ending on the Saturday closest to March 31</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">st</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. As a result, the Company had one less day in the six months ended July 2, 2022 than for the six months ended July 3, 2021. The preparation of financial statements in conformity with GAAP for interim financial reporting requires management to make estimates and assumptions that affect the amounts reported in the condensed consolidated financial statements and accompanying notes. Actual results could differ from those estimates.</span></div> Significant Accounting PoliciesThe Company’s significant accounting policies are disclosed in its Annual Report on Form 10-K for the year ended December 31, 2021. The Company’s significant accounting policies did not change during the six months ended July 2, 2022.<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Newly Adopted Accounting Standard</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company did not adopt any new accounting standards during the six months ended July 2, 2022 that were significant to the Company.</span></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Recent Accounting Pronouncements Not Yet Adopted</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been no additional accounting pronouncements or changes in accounting pronouncements during the six months ended July 2, 2022 as compared to the recent accounting pronouncements described in the Company’s Annual Report on Form 10-K for the year ended December 31, 2021, that are significant or potentially significant to the Company.</span></div> <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Newly Adopted Accounting Standard</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company did not adopt any new accounting standards during the six months ended July 2, 2022 that were significant to the Company.</span></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Recent Accounting Pronouncements Not Yet Adopted</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been no additional accounting pronouncements or changes in accounting pronouncements during the six months ended July 2, 2022 as compared to the recent accounting pronouncements described in the Company’s Annual Report on Form 10-K for the year ended December 31, 2021, that are significant or potentially significant to the Company.</span></div> Cash, Cash Equivalents and Marketable Securities<div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has invested its excess cash primarily in money market funds and highly liquid marketable securities such as commercial paper, corporate debt securities, municipal securities and U.S. government securities. The Company considers all investments with maturities of three months or less when purchased to be cash equivalents. Marketable securities represent commercial paper, U.S. government agency securities, corporate debt securities, municipal securities and U.S. government securities with maturities greater than 90 days at date of purchase. Cash equivalents are stated at amounts that approximate fair value based on quoted market prices. Marketable securities are recorded at their fair values.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Marketable securities with maturities greater than one year are classified as current because management considers all marketable securities to be available for current operations.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s investments have been classified and accounted for as available-for-sale. Such investments are recorded at fair value and unrealized holding gains and losses are reported as a separate component of accumulated other comprehensive loss in the stockholders’ equity until realized. Realized gains and losses on sales of marketable securities, if any, are determined on the specific identification method and are reclassified from accumulated other comprehensive loss to results of operations as other expense, net. There were no realized gains and losses for the three and six months ended July 2, 2022 and July 3, 2021, respectively.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Cash, cash equivalents and marketable securities consisted of the following (in thousands):</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 style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.574%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash and cash equivalents:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">24,113 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">26,442 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,616 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21,582 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Money market funds</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,787 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,320 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate debt securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">989 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total cash and cash equivalents</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51,516 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51,333 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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:9pt;font-weight:400;line-height:100%">Marketable securities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">60,279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">63,040 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">80,812 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government agency securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,028 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,527 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate debt securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">799 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,576 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Municipal securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">694 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total marketable securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">173,369 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">153,002 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">224,885 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">204,335 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying amounts of the Company’s money market funds approximate their fair values due to their nature, duration and short maturities.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amortized cost and fair value of marketable securities as of July 2, 2022 were as follows (in thousands):</span></div><div style="margin-top:7pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:45.245%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.838%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding: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="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding: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="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding: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%">Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">101,289 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(1,481)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">99,808 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">87,725 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(69)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">87,656 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government agency securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,117 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(89)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,028 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate debt securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">803 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">799 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Municipal securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">696 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">694 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total marketable securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">199,630 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(1,645)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">197,985 </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"/></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unrealized gains and losses were de minimis as of December 31, 2021.</span></div> <div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Cash, cash equivalents and marketable securities consisted of the following (in thousands):</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 style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.574%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash and cash equivalents:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">24,113 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">26,442 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,616 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21,582 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Money market funds</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,787 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,320 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate debt securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">989 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total cash and cash equivalents</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51,516 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51,333 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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:9pt;font-weight:400;line-height:100%">Marketable securities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">60,279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">63,040 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">80,812 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government agency securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,028 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,527 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate debt securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">799 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,576 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Municipal securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">694 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total marketable securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">173,369 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">153,002 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">224,885 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">204,335 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 24113000 26442000 24616000 21582000 2787000 2320000 0 989000 51516000 51333000 99808000 60279000 63040000 80812000 9028000 5527000 799000 3576000 694000 2808000 173369000 153002000 224885000 204335000 <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amortized cost and fair value of marketable securities as of July 2, 2022 were as follows (in thousands):</span></div><div style="margin-top:7pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:45.245%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.554%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.838%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding: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="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding: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="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding: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%">Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">101,289 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(1,481)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">99,808 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">87,725 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(69)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">87,656 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government agency securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,117 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(89)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,028 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate debt securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">803 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">799 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Municipal securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">696 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">694 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total marketable securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">199,630 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(1,645)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">197,985 </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"/></tr></table></div> 101289000 1481000 99808000 87725000 69000 87656000 9117000 89000 9028000 803000 4000 799000 696000 2000 694000 199630000 1645000 197985000 Fair Value Measurements<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company measures its cash equivalents and marketable securities at fair value on a recurring basis. Fair value is an exit price, representing the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As such, fair value is a market-based measurement that should be determined based on assumptions that market participants would use in pricing an asset or liability. The Company utilizes the following three-tier value hierarchy, which prioritizes the inputs used in measuring fair value:</span></div><div style="margin-top:12pt;padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 1 – Observable inputs that reflect quoted prices (unadjusted) for identical assets or liabilities in active markets.</span></div><div style="margin-top:12pt;padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 2 – Observable inputs other than quoted prices included in Level 1 for similar instruments in active markets, quoted prices for identical or similar instruments in markets that are not active, and model-driven valuations in which all significant inputs and significant value drivers are observable in active markets.</span></div><div style="margin-top:12pt;padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 3 – Unobservable inputs to the valuation derived from fair valuation techniques in which one or more significant inputs or significant value drivers are unobservable. The fair value hierarchy also requires the Company to maximize the use of observable inputs, when available, and to minimize the use of unobservable inputs when determining inputs and determining fair value.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables sets forth the Company’s financial assets measured at fair value on a recurring basis based on the three-tier fair value hierarchy (in thousands): </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 style="width:64.835%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.575%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">As of July 2, 2022</span></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%">Level 1</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Level 2</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Money market funds</span></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:9pt;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:9pt;font-weight:400;line-height:100%">2,787 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">2,787 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">87,656 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">87,656 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government agency securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,028 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,028 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate debt securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">799 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">799 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Municipal securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">694 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">694 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">102,595 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">98,177 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">200,772 </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"/></tr></table></div><div style="margin-top:5pt"><span><br/></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 style="width:64.835%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.575%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">As of December 31, 2021</span></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%">Level 1</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Level 2</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Money market funds</span></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:9pt;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:9pt;font-weight:400;line-height:100%">2,320 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">2,320 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">60,279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">60,279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">102,394 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">102,394 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government agency securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,527 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,527 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate debt securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,565 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,565 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Municipal securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">62,599 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">115,294 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">177,893 </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"/></tr></table></div> <div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables sets forth the Company’s financial assets measured at fair value on a recurring basis based on the three-tier fair value hierarchy (in thousands): </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 style="width:64.835%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.575%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">As of July 2, 2022</span></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%">Level 1</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Level 2</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Money market funds</span></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:9pt;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:9pt;font-weight:400;line-height:100%">2,787 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">2,787 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">87,656 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">87,656 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government agency securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,028 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,028 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate debt securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">799 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">799 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Municipal securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">694 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">694 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">102,595 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">98,177 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">200,772 </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"/></tr></table></div><div style="margin-top:5pt"><span><br/></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 style="width:64.835%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.575%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">As of December 31, 2021</span></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%">Level 1</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Level 2</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Money market funds</span></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:9pt;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:9pt;font-weight:400;line-height:100%">2,320 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">2,320 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">60,279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">60,279 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">102,394 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">102,394 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. government agency securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,527 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,527 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate debt securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,565 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,565 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Municipal securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">62,599 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">115,294 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">177,893 </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"/></tr></table></div> 2787000 0 2787000 99808000 0 99808000 0 87656000 87656000 0 9028000 9028000 0 799000 799000 0 694000 694000 102595000 98177000 200772000 2320000 0 2320000 60279000 0 60279000 0 102394000 102394000 0 5527000 5527000 0 4565000 4565000 0 2808000 2808000 62599000 115294000 177893000 Balance Sheet Details<div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable, net consisted of the following (in thousands):</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 style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.574%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">86,788 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">85,944 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Allowance for doubtful accounts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(660)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(725)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">86,128 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">85,219 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventory consisted of the following (in thousands):</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 style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.574%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Raw materials</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">674 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">130 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">97,650 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">88,750 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">98,324 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">88,880 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment, net consisted of the following (in thousands):</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 style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.574%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Test equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41,290 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39,476 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Computer equipment</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,079 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,156 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Software</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,623 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,013 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,678 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,351 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Furniture and fixtures</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,074 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,812 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">64,744 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">62,808 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accumulated depreciation and amortization</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(42,715)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(41,025)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">22,029 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">21,783 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:1pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other long-term assets consisted of the following (in thousands): </span></div><div style="margin-top:11pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.574%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Intangible asset, net</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,569 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,885 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other long-term assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,307 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,800 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">14,876 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">13,685 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Intangible Asset Acquisition</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In March 2018, and as amended in December 2020, the Company entered into an agreement with a vendor to develop a certain software product and related enhancements pursuant to which the Company is obligated to make revenue-share payments under the program, subject to aggregate fixed revenue-share payments of $15.8 million. The payments are based on a revenue-share rate applied to revenue from the developed-product and the corresponding hardware sales through March 2024. If the minimum revenue-share payments are not achieved by the end of that period, a true-up payment will be due. The Company had its first sale in August 2019, and as a result, the Company capitalized an intangible asset with a value of $13.2 million in the third quarter of 2019 and also recognized a liability of $13.2 million (a non-cash investing activity). The intangible asset has an estimated five-year useful life and is being amortized using the greater of the ratio of current gross revenue for the products to the total of current and anticipated future gross revenue for the products or the straight-line method. As of July 2, 2022, the liability, including accrued interest, was $12.9 million, of which $5.7 million is included in “Accrued liabilities” and $7.2 million in “Other long-term liabilities” in the accompanying Condensed Consolidated Balance Sheet. As of December 31, 2021, the liability, including accrued interest, was $13.2 million, of which $4.7 million was included in “Accrued liabilities” and $8.5 million in other “Other long-term liabilities.”</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities consisted of the following (in thousands):</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 style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.574%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Compensation and related benefits</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">20,314 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23,165 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Component inventory held by suppliers</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,310 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,611 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current portion of warranty and retrofit</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,777 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,076 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current portion of revenue share payments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,747 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,731 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Professional and consulting fees</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,678 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,819 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Freight</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,201 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,997 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Customer advances or rebates</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,118 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,742 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,822 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,596 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taxes payable</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,395 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,251 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Product returns</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,804 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,836 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,765 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,400 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,851 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,373 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">74,782 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">71,597 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in the Company’s accrued warranty and retrofit liability were as follows (in thousands):</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 style="width:41.590%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.621%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at beginning of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,570 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,650 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,594 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,208 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accruals for product warranty and retrofit</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(351)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,003 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">177 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,205 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of warranty and retrofit claims</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(565)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(742)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,117)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,502)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at end of period</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,654 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,911 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,654 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,911 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> <div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable, net consisted of the following (in thousands):</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 style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.574%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">86,788 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">85,944 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Allowance for doubtful accounts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(660)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(725)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">86,128 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">85,219 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 86788000 85944000 660000 725000 86128000 85219000 <div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventory consisted of the following (in thousands):</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 style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.574%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Raw materials</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">674 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">130 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">97,650 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">88,750 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">98,324 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">88,880 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 674000 130000 97650000 88750000 98324000 88880000 <div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment, net consisted of the following (in thousands):</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 style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.574%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Test equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41,290 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39,476 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Computer equipment</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,079 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,156 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Software</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,623 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,013 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,678 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,351 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Furniture and fixtures</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,074 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,812 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">64,744 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">62,808 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accumulated depreciation and amortization</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(42,715)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(41,025)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">22,029 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">21,783 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 41290000 39476000 11079000 11156000 9623000 9013000 1678000 1351000 1074000 1812000 64744000 62808000 42715000 41025000 22029000 21783000 <div style="margin-top:1pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other long-term assets consisted of the following (in thousands): </span></div><div style="margin-top:11pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.574%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Intangible asset, net</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,569 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,885 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other long-term assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,307 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,800 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">14,876 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">13,685 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 5569000 6885000 9307000 6800000 14876000 13685000 15800000 13200000 13200000 P5Y 12900000 5700000 7200000 13200000 4700000 8500000 <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities consisted of the following (in thousands):</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 style="width:74.338%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.574%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Compensation and related benefits</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">20,314 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23,165 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Component inventory held by suppliers</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,310 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,611 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current portion of warranty and retrofit</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,777 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,076 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current portion of revenue share payments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,747 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,731 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Professional and consulting fees</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,678 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,819 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Freight</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,201 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,997 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Customer advances or rebates</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,118 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,742 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,822 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,596 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taxes payable</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,395 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,251 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Product returns</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,804 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,836 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,765 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,400 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,851 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,373 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">74,782 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">71,597 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 20314000 23165000 9310000 7611000 6777000 7076000 5747000 4731000 5678000 4819000 5201000 3997000 5118000 4742000 3822000 3596000 3395000 4251000 2804000 1836000 1765000 1400000 4851000 4373000 74782000 71597000 <div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in the Company’s accrued warranty and retrofit liability were as follows (in thousands):</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 style="width:41.590%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.621%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at beginning of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,570 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,650 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,594 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,208 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accruals for product warranty and retrofit</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(351)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,003 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">177 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,205 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of warranty and retrofit claims</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(565)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(742)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,117)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,502)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Balance at end of period</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,654 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,911 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,654 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,911 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 9570000 9650000 9594000 9208000 -351000 1003000 177000 2205000 565000 742000 1117000 1502000 8654000 9911000 8654000 9911000 Commitments and Contingencies<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Lease Commitments</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company leases office space under non-cancelable operating leases. Certain of the Company’s operating leases contain renewal options and rent acceleration clauses. Future minimum payments under the non-cancelable operating leases consisted of the following as of July 2, 2022 (in thousands):</span></div><div style="margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:76.092%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.648%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.960%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Period</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Future Minimum Lease Payments</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:9pt;font-weight:400;line-height:100%">Remainder of 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,263 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,680 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,510 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,010 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">562 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total future minimum lease payments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,025 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less imputed interest</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,619)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">14,406 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:1pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of July 2, 2022, the operating lease liability consisted of the following (in thousands):</span></div><div style="margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:79.455%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.106%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjAxN2UxMmYwM2ZiNjRiMzU4NWNkMThjNTU3ZmJlNWQ4L3NlYzowMTdlMTJmMDNmYjY0YjM1ODVjZDE4YzU1N2ZiZTVkOF80Ni9mcmFnOjZiNGUxNDgzNjMyYjRiYjk5NDQxYmZmODA2YjI1MjE3L3RhYmxlOjIwMDdjNzA3ZjJiNDRjYzZhZjhjOGY3YzVhNjZkM2UxL3RhYmxlcmFuZ2U6MjAwN2M3MDdmMmI0NGNjNmFmOGM4ZjdjNWE2NmQzZTFfMS0wLTEtMS0yODgyOA_972e8c7e-a772-4d38-b20b-c4edf5183487">Accrued liabilities - current portion of operating leases</span></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">3,822 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:400;line-height:100%">Operating leases</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,584 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">14,406 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company leases its headquarters office space in San Jose, California under a lease agreement that expires in December 2025. The future minimum lease payments under the lease are $8.5 million and are included in the table above.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The weighted average discount rate for the Company’s operating leases as of July 2, 2022 was 6.1%. The weighted average remaining lease term as of July 2, 2022 was 3.5 years.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three and six months ended July 2, 2022, total rent expense of the Company was $1.1 million and $2.2 million, respectively. For the three and six months ended July 3, 2021, total rent expense of the Company was $0.9 million and $2.1 million, respectively. Cash paid within operating cash flows for operating leases was $2.3 million and $2.0 million for the six months ended July 2, 2022 and July 3, 2021, respectively.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Purchase Commitments</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s suppliers, including contract manufacturers (“CMs”) and original design manufacturers (“ODMs”), place orders for certain component inventory in advance based upon the Company’s build forecasts in order to reduce manufacturing lead times and ensure adequate component supply. The components are used by the CMs and ODMs to build the products included in the build forecasts. The Company generally does not take ownership of the components held by CMs and ODMs. The Company places purchase orders with its CMs and ODMs in order to fulfill its monthly finished product inventory requirements. The Company incurs a liability when the CMs and ODMs convert the component inventory to a finished product and takes ownership of the finished goods inventory. In the event of termination of services with a manufacturing partner, the Company has purchased, and may be required to purchase in the future, certain of the remaining components inventory held by the CM or ODM as well as any outstanding orders pursuant to the contractual provisions with such CM or ODM. As of July 2, 2022 and December 31, 2021, the Company had approximately $324.2 million and $247.3 million, respectively, of outstanding purchase commitments for inventories to be delivered by its suppliers, including CMs and ODMs, within two years.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has from time to time, and subject to certain conditions, reimbursed certain suppliers for component inventory purchases when this inventory has been rendered excess or obsolete, for example due to manufacturing and engineering change orders resulting from design changes, manufacturing discontinuation of products by its suppliers, or in cases where the Company has committed inventory levels that greatly exceed projected demand. The estimated excess and obsolete inventory liabilities related to such manufacturing and engineering change orders and other factors, which are included in accrued liabilities in the accompanying balance sheets, were $9.3 million and $7.6 million as of July 2, 2022 and December 31, 2021, respectively. The Company records the related charges in cost of systems revenue in its Condensed Consolidated Statements of Comprehensive Income.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Litigation</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">From time to time, the Company is involved in various legal proceedings arising from the normal course of business activities. The Company is not currently a party to any legal proceedings that, if determined adversely to the Company, in management’s opinion, are currently expected to individually or in the aggregate have a material adverse effect on the Company’s business, operating results or financial condition taken as a whole.</span></div> Future minimum payments under the non-cancelable operating leases consisted of the following as of July 2, 2022 (in thousands):<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:76.092%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.648%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.960%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Period</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Future Minimum Lease Payments</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:9pt;font-weight:400;line-height:100%">Remainder of 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,263 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,680 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,510 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,010 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">562 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total future minimum lease payments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,025 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less imputed interest</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,619)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">14,406 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table> 2263000 4680000 4510000 4010000 562000 16025000 1619000 14406000 <div style="margin-top:1pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of July 2, 2022, the operating lease liability consisted of the following (in thousands):</span></div><div style="margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:79.455%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.106%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjAxN2UxMmYwM2ZiNjRiMzU4NWNkMThjNTU3ZmJlNWQ4L3NlYzowMTdlMTJmMDNmYjY0YjM1ODVjZDE4YzU1N2ZiZTVkOF80Ni9mcmFnOjZiNGUxNDgzNjMyYjRiYjk5NDQxYmZmODA2YjI1MjE3L3RhYmxlOjIwMDdjNzA3ZjJiNDRjYzZhZjhjOGY3YzVhNjZkM2UxL3RhYmxlcmFuZ2U6MjAwN2M3MDdmMmI0NGNjNmFmOGM4ZjdjNWE2NmQzZTFfMS0wLTEtMS0yODgyOA_972e8c7e-a772-4d38-b20b-c4edf5183487">Accrued liabilities - current portion of operating leases</span></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">3,822 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:400;line-height:100%">Operating leases</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,584 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">14,406 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 3822000 10584000 14406000 8500000 0.061 P3Y6M 1100000 2200000 900000 2100000 2300000 2000000 324200000 247300000 P2Y 9300000 7600000 Stockholders’ Equity <div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">2019 Equity Incentive Award Plan</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Employees and consultants of the Company, its subsidiaries and affiliates, as well as members of the Company’s Board of Directors, are eligible to receive awards under the 2019 Equity Incentive Award Plan (“the 2019 Plan”). The 2019 Plan provides for the grant of stock options, including incentive stock options and nonqualified stock options, stock appreciation rights, restricted stock, restricted stock units, other stock or cash-based awards and dividend equivalents to eligible individuals. At the Company’s 2022 annual meeting of stockholders, the stockholders approved an increase in the number of shares of common stock issuable under the 2019 Plan by 1.5 million shares. As of July 2, 2022, there were 7.0 million shares available for issuance under the 2019 Plan.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Stock Options</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three months ended July 2, 2022, stock option awards exercisable for up to an aggregate of 0.4 million shares of common stock were granted with a grant date weighted-average exercise price of $33.46 per share. During the six months ended July 2, 2022, stock option awards exercisable for up to an aggregate of 0.8 million shares of common stock were granted with a grant date weighted-average exercise price of $43.15 per share. These stock option awards vest 25% on the first anniversary of the vesting commencement date and on a quarterly basis thereafter over an additional three years.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In February 2022, performance-based stock option awards exercisable for up to an aggregate of 0.7 million shares of common stock were granted to certain Company executives with a grant date exercise price of $55.96 per share. The actual number of shares earned is contingent upon achievement of annual corporate financial targets for bookings and non-GAAP net operating income for 2022 (collectively, the “2022 Performance Targets”) during the one-year performance period. These performance-based stock option awards will vest, subject to certification by the Compensation Committee of the Company’s Board of Directors upon the achievement of the 2022 Performance Targets, as to 25% of the shares of common stock earned on the one year anniversary of the date of grant, and as to the remaining 75% of the shares of common stock earned, in substantially equal </span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">quarterly installments over the subsequent 36 months, subject to the executive’s continuous service with the Company through the respective vesting dates. If the non-GAAP net operating income target is achieved below 80% of target or the bookings target is achieved below 90% of target, no shares would be awarded, and the performance-based stock option awards would be forfeited in full. If both targets are achieved at the minimum threshold of 80% of target for non-GAAP net operating income and 90% of target for bookings, then the shares are awarded at 50% of the granted shares, with an increasing percentage of shares awarded above the minimum thresholds up to 100% of the granted shares if both targets are achieved at 100% or more of target. The probability of meeting the performance conditions related to these performance-based stock option awards was assessed to be probable as of July 2, 2022, and stock-based compensation expense of $2.9 million was recognized for the three months ended July 2, 2022. For the six months ended July 2, 2022, stock-based compensation expense of $4.5 million was recognized.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three months ended July 2, 2022, 0.3 million shares of common stock were issued pursuant to the exercise of stock options at a weighted-average exercise price of $7.51 per share. During the six months ended July 2, 2022, 0.5 million shares of common stock were issued pursuant to the exercise of stock options at a weighted-average exercise price of $7.56 per share. As of July 2, 2022, unrecognized stock-based compensation expense of $55.3 million related to stock options, net of estimated forfeitures, is expected to be recognized over a weighted-average period of 2.2 years.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Employee Stock Purchase Plans</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company maintains two employee stock purchase plans - the Amended and Restated Employee Stock Purchase Plan (the “ESPP”) and the Amended and Restated 2017 Nonqualified Employee Stock Purchase Plan (the “NQ ESPP”).</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The ESPP allows eligible employees to purchase shares of the Company’s common stock through payroll deductions of up to 15% of their eligible compensation subject to certain Internal Revenue Code limitations. In addition, participants may purchase up to 2,000 shares of common stock during each offering period.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The offering periods under the ESPP are two six-month offering periods from August 15</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> through February 14</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and February 15</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> through August 14</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of each year. The price of common stock purchased under the ESPP is 85% of the lower of the fair market value of the common stock on the commencement date and the end date of each six-month offering period. At the Company’s 2022 annual meeting of stockholders, the stockholders approved an increase in the number of shares of common stock issuable under the ESPP by 1.3 million shares, which will go into effect for the six-month purchase period commencing August 15, 2022 and ending on February 14, 2023. The total shares authorized for issuance under the ESPP increased from 11.1 million shares to 12.4 million shares. As of July 2, 2022, there were 3.5 million shares available for issuance under the ESPP. During the six months ended July 2, 2022, 0.1 million shares were purchased under the ESPP. As of July 2, 2022, unrecognized stock-based compensation expense of $0.3 million related to the ESPP is expected to be recognized over a remaining service period of 0.1 years.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The NQ ESPP allows eligible employees to purchase shares of the Company’s common stock through payroll deductions of up to 25% of their eligible compensation. Eligible employees have the right to (a) purchase the maximum number of whole shares of common stock that can be purchased with the elected payroll deductions during each offering period for which the employee is enrolled at a purchase price equal to the closing price of the Company’s common stock on the last day of such offering period and (b) receive an equal number of shares of the Company’s common stock that are subject to a risk of forfeiture in the event the employee terminates employment within the one year period immediately following the purchase date. Beginning in the second quarter of 2022, the NQ ESPP provides quarterly offering periods from February 8</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> through May 7</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, May 8</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> through August 7</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, August 8</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> through November 7</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">and November 8</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> through February 7</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">of each year. A transition period began on May 15</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and will end on August 7</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">th</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. At the Company’s 2022 annual meeting of stockholders, the stockholders approved an increase in the number of shares of common stock issuable under the NQ ESPP by 0.8 million shares. The maximum number of shares of common stock currently authorized for issuance under the NQ ESPP is 6.3 million shares, with a maximum of 0.5 million shares allocated per purchase period. As of July 2, 2022, there were 3.3 million shares available for issuance under the NQ ESPP, including the stockholder-approved 0.8 million share increase. During the three and six months ended July 2, 2022, 0.4 million shares were purchased and issued. As of July 2, 2022, unrecognized stock-based compensation expense of $6.9 million related to the NQ ESPP is expected to be recognized over a remaining weighted-average service period of 0.9 years.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Stock-Based Compensation</span></div><div style="margin-top:5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes stock-based compensation expense (in thousands):</span></div><div style="margin-top:11pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:41.590%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.621%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Products</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">419 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">186 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">793 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">348 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">231 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">157 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">473 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">307 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,848 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,723 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,330 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,170 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,259 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,644 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,004 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,227 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,250 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,513 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,875 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,342 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">10,007 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">6,223 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">20,475 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">11,394 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 1500000 7000000 400000 33.46 800000 43.15 0.25 P3Y 700000 55.96 P1Y 0.25 0.75 P36M 0.80 0.90 0 0.80 0.90 0.50 1 1 2900000 4500000 300000 7.51 500000 7.56 55300000 P2Y2M12D 2 0.15 2000 2 P6M 0.85 P6M 1300000 P6M 11100000 12400000 3500000 100000 300000 P0Y1M6D 0.25 P1Y 800000 6300000 500000 3300000 800000 400000 400000 400000 400000 6900000 P0Y10M24D <div style="margin-top:5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes stock-based compensation expense (in thousands):</span></div><div style="margin-top:11pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:41.590%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.621%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Products</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">419 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">186 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">793 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">348 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">231 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">157 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">473 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">307 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,848 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,723 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,330 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,170 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,259 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,644 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,004 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,227 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,250 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,513 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,875 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,342 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">10,007 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">6,223 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">20,475 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">11,394 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 419000 186000 793000 348000 231000 157000 473000 307000 2848000 1723000 5330000 3170000 2259000 1644000 6004000 3227000 4250000 2513000 7875000 4342000 10007000 6223000 20475000 11394000 Revenue from Contracts with Customers<div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company derives revenue from contracts with customers primarily from the following and categorizes its revenue as follows:</span></div><div style="padding-left:31.5pt;text-indent:-9pt"><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:5.5pt">Systems include revenue from the sale of access and premises systems, software platform licenses and cloud-based software subscriptions; and</span></div><div style="padding-left:31.5pt;text-indent:-9pt"><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:5.5pt">Services include revenue from customer support, software- and cloud-based maintenance, extended warranty subscriptions, professional services, training and managed services.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a summary of revenue disaggregated by geographic region based upon the location of the customers (in thousands):</span></div><div style="margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:26.677%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.700%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.561%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="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%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="21" 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%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" 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%">July 2, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="9" 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%">July 3, 2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" 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%">July 2, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="9" 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%">July 3, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></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:9pt;font-weight:400;line-height:100%">183,932 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></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:9pt;font-weight:400;line-height:100%">138,587 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></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:9pt;font-weight:400;line-height:100%">349,563 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></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:9pt;font-weight:400;line-height:100%">277,934 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></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:400;line-height:100%">Americas ex U.S.</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,457 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,679 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25,860 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Europe</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,954 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,844 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,527 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,259 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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:400;line-height:100%">Middle East &amp; Africa</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,099 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,172 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,717 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,260 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Asia Pacific</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">249 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">610 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">504 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,431 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">202,042 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">168,670 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">386,990 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">330,744 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:0 1pt"/></tr></table></div><div style="margin-top:4pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Contract Asset</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The primary contract asset is revenue recognized on professional services contracts where the services are transferred to the customer over time, which has yet to be billed, and is classified within accounts receivable. Amounts are billed in accordance with the agreed-upon contractual terms. The balance as of December 31, 2021 was $1.7 million of which $0.4 million remained in the Company’s Condensed Consolidated Balance Sheet as of July 2, 2022. The closing balance as of July 2, 2022 was $1.7 million of which the Company expects to bill 60% of the balance during the remainder of 2022. The contract asset balance may fluctuate depending on the timing of professional services contracts with the Company's customers.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Contract Liability</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred revenue consisted of the following (in thousands):</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 style="width:67.321%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.522%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Products and services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">28,535 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">22,586 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Extended warranty</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,976 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,892 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,511 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,478 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Long-term:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Products and services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,453 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,137 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Extended warranty</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,256 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,879 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,709 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,016 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">58,220 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">49,494 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:1pt"><span><br/></span></div><div style="margin-top:1pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The increase in the deferred revenue balance for the three and six months ended July 2, 2022 is primarily driven by cash payments received or due in advance of satisfying the Company’s performance obligations offset by $12.9 million of revenue recognized that was included in the deferred revenue balance at the beginning of the period.</span></div><div style="margin-top:1pt"><span><br/></span></div><div style="margin-top:1pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue allocated to remaining performance obligations (“RPOs”) represents contract revenue that has not yet been recognized, which includes deferred revenue and amounts that will be invoiced and recognized as revenue in future periods but excludes variable consideration where the monthly invoicing is based on usage or where actual usage exceeds the minimum commitment. RPOs were $162.8 million as of July 2, 2022, and the Company expects to recognize as revenue 34% of this amount over the next 12 months and the remainder thereafter.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Contract Costs</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company capitalizes certain sales commissions related primarily to multi-year subscriptions and extended warranty support for which the expected amortization period is greater than one year. As of July 2, 2022 and December 31, 2021, the unamortized balance of deferred commissions was $7.7 million and $7.4 million, respectively. For the three and six months ended July 2, 2022, the amount of amortization was $0.9 million and $1.6 million, respectively, compared to $0.2 million and $0.3 million for the three and six months ended July 3, 2021, respectively. There was no impairment loss in relation to the costs capitalized for either period.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Concentration of Customer Risk</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">No customer accounted for more than 10% of the Company’s total revenue for the three or six months ended July 2, 2022 or July 3, 2021. </span></div>No customer represented more than 10% of the Company’s accounts receivable as of July 2, 2022. One customer represented 12% of the Company’s accounts receivable as of December 31, 2021. <div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company derives revenue from contracts with customers primarily from the following and categorizes its revenue as follows:</span></div><div style="padding-left:31.5pt;text-indent:-9pt"><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:5.5pt">Systems include revenue from the sale of access and premises systems, software platform licenses and cloud-based software subscriptions; and</span></div><div style="padding-left:31.5pt;text-indent:-9pt"><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:5.5pt">Services include revenue from customer support, software- and cloud-based maintenance, extended warranty subscriptions, professional services, training and managed services.</span></div> <div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a summary of revenue disaggregated by geographic region based upon the location of the customers (in thousands):</span></div><div style="margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:26.677%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.700%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.561%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="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%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="21" 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%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" 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%">July 2, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="9" 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%">July 3, 2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" 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%">July 2, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="9" 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%">July 3, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></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:9pt;font-weight:400;line-height:100%">183,932 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></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:9pt;font-weight:400;line-height:100%">138,587 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></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:9pt;font-weight:400;line-height:100%">349,563 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></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:9pt;font-weight:400;line-height:100%">277,934 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></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:400;line-height:100%">Americas ex U.S.</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,808 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,457 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,679 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25,860 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Europe</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,954 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,844 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,527 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,259 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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:400;line-height:100%">Middle East &amp; Africa</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,099 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,172 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,717 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,260 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Asia Pacific</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">249 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">610 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">504 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,431 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">202,042 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">168,670 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">386,990 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;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:9pt;font-weight:400;line-height:100%">330,744 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:0 1pt"/></tr></table></div> 183932000 138587000 349563000 277934000 10808000 14457000 19679000 25860000 2954000 9844000 9527000 13259000 4099000 5172000 7717000 12260000 249000 610000 504000 1431000 202042000 168670000 386990000 330744000 1700000 400000 1700000 0.60 <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred revenue consisted of the following (in thousands):</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 style="width:67.321%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.522%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Products and services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">28,535 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">22,586 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Extended warranty</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,976 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,892 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,511 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,478 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Long-term:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Products and services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,453 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,137 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Extended warranty</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,256 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,879 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,709 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,016 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">58,220 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">49,494 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 28535000 22586000 4976000 4892000 33511000 27478000 6453000 3137000 18256000 18879000 24709000 22016000 58220000 49494000 12900000 162800000 0.34 7700000 7400000 900000 1600000 200000 300000 0 0 0.12 Income Taxes<div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents income taxes and the effective tax rates for the periods indicated (in thousands, except percentages):</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 style="width:33.987%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.524%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,669 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">20,665 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,489 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41,430 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income taxes</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">2,148 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">207 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">3,849 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">357 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Effective tax rate</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22.2 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19.7 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.9 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s income taxes for the three months ended July 2, 2022 and July 3, 2021 were determined using an estimated effective tax rate adjusted for discrete items that occurred during the respective periods. The Company's effective tax rate for the three and six months ended July 2, 2022 differs from the statutory federal corporate tax rate of 21% primarily due to U.S. federal research tax credits and excess tax benefits from stock-based compensation partially offset by state taxes, the inclusion of income from certain foreign operations and the effect of non-deductible stock-based compensation for executive officers. </span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's effective tax rate for the three and six months ended July 3, 2021 was significantly lower than 2022 as the Company maintained a full valuation allowance until the third quarter of 2021.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has net deferred tax assets that have arisen primarily as a result of temporary differences, net operating loss carryforwards and tax credits. The Company’s ability to realize a deferred tax asset is based on its ability to generate sufficient future taxable income within the applicable carryforward period and subject to any applicable limitations. Management continues to believe that it is more likely than not we will utilize a significant portion of our deferred tax assets.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company continues to maintain a valuation allowance of $30.8 million on certain U.S. federal and state deferred tax assets that the Company believes are not more likely than not to be realized in future periods.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company considers scheduled reversals of deferred tax liabilities, projected future taxable income, ongoing tax planning strategies and other matters, including the period over which its deferred tax assets will be recoverable, in assessing the need for and the amount of the valuation allowance. In the event that actual results differ from these estimates, or if the Company decides to adjust these estimates in the future periods, further adjustments to its valuation allowance may be recorded, which could materially impact the Company’s financial position and net income in the period of the adjustment.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s income taxes may be subject to fluctuation during the year and in future years as new information is obtained, which may affect the assumptions used to estimate the annual effective tax rate including factors as actual results differing from its estimates of pre-tax earnings in the various jurisdictions in which the Company operates, which could impact the recognition of its deferred tax assets, benefits from stock option exercises, further investments in the Company’s foreign operations, the recognition or de-recognition of tax benefits related to uncertain tax positions and changes in or the interpretation of tax laws in jurisdictions where the Company conducts business.</span></div> <div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents income taxes and the effective tax rates for the periods indicated (in thousands, except percentages):</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 style="width:33.987%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.524%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,669 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">20,665 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,489 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41,430 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income taxes</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">2,148 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">207 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">3,849 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">357 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Effective tax rate</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22.2 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19.7 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.9 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr></table></div> 9669000 20665000 19489000 41430000 2148000 207000 3849000 357000 0.222 0.010 0.197 0.009 30800000 Net Income Per Common Share<div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the computation of basic and diluted net income per common share for the periods indicated (in thousands, except per share data):</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 style="width:41.005%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.115%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.911%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.115%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.911%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.911%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.916%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Numerator:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">7,521 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">20,458 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">15,640 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">41,073 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Denominator:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted-average common shares outstanding used to compute basic net income per share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">64,836 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">63,042 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">64,662 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">62,795 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Effect of dilutive common stock equivalents</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,333 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,592 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,623 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,552 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted-average common shares outstanding used to compute diluted net income per share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">68,169 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">67,634 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">68,285 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">67,347 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income per common share:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></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:400;line-height:100%">Basic net income per common share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">0.32 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">0.24 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">0.65 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted net income per common share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">0.11 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">0.30 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">0.23 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">0.61 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Potentially dilutive shares, weighted average</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,617 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,096 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,196 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">752 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Potentially dilutive shares have been excluded from the computation of diluted net income per common share when their effect is antidilutive. These antidilutive shares were from stock options.</span></div> <div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the computation of basic and diluted net income per common share for the periods indicated (in thousands, except per share data):</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 style="width:41.005%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.115%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.911%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.115%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.911%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.911%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.916%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 2,<br/>2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">July 3,<br/>2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Numerator:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">7,521 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">20,458 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">15,640 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">41,073 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Denominator:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted-average common shares outstanding used to compute basic net income per share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">64,836 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">63,042 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">64,662 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">62,795 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Effect of dilutive common stock equivalents</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,333 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,592 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,623 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,552 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted-average common shares outstanding used to compute diluted net income per share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">68,169 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">67,634 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">68,285 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">67,347 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income per common share:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></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:400;line-height:100%">Basic net income per common share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">0.12 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">0.32 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">0.24 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">0.65 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted net income per common share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%">0.11 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">0.30 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">0.23 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td 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:9pt;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:9pt;font-weight:400;line-height:100%">0.61 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Potentially dilutive shares, weighted average</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,617 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,096 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,196 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">752 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 7521000 20458000 15640000 41073000 64836000 63042000 64662000 62795000 3333000 4592000 3623000 4552000 68169000 67634000 68285000 67347000 0.12 0.32 0.24 0.65 0.11 0.30 0.23 0.61 2617000 1096000 2196000 752000 Subsequent EventIn July 2022, the Company’s Board of Directors authorized a one-year stock repurchase program for up to $100 million of the Company’s common stock. Under the repurchase program, repurchases can be made from time to time using a variety of methods, which may include open market purchases, privately negotiated transactions or otherwise, all in accordance with the rules of the SEC and other applicable legal requirements. The specific timing, price and size of the purchases will depend on prevailing stock prices, general economic and market conditions, and other considerations consistent with the Company’s capital allocation strategy. The repurchase program does not obligate the Company to acquire a particular amount of common stock, and the repurchase program may be suspended or discontinued at any time at the Company’s discretion. P1Y 100000000 EXCEL 62 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( /> ^E0'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 " #W@/I4.&ULS9+! M:L,P#(9?9?B>R'%&"R;-9:6G#08K;.QF;+4UBV-C:R1]^R5>FS*V!]C1TN]/ MGT"-#E+[B,_1!XQD,=V-KNN3U&'#3D1! B1]0J=2.27ZJ7GPT2F:GO$(0>D/ M=400G*_ (2FC2,$,+,)"9&UCM-01%?EXP1N]X,-G[#+,:, .'?:4H"HK8.T\ M,9S'KH$;8(811I>^"V@68J[^BHU3K^2E70.N&'7R:_UPW:_8ZW@0A1\78C57G#)U[*^?Y]=?_C=A)TW]F#_ ML?%5L&W@UUVT7U!+ P04 " #W@/I4F5R<(Q & "<)P $P 'AL+W1H M96UE+W1H96UE,2YX;6SM6EMSVC@4?N^OT'AG]FT+QC:!MK03621A'^_1S80RY8-[9)-NIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X M8-DOV]:[MR_>X%#BVR]*+ M41B1%G\@M MNN01.+5)#3(3/PB=AIAJ4!P"I DQEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7 MH5A)VH3X$$8:XIQSYG/1;/L'I4;1]E6\W*.76!4!EQC?-*HU+,76>)7 \:V< M/!T3$LV4"P9!AI@S M&L%&KQMUAVC2/'K^!?F<-0HACA*FNVB<5@$_9Y>PTG!Z(++9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0' MHYI9";V$5FJ?JH,@H%\;D>/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y M?RY]SZ7ON?0]H=*W-R-]9\'3BUO>1FY;Q/NN,=K7-"XH8U=RSTS0LS0[=R2^JVE+ZU)CA* M]+',<$X>RPP[9SR2';9WH!TU^_9==N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D* MTU*0;\/YZ<5X&N(YV02Y?9A7;>?8T='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-# MAWE[7YAGE<90-!1M;*PD+$:W8+C7\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B M?$R,1>APYY=<7^/1DN/;IF6U;J\I=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*P MOFH]M!5.S_Y9KF4Q9Z;RWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=W MP6#R_7#)1P_E.^=?]%U#KG[VW>/Z;I,[2$R<><41 71% B.5' 86%S+D4.Z2 MD 83 >LX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F M$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[M'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+ M!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'5 M0.4_V]0-:/8--!R1!5XQF;8VH^1."CS<_N\-L,+$CN'MB[\!4$L#!!0 ( M /> ^E0.I?_-Q 4 +X> 8 >&PO=V]R:W-H965T&UL MM9EK;]LV%(;_"N$-PP;$L4CYULXQX*A)ERYMW3B[=,,^,!)M"Y%$CZ+L^-_O M4+:E)*..!:'.AUBW\XJ/#B\OR=%&JL=T*80F3W&4I!>MI=:KMYU.ZB]%S--S MN1()W)E+%7,-IVK125=*\" /BJ,.:0*?'Q_4KW-X@'G@J?!D]$<8Z.5%:]@B@9CS+-)W0"M"&#[ /8J@%:]P=T'N#GHKF0Y MUCNN^7BDY(8H\S2HF8/\V^310!,F)HTSK>!N"'%Z[,FU4*1-TB57(AUU-&B: M.QU_'W^YBV<5\7WR429ZF9*K)!#!R_@.E*4H$#L4Z)*A@A^RZ)PX[(PPAS%+ M>;P:X71H"W]1'+?X/FZNYZ+?Y^_)0ZH55+E_;%]HI]"U*YAV^#9=<5]T[_QLP_M&8B]@NP5L%U,?OY-^!DU4D_OM2MA(\7#JM+_8D-"H MADB] JE7#^E+QI46*MJ2.[&22MOP<"FM,MM'\="HAGC] J]?#V\J5"@#TPH) M] /6Y.%*>#P*G\[(3>+;"-'8AH34*0=2IPXCE$TJJ)?<5-$S,M/0&HE4 MQ)-9HM46?@,K^!'U=U5O*P.[R0(0#T].QR06WB.?$[L><4EV6 P()^5#_8K(%.N M'C=\:R5'99J2ERZ(HK[C?^2>.8-:?2\WB94:EYOQA'R0]DX8#VU*6EH@BIN8 MUZ1% YXJN0X3WYYD7-.;6$%/X8MH:8PH;F=>@TYEJGE$_@I7U7T4KOBF1UWK MT(/'-24M/1+%K4U>62V]["C]$2T-$<3=S'VKP0G).*/OQX298)\[YP[K$=6,,/+Y[_6CW *WT1+XT1QQP-V-PB3!9EMXP<9 M6=F/6*;)[9]6KE.X)5:Z)8;[F4,VR=43C'W)0E0ZPB-"G[[.K-8(#VO*5UHC M5LL:>9E29M:RFZKDB83Q)+,NM!Q1_&I=GO'PJ*:%Q3OM+_L%K^YRH6:F$:YGM0 MT$NP"/&*)_;4XH+5H*>P/ZRT/PQW+X=$+@4D$L/#9:KQ3F&F#&.Y@#CWM MBS%^EB]GD\^9!E.;F!'42OR-#,[^.^S4>KF:V3Y9C_L]UG5ZM#_JK&V,I15B MM1:'/.A1%7B^FR003^1784_CL34BAW:=/OQ9&4[A=ECI=AAN5B:Q2()\F>\Z MXO:4X0+5E?04=L,^R7I:DI<[HN=\11VQRWMCHN;DX.?>YY&;,W]B%R[35G;I5;0;^IW M.L]V",V EV^4&Q9C_\#4$L#!!0 ( M /> ^E1KD^!#6 8 #H: 8 >&PO=V]R:W-H965T&UL MK9G;;MLX$(9?A7"+H@62F >=G(.!U$ZW+=HDJ-/=:T:F8R&2Z)*4D^S3+RF[ MDBU23(I-+QK)'@[_&1Z^(7WZP,6]7#*FP&.1E_)LL%1J=3P5*,#JO&Q7Y$$,8#0N:E8/Q:?W9M1B?\DKE6-EGA6LE!DO@6"+L\$Y M.IX0;!K4%G]G[$'N/ ,3RBWG]^;ER_QL (TBEK-4&1=4_UFS"/Y/-E?+LT$R '.VH%6N?O"'SVP;4&C\I3R7 M]?_@86L+!R"MI.+%MK%64&3EYB]]W"9BIP$*>AK@;0/\T@9DVX#4@6Z4U6%- MJ:+C4\$?@##6VIMYJ'-3M];19*49QID2^MM,MU/CR=7E].)R=C$%^FEV]>W+ M]/Q&OWP\_W9^.;D L\\7%S#I768#P- MTVU_'S?]X9[^OE;Y$8#X &"(L:/YQ-]\RM(C0%#='.TW'^K(F_!Q$SZN_9&^ M\"LA6*D E9(I>>R*9^,@<#LPJ^Q8KFC*S@9Z&4DFUFPP?O<&1?#$%=TK.=N+ ME32Q$I_W\83*)="C!E+SP'Y5V9KF.GCG*&Y<1;4KLQ6LQR$*470Z7.^&X[(B MA#16>SJ#1F?@U?F=BGNFZ&W.@&1I)3*5,:?&C9MPIW<4$Q*-.B(=9B&!$+M5 MAHW*T*OR/$UYI9.G][*4Z4QJN0>@9,HE-+04)!'"24>GPRK$:.26&34R(Z_, M+^5:#S$73RY=D=7C*"$XZ.BRK1+]#[IUQ8VNV*OK6K 5S>: /6H@22;KB-R-$SR=68%^JI3JI9Z"L-7M4[/4>6"*RWU^XRK77A<,@7AY5DP,BF*BOO0,XTF]U\@?9ZAJ.HFUF7&49)SZI'.[Q$7KU3 MMF!Z\.= T4?/^&^]['4?Q2-KT3OMDMUP]G6V8$->EHS_XGS^D.6Y4QRV.T41 MBKLKZ'F[?7$MB9 ?15?U0O=DC]@=!TG1GVI\7+:WG;#[HE&?*CK"'N MBCX9W#H#MF&%\2A$W8%QF(U@U,,&U$(-^:FF)8I*[PT[X^)4::,I#N+$FCX. M,Q2.XAZ5+<*0GV'-%B:8+@XJ=R)M,A$2(BN1MADVH?1(; &&_ 3;Q^QSZ;31 MA C"0;>0<=GI54LBMUK<,@S[&?:-EW>'BHD"K+BH3Z=\8@I2?VTW.F M>'J_Y/F<"?GN3:++V).Z2E9/[@N 5X7H:WG;C[V%*/9#5)^[MMN2-%DX &_A M$<2A9JH :YI7[ 2$!Q!"()=4F&-9I99<9/^R^0DH^>]/,RD-YNHS6Z6DT@]F M%Z'2;'Q?J_P);&]X:I.I/B$7MWH9NR]NMEFVD0R[*\)GLI^/EMC83VRS&/1^ MW9L,!&%?.J+P ?HCU-R4-M$P8$&Y8L:ORQ]=JV (M+%M=,*]A04N"THL+^@ M.)_/,X,]O?F90_UA5H*4KC*]&3JEVC4#TC5Q0JP=T#8(D[*GO<5M=8']U MHOB(DLSYVF>V,7"88!"&'>1[30D,$8]A"%M74'\=<6&@[)WFW7*M@L(?=)$ MUC6$PT[#,\ ])2=I*PWBKS0L>-?+\0^#P-:%J/-@Z+)S'0R'.Q?[YE>5[U3< M9:74Y=I"-X1'L4Z#V/Q0L7E1?%7?]=]RI7A1/RX9U>*-@?Y^P379MR_FYX/F MYZ+Q?U!+ P04 " #W@/I4CLH[^ @# !?"@ & 'AL+W=O(AJ+OA%*F9R; MIO!#B+!HL 1BM3-G/,)23?G"% D''&2@B)J.9;7-")/8\'K9VH1[/99*2F*8 M<"32*,+\UP50MNH;MO&\<$\6H=0+IM=+\ *F(+\D$ZYF9LD2D AB05B,.,S[ MQL ^']J6!F017PFLQ-H8:2LSQA[UY#KH&Y96!!1\J2FP^EG"$"C53$K'SX+4 M*,_4P/7Q,_ME9EZ9F6$!0T:_D4"&?:-KH #F.*7RGJVNH##D:CZ?49%]HU4> MV^X8R$^%9%$!5@HB$N>_^*E(Q!K ;FT!. 7 .130+ #-S&BN++,UPA)[/W8[&M]/Q"*G1].[F>C1X4).+P*94.S6;ZQ9D7^9G.EC,_ MI;2!+.<4.9;CU,"'N^$C\!NH:6=PNPHWE?LR!4Z9 B?C:V[AFTHL056F1&R. M+DF,8Y]@BB9,D*S2O@]F0G)5;S_JK.;W1#U4O:NB(K@=BFX_2K! MZFTA)(X#$B_VJ6[O5;TKHJ*Z4ZKN[%0]9%&D;O4_%'GGH"+?%U41WRW%=X\0 M?W2%=S>2:5M6;8T?$EEQ<%8Z.#O>P6$E?K:AJ>TZ+7M3?$U@R^FTMFJWK;]O M2^MX]4?4>T%_@(>ZR'H3YMK;7[=>GS%?D%@@"G,%M1H=Q<'S;B:?2)9D#<&, M2=5>9,-0=8# =8#:GS,FGR>ZQRA[2N\/4$L#!!0 ( /> ^E0I($(RJ0@ M -4R 8 >&PO=V]R:W-H965T&ULM5MK<]NV$OTK&+5S M)YF)(N+!EZ_MF5AD6G=N[$SDM)]I";;84*1*0';27U^0HD416")QC?O%)JF# M0^XN%C@+@J>/5?U%K#F7Z.NF*,799"WE]F0V$\LUWV3B;;7EI?KEKJHWF52G M]?U,;&N>K=I&FV)&/"^8;;*\G)R?MM<^UN>GU4X6>RH&>0W?,NJ$.U? M]-AAO0E:[H2L-EUC]02;O-S_S[YVCCAJH'C@!J1K0/0&;*0![1K0'[T#ZQJP M'[V#WS5H39_M;6\=EV0R.S^MJT=4-VC%UARTWF];*W_E9=-1%K)6O^:JG3R? M7U\EZ=4B39 Z6ES_[S)Y=Z-.%C?JWX?TZF:!KM^KGSY\_)3^JG"7OZ?H\DJ= MIVB*/B\2].KGUTBLLYH+E)?H9EWM1%:NQ!OT\^#\=";5PS:WG"V[![O8/Q@9 M>3"*/E2E7 N4EBN^ MHG]O:!I?U,.>G@*?+DJ0MB)?QM5[Q%'GF#B$<(\#SS M'VE.V^88,N=E=T__]=T'SJ"';D-;/CK"]XD_\'+'3Z"X[ELRN&4S\)V(;;;D M9Q,UL@E>/_#)^7]^PH'W7\BI+LD2EV2I([*!^]G!_S[6^AQ %ON*3NMS ,QG443A/A<>C VMQOY25T*@;5W=Y1*R- 0L5<^F)<3< MA$5Q@&/-4H LQG&HN2T%8*$?!1BV-#I8&EFSZWK+ZTSFY3WB7Y7L%%R "1:Y M3#"79(E+LM01V2 2\2$2L;7/+;)"R2E]9_82/*N7Z];DE1I5BFJK:@\PWSJJ MXV>@'J-ZO@$PXH#30 MYN6RVL"QIJ;)H6>$VD01S]?3-@%@:@;UF6ZP"6.8TK'T[K4I9M:)Y;*47 V2 MLNWFE5SSNC,JB_OH-*KD$IQML%;[/G6^SU>(\$K39UYI3H$FT. MH(COZU8#5%3W8 J@*!M1M;B7M=BN:_?C;_Z#J0DZPI2A4VKX ="JU)B% :; MB+X)BL=FH5[R8JN.4YV^-?:6WU4U?S)=9E]'YJ'(?(0@,*8A$T6\0+ M4J3T!5('FZK<+\6"$RNQ2M/G3JQ.V1*G;*DKMF%@>J5+[$KW(A/Y$KW*2[2J MBB*K11N?-C"OP<#LZ:*C#N*]Q?K "J+TX3 M["1?/<=T"IENY".$HKKE$(A0W7((-5;0DE[Q$KOB_:-]'<57T^Q!2?U[CLK= MYE997MT]O1O9">48635INE5.:N;8L>P%'>54%3ME2YRRI:[8AI'L53&QJ^(^ M>?>!@[NM*4P#%NDR9P[!J+$2GX!L@;YVFD(P$L9C6=O+86*7P\=9:[/95*5! MA TQ!,'"@.J+$2 ;B70-"+)1-J82>C%,0OO29ZM\FURL^;IYZ?UP$(.OBDJ( MO0ANTE?I)7@VM:KM9R>D2[;$*5OJBFT8JEZQ$[MB_US6/"OROU4/;2*#FKT% M#UE>9+<%GRH5/Q59P;MUT^8:$GRYJW.96+7\^]5 9/?ET@96_-R^0W).BM%D>UW7ZS^W G9+*E:G&#J M[RGSJ.X$8-'92&:(*31$AXD:*>=HK_:I7>UWBXK/R6;PA;6YW#L-/7UH U"& M*R F5>5IBB8%8&.^Z.L!:E];G@/V@\::"[QJ(-?E)H BGN_I\0#.CWU?+[0 ' W\0%]%22$< M5A)O1+#27J+3E^\*H4ZWA3AE2YRRI:[8AL'HJP?ZXKTAU!3Q,6/&TB( "TD0 M&MT/V/81>30PNA^ 8X0>%6E#B_O:@=H7TA?*A_D27D2U-WUVMW-:%3AE2UVQ M#8/05P74OG?%.NDXW;'BE"UQRI:Z8AL&H2]!J+T$L4TZIMA7>D_?9S$'8&IJ MTM\G "C2J$P]XX%[AM'8S@76%QG,>_%\PZQURG/[G%.VQ"E;ZHIM&(R^RF'? MJW*^.]]T#(.7/ QKE=H<0 4TU-_Q "A5W_MZ@0_!B&^L4\V.MNEO>'W??A\A M5.6Z*^5^Z_7AZN$;C'?MEP?:]0M\,L? ]02?I/LO+'KZ_0[JI)/)\T-#E^RG/\# M4$L#!!0 ( /> ^E3(C!U\: @ )]% 8 >&PO=V]R:W-H965T&ULS5QK<]LV%OTK&+73-C-U1#SXRMJ>B45RZFX:IY&S.SN=?F D MV.*$(E62LMM_OR"EB,)#D#B^3O+%(N5[SP7N 4#<(TCGCV7UJ5YPWJ"_EWE1 M7XP63;-Z-1[7LP5?IO7+^]==7E>KIL\*_B["M7KY3*M_KGB>?EX,<*CSV^\S^X73?O&^/)\E=[S M*6\^K-Y5XFZ\0YEG2U[465F@BM]=C%[C5PGK'#J+_V3\L=Z[1FU7/I;EI_;F M>GXQEX^_\&V'W!9O5N9U]Q<];FV=$9JMZZ9<;IU%"Y99 ML7E-_]XF8L\!TP,.9.M 3G6@6P>J.!#_@ /;.C#%@1YR<+<.KAKA4*>]K8/7 MY7Z3K"[34=JDE^=5^8BJUEJ@M1<=79VW2'!6M"-KVE3BOYGP:RXG-V^C^.TT MCI"XFMZ\N8Y>WXJ;Z:UX^2U^>SM%-XFXNYG\^Y>;-U'\?OHCBG__<'W[/W2& M/DPC]-/W+U"]2"M>HZQ MXMR7:?%O/X9?2_=GX\;T=@VY'BV;=C5IF'D0,-N MRR;-#6X3N]ND7"[%@)TVY>R3P3NR>[^>S[-VP*I=F\S/1A4FZRLPMB8]@ MS6;KY3I/&SY'-\V"5TBT3MF9SC$LE%B,/*\T G[@2%EC.TRQCI'>B!CU\5,/)-K,>9% M9KJK%^W:U2TABS*?\ZH6B]Y?ZZSY!_WQOLQS))YICVDU_].4/ 8Y$2#!(DBP M&!(L 0*3V'=W[+O6^=+1?-9N3N9H)A9HL3JG[2/ Q*VKK4L8TY I\\(:;RAI M)X6,(4,F0& 2&]Z.#<_*QG5=K[OE2ZQ8L\VCO&X)0NM"S$/$-[,P$Q9%NR-% M*['8B \Q$I;490Z>IIY/D^(&R$D)&C"'!$B P MB7!_1[C_90@WD>SKO)" ^LI\]?7'G6(2&8&PH\Q":T^'D@($)I$2[$@)K*2\ M%=D5*2^7W)350$L&$\-=>?!/K!&&KH*08#$D6'(L&5+^PUW^0VO^-^7"3"H7 MQ8>8B+N:4F^G6=OT0.[?;1 MV%C@6M&'/F2V:%)51(FC+$(1:- 8%"V!0I/IW),Z\*FE$2_F4&T %"V!0I,9[>4!_%1]X#BE5)\*F/E8%0BP22'P M51G'@!9Z.&">.A5TNS-"/'4J&*P\%C#?/S 5>I4 ?TF9 (/J!*!H$2A:#(J6 M0*')@Z 7"S"<6H#UVMTC1-TGVP,.INZ4F#%HS 0*3::D5PSP-R(9V-LQ>,KJ MH@%EH;HV@HH&H&@)%)I,>Z\;X*\H'&"]X&Y6FI!Y0-0M!@4+3F:$)F&7D+ DU @)YAL#,E5[[NU[ B#;J!YZB?OQ"#1A#Z@7:,P&!W1HFC MCG&#%:..C]F!,=YK!.1+:@0$5", 18M T6)0M 0*31X$O49 X#0"HM?K8O?G MJTJ:/>)@[DX*&H,&3:#09%)ZE8!\(RJ!O1V#)ZVN$H2>MCJ"J@2@: D4FDQ[ MKQ*0KZ@2$,.Q .:JAP*"!/$0J(7A=C MUV..FEQ0H0 4+09%2XXF1*:A%PH(G%"PA5+.:3*LD@*J%8"BQ437"@Q=2*"" MRF=X>[F /ETN(-WNFQA/\!H*?)=H/)UF%MG;.I0 4+0$"DWFJ=GWO81\3]0"/P0Y[5&-)K]RQ0TE U8>(P;#](%4[;6TP8]AU_ -5$NV5 IR MJ,"6.=!#!=0D&'A8_: :-&@,BI9 HJK 8'B&75>5Q4QFK!79W .3H9<,Z)>4#"BH9 "*%H&BQ:!H M"12:/ AZR8#"20;4\)4 QU$ELXD]XF#N3@H:@P9-H-!D4GK)@'XCDH&]'8,G MK2X9>.J6(@(-&8.B)5!H,NV]9$"_HF1 ]3H_T$O5BC7)^)SR= ME[X87]7FUT V-TVYZGZ]XF/9-.6RNUSP5#R)6P/Q_[NR;#[?M#^(L?M-ELO_ M U!+ P04 " #W@/I4F)<)*R\& !'&0 & 'AL+W=O,$PYRFQ6 R+I_=\\F8;626 M%G#/D=CD.>4O%Y"QI[,!'KP^^)8N5U(_&$[&:[J$&>0 MK^W%+!/E?_2TDW4&*-X(R?*=LD*0IT7U29]W@=A34';,"F2G0-H*7H^"NU-P M2T7 M2%W-[KY^N3Q_4#>S!_5Q_9BA$_1]=HG>O_N WJ&T M0 \KMA&T2,1X*!4:;7,8[U:^J%8F/2L'Z(85#?F^P3/6D75+>VZ/O;LU<"K38EF5:BI3$*>F M,%5F/+,9O8U/Q9K&<#90^U0 W\)@\N,R_:\7:]A!$08A;D$U"(5N:$8:U4BC7R!= .AVOE?L0H#:+3JN64KG:=9?^*-C M%OZ1C!T$ CL-&3K63)W',=OH+J$J"](MG6?P4;<%([LYG428_H,]$AR*Z4*DT<]?1EW+ M MMM)3T^\XJ!K=F /I=Q:/0M(IT*Y4@(,^@ W!83O#W965F+%B>2*!Y[\,9Y>_ M3MR0M*G#)$9"C_2@;7@.VXGN]JW'$B/V+J%ASPW:I&(0 M,*X/^+HDXW/%Y1W?;80B=-I4J^E"T0?F[2M3Z' M&F,PZM:/'P5!.U4&,7=$>GH+:;B/V+GO +4:Z1]!ZBZ(!,0;WILX8N0WET1M MV$9!+R1A3XV1A@F)G0EOJ-P!_#WD7?*+L.>WNZ1)S'6<'K8A#442.T76NWHC MRI.A^GO;5B$FF@Q#I\U!)KD@(D[/R8,T/$GL@^UU6E U/OUZ(B)'G6R/9>W0 MZX9ZB9UZ[SF+ 1*!%ISE>B[*U=@A]*B$4B$V*B*@CXT9E2J=:IB$?)VQ%P T MAP(6J43KC!;FA'9Y6-=AV,ZG08Q$?;,):=B:V-GZGKY4D_$>^$638L[U=%!* M&,%W&5H=QCJ;R"!%< \SDH;'B9W'CG;10VK M$SNK7RT6$$O=L> Y+B3QJ.)_;Q=O?:AX,B#_0^@>KJ@^YIO^>!8?R-W+8#7:$3=;3%?=N@(6UB M)^UI'U1$I=K#R[0H=$UI1@>>LL3H09>:?:S.46T?NF*1$SD]+K@-@[MV!K>Z M 'H"LX'?&0\.P/NX74$FLH'+"JE[IUD_K7P/.RW?@ MK><7^'1:O=-OS%0_,=Q0KK(B4 8+9=+Y%*J \NJM?74CV;I\\3UG4K*\O%P! M38!K ?7]@C'Y>J,7J'\[F?P/4$L#!!0 ( /> ^E04 I)<] @ "86 8 M >&PO=V]R:W-H965T&ULI5A=<]LV%OTK&'6FTYV1]14G M;1+;,[*3[J8[G;IQTWW8V0>(A$0D(, H&3UU^^Y%R!%V;*WN_MBBP1P/\\] M]X(7.^>_A$JI*.YK8\/EJ(JQ>3.=AJ)2M0P3URB+E;7SM8QX])MI:+R2)1^J MS70QF[V:UE+;T=4%O[OU5Q>NC49;=>M%:.M:^OVU,FYW.9J/NA%5^O+T7+^YOJ<]O.&W[7:A<%O09ZLG/M" M#Q_*R]&,#%)&%9$D2/S;JAME# F"&5^SS%&OD@X.?W?2?V3?XV'7CZD;: MO9"V%-&]+51Z? MG\*\WL9%9^/UXEF!/[5F(F:+L5C,%HMGY+WH?7[!\EX\(>\7OY%6_\'NC<6- ML\$97H_G4J0LF \],&4*&] M"8TLU.6H(5U^JT97WWXS?S5[^XQ[Y[U[Y\])_]]2^G^*%-V.&VGT_5A\L,5$ M?!?=1L5*>6 Z5D(C:J%=!5UJZ;4*8_'M-S\L%K.W?(9_S]\*YP6.]$M);%[\ MB]C)(+0MG&^<1RI*/(AENT&=B/GKUZ_90%@GQ3MEY$YZ);J],'(B?H/DSE)L M(T4&3*;M1FR,6R'#C7=;7<)D.%@8UY8L,KAU9&F-D9&8$,:'?0 60EI'"G6A M2**,8NU0N )!(?FRP/L@K(I$3V-^!X,Z;-%C7DN'-VZKO(78K=1&KHP"Z=B2 M28%5E2HJ#R)0R7PO[4;QPM<688Q[$GIL3B&M6"F\7RN/B$7'62B\7BD?."9! M/>NK4#89XITL5P-_^V@%\5U.V/7=;>BS!5.D,2+N&Y7CI/\@JQS29MT6">2W M*",;2!-YI,&R;2#_@@I'&2.Q\^_?!@$=F1I),YFJZL;M.N_:J WTH&5(U M;95M%2/,J]6^.T[@)J1LI6E5AMQCUPI0-A2T))=-2[L*5]>MA3;*Q>G*_RV! M/.6(E+56MJ6FXH30$OT[_AY],QF6O:LK.6)+;$LU WY!3.(E[O M*F?,_LSM; [/@54JN056E;* IVJD3RQ! GT)O2JQ$1>/0BQ])O1L\/U]47&= 8FU#CR0=("_>W_3XQTP@BK4IZXAFZO<;B9B&41#-1O) M^=82N\3* 1:^-61PH7S$^(3C+EH7H11R'!/G(53:I@E,,Z\ 5YB0BH(WO2.9,@[Y(X.2 Q/D@0/E M&FTSB=728H"C,"9^.Y7@G%_%C)#LSK!%J#T9)0@$,, QNL(B;% MY,AQ9CT2$&T>=.MX@C$.!C4NU0[KQFA+G0&Z(0-C'#"^-":E, ,:[&LD%WK/ M5+)(17+ &6@!C-SUHV(X4'0,U@7R9E@(UTFVN./Q6S(&W\'+F@K]Q9P'GCGT MA*0&80#]E(F\N$ARG9V,-P+(4215R8KLY%-!RM$@URC_6XITV7)JE"PJ:C ^ MILY(Q_=*>I:+,=KYQ#N]BA0L94O*.ZTP":;*.&EM+?= 1234D9P@0=LRY#KI M\]TB.Z27\$C)6;>QI4X%N:[,W6)8*!ES93("Y/5K\@%E\9'KD[HT3?=B/CO[ M583*M:8D&^A^DW/YN;7I M'3QK-A/U;Y.,I+:]&H3ZC_>^\F>ZAH>'Z,AM,= M<:U#(7-H5FJ#=D.2?Y)0A23.81]GA/.!A8%46IH,PI)#R;6WXMY#M2+.S\[/ M7@(6!B*D/X1BK3T$=,C (J$E3SYW$LDID5?,%F@SD;K*S](#29W:)4UJ"3+C M8; >=)+PQE&)Q*1@QG0K^MTN4CQP=5@+_+-@.!N^R">WOIB&,74'GKB>"*= MA %"%,U6[#_9Z)??/[P[F[\6$%.J6AU@>W:Q#UE48Q "$WIXTV,%M79 U,!JP*'4!1 (=^Q&/:KE+)YSX&.PV27"DD7#'R^U ^ M#A=IHE*3-,@;APFG[$-\.I*A;1H$ ^,0(C=H&&7R'"G%%)GZXQA/95L01B5$ MZCRF4JOD:63H/N.-96L:Z8ELJ]SC.F!Y-%EX37477.L+0C*!&C31H9Q@B@R9 M])0QK'UY1HG<1J9R.]@8*;"K6?^(/G M$I/N0M!NP-D;Q9O^8^ P^58@&KDY7'CDGNC'I#$IW0L>N?ID'M@4_( ALF4T MI_7]4;WPVOA0A#I9R\PYN)KW@1\?9C%NHO0TS%)__>UZP4-[@78@,X:N#3S$ M_OI0*XD6U3U2YE0[H$4])^&K_X-4$L#!!0 ( /> ^E1PCC'_"0, M /<' 8 >&PO=V]R:W-H965T&ULI57;3N,P$/V549!X M8ILTY29H*[6PJ[T(5-&]:+7:!]>9-A:)G;4=0O]^QW$: FHK!"^)+S-GSIFQ MQ\-*Z7N3(EIXS#-I1D%J;7$1AH:GF#/34P5*VEDJG3-+4[T*3:&1);53GH5Q M%)V&.1,R& _KM9D>#U5I,R%QIL&4><[T>HJ9JD9!/]@LW(E5:MU".!X6;(5S MM#^*F:99V*(D(D=IA)*@<3D*)OV+Z;&SKPU^"JQ,9PQ.R4*I>S?YDHR"R!'" M#+EU"(Q^#WB%6>: B,:_!C-H0SK'[GB#_JG63EH6S."5RGZ)Q*:CX#R !)>L MS.R=JCYCH^?$X7&5F?H+E;<=Q 'PTEB5-\[$(!?2_]ECDX>.PWFTPR%N'.*: MMP]4L[QFEHV'6E6@G36AN4$MM?8F' >]\\N#9B. M"WMR*3;98QHA$89GRF "0H*P!B92EBR#.RR4MD#WSUTBZ$>-/J^W*ZVK]K$-_,G<_\DWC"] M$M) ADMRC7IG)P%H_\SXB55%W=H7RM)#40]3>IE1.P/:7RK2T4Q<@/:M'_\' M4$L#!!0 ( /> ^E23=D#U(@8 -\/ 8 >&PO=V]R:W-H965T&ULK5?;;MLX$/V5@5L4":#:DGR3TR1 FK9[P18HFK;[L-@'6AI; M1"11):DXWJ_?&5)VY/BRQ:(O-D5R;F?.#,G+E=+W)D>T\%@6E;GJY=;6%X.! M27,LA>FK&BM:62A="DN?>CDPM4:1.:&R&,1A.!F40E:]ZTLW]TE?7ZK&%K+" M3QI,4Y9"K]]BH597O:BWF?@LE[GEB<'U92V6>(?V:_U)T]=@JR63)59&J@HT M+JYZ-]'%VQ'O=QN^25R9SA@XDKE2]_SQ6W;5"]DA+#"UK$'0WP/>8E&P(G+C M>ZNSMS7)@MWQ1OL'%SO%,A<&;U7QI\QL?M5+>I#A0C2%_:Q6OV(;SYCUI:HP M[A=6?N\X[$':&*O*5I@\*&7E_\5CBT-'(#DF$+<"L?/;&W)>OA-67%]JM0+- MNTD;#URH3IJ'M7(U M79A:I'C5HW(QJ!^P=_WJ130)WYSP>;3U>71*^\_)V_\Q<=P"?,D1;E59BVH- MN3 @JPA::6&1*G1N.S(!E$TE4UG3WHXF MMOBU?]>'I7I 75'7Z0KU=T)+%;6D##5)%44;9.F@64F;DZMVHU4MP.8:D6/D M E :"@9AE6,%=:-30HG@L0KFZ)'!)Z#[790[KFIT="(']\-^'@*UU2I=[X3_ M)84 MT4==:_5(I"$E"R$UD$R#KAUG0+W]>Z-8K"41T2O%H_BQ&8T$0^8-V1Q)X9/6 MHX(G0R42PQJ%=NK30A@C%Y(-$#L;K1FU.::B,40&45%>2I_!+I4.D]RS0SP( M6;@E.HBW*NELIE32Z;9+T5Y1=D:8,-7VQ:G)X M:^LU3;PVE)X^W'&I==4]A[&3%E;:5(1.(?^AQ5P5F:R6L*0K@N=3H8S99H+8 M:#U0@L*NA>,F4;LF2#G$!3O8E$WAF*$H7=HM:\SY;D!!L3KN)+1$!%+I/5LD M4%L8',GLFERRLH"-6WWXO'%PSS%B%$?M"OA@4@*0Y%:U#EP,&1(-Z&SV7'1> MU)@2P"E0A?RX0UT]*ZA/7G=#C+#7UYS88:J[3\>2'V!-%4SA+2,83 MZ3B%DG (9Z-S1Z4C))K 67SNR'2*1A06Q3 9ACZLR6A\[N:FP8RHU %KK^,Y M]#/DAY4LY29!.SV%&UO_T(5]T'ET$7!+][3D'D8,]>^O[>SV]7KC'VU/V_W3 MEVI^R9X5N"#1L#\=]T#[YZ3_L*IV3[BYLO0@=,.<7N"H>0.M+Q3=?]H/-K!] MTU__"U!+ P04 " #W@/I49%C'U%L% "P#0 &0 'AL+W=OIWDP;)$SAR>.9P941<[;3[; L"Q+Z54]C(J MG*O.AD.;%5!R.] 5*)S9:%-RAX]F.[25 9Y[IU(.D]%H/BRY4-'JPH^]-:L+ M73LI%+PUS-9ER74;CJ!UX)[:%HX'AZJ+B6W@/[F/UUN#3L$/)10G* M"JV8@_>,(EEK_9D>?L\OHQ$1 @F9(P2.?_=P U(2 M$-*X:S"C;DER[-^WZ&]\[!C+FENXT?)OD;OB,EI$+(<-KZ5[IW>_01//C/ R M+:V_LEVPG4PCEM76Z;)Q1@:E4.&??VETZ#DL1D\X)(U#XGF'A3S+U]SQU871 M.V;(&M'HQH?JO9&<4+0I[YW!68%^;O6&"\,^<5D#NP5N:P.HN+,70X?@9#+, M&J#K )0\ 31GMUJYPK)?50[YM_Y#)-4Q2UIFU\E)P#]J.6"C)&;)*$E.X$VZ M2"<>;_+]2%\+FTE-P5KVS]7:.H/)\>^QF /D]#@D%0,A&W1,L[!@<$J1JM@JSWCNJQH<1O,CRS= MQ%Q;(.HD$@G3#[>+;?#-#M8.![^"]2)NM,0>'"0U *]PK]HH"KSE)BOV,=L5 M(BMH#4V[V?H*5=7(HR;22"'$2% '*<[8GW /DHW9BV>+9#P^9W^M*=E\=C3^ M/D#LN]24V5VM'<+Y/;?L9:UX_A]V/,A_0:J&B9P2(.,R1&G[85*6B;:G-XKA M!@4"R0D"&H,Q1$,]6%ZH3-9YB*Z-@UA840K)D8W"-E&'&GFTQQC_4JZ+\T30DXZ(3\J_7@OM<^,CA5FM_'EN#&Z/.1%F'.0%4K ML$>A4E&@_OR>XR;B<-@;\A;JD7=]1"KOWA8_54UOF_K#!_Y-/(>*)3AL/Y0M MF%VNZ ?B=RD]QQFAN,K$H62:7I3_0$L^="1"[G6(HZ*^%&2G:XLAV%_.J#5B M[/C.WK/FE=U545N4'[1#8GA*@'W;XS8U>K/GZ)(N4OSW@23GW7;:>\=LUS&B]&B\V@>49 2C%>@XA62;^<7:3R?S=N_A[AX_%39O@_?X<:C M9-%<;[2IM.&.^OC:';-.ETO_NZV5;]WRF-%\.?6_YVR,QYO9K[&-URYQC F8R_J^.=$G22C!Z+2R E1YZ,X29<'IN'Q25&)_P0C M:?]_7-99/$O2YOI]6:?Q;#YKKB>E37P2A.MS-B=UEZ3S>!8G0?$TC1?+"3MV M/!OV3M$8[]9_*^"YATX>X4#=C7:?(U?A%'XP#]\RM]QLL=4S"1MT'0W26<1, M^#X(#TY7_DR^U@Y/^/ZVP$\J,&2 \QN-KY/F@1;H/M)6_P-02P,$% @ M]X#Z5&"OQFS&!P 2Q( !D !X;"]W;W)K&UL MK5C;;N,X$OV5@B<8)(!BZV)=W)T$2-+;V%[L8!J=[.[#8A]HB;:X+8ENDHH[ M\_5[BI(=YSJ#Z7VP+%*LP[J<*I9TMM7FJZVE=/2];3I[/JF=V[R;S6Q9RU;8 MJ=[(#D]6VK3"86C6,[LQ4E1>J&UF<1AFLU:H;G)QYN<^FXLSW;M&=?*S(=NW MK3#W5[+1V_-)--E-?%'KVO'$[.)L(];R1KI_;#X;C&9[E$JULK-*=V3DZGQR M&;V[FO-ZO^"?2F[MP3VQ)4NMO_+@4W4^"5DAV]_:L<[4D9K]2-]5?: M#FOGZ83*WCK=CL+0H%7=\"^^CWXX$"C"5P3B42#V>@\;>2T_""DN'5 M0.,;;ZJ7AG*JXZ#<.(.G"G+NXDHTHBLEW7@&?)!.J,:>S1R@><&L'&&N!ICX M%9B,?M&=JRW]I:MD]5A^!I7V>L4[O:[B-P'_UC=3"N. XC".W\!+]G8F'B_Y M0W9^D8UPLJ(/RI:-MKV1EOY]N;3.@"7_>J6].QZC"C>RNZRIZ\(T3PGA# #X!HE])0$@4O =,1 M%5F0%P7?I,%B/J=+QO1JH>I0I?NE6_4-,G@4/LZR\(2.\S@]&:2C>)2.HP5] MZNYDY[2Y_V%MOX@M\ZC(%ZP%LDB MF.<97>MVT\.(@T51%(3Y@O^B-*,;O7);820M@BQ.< VCA/XN4>MJW52DVHW1 M=Y(%+45!EA>X)FE$'WO3*8?D\6:MU'?G$XFQY[@644RWVHF&LGF0(ZQ9'!1A MP1SHVWY(P$J"BJ420X4&BFBU<>JW8>)X'@=YA" ?PZ9PB'8JGSHENK9B?'G&(U1&E09KQ[AGBFKZV^2)(PIR7 MA!R&:!X4" ,3)\@@= !]R>OA$ 3&*F_RIXY^$::L4?>B(AA<8N$5R765H/E> M2Q3&,/"F<8!%=T\(D#1^E=.0)+$VTH<-9XJK21#RHD)"X6DE[W >;S!7@IF-[ 53@;&L%70^54);TLE%K+X<5K?@J M@8.M>WEJ:[^#N!^0>AAEO#0V71O1!F@.EO_%@I):O70!#?HRB= M%C@=FP8NG-)M??"8U_*Q#2+ (T] #*.+S:91@[+C4UH9W7J]1C_)ZO30+?RD MU 9DW^BN8DX!K?+>LZ)!"KC:Z'Y=[T,9SZ?T:> ASG#5]NUKUO"@T]BFK!56 M5+2\]V*(W,!DX0BE1.D*Y"!G@-!O=N*(<]/0$FKW,]'))G&NXB0 M3SB)GS(5?>N%X6J$5;SQL&]CV?FE7G?#%M0HL52-0LE\AG8LX*'NM!2V!O(= MRA]'P+=W6'\R&/Y,PYIMZXA7MYZ;*W2#I_=2&.JMY..E4:NADH'"2^DQAV*$ MQ;WE,1L!3HI1?1X:KE0\*'OP 2%8&VWM Y'TGM_,'LLD\Z[P=?% S'NAF13-P,>&ZR]M=(0[PH8#O<6=VHRCOQ47.S<\BC M,@^O1'_"*P=T//3*_, KO/!/N*68IH=NT=X?O^^8HB MNAXS8<,YAXW8K<(8),7]N*DS&KOA7,WS'$(A]S;/A7;)\J2PIFA!V_&(&]XCJ MCAGF,]'();S"PE'$POD\IE]1JX7';;B?LI!'G'!-%QG=BN^8@8:^#4Z"9)%" M+$Z]@OZP@B%D&[4 M]\<3.Z+Y_R1X-MZE+HZ[I5RKKF,?(KK#V<1R M^$#PL'SXS(*6!.ZTX.,*HN$T3R=DAD\7P\#IC?]WM11HU'@!GJ^T M=KL!;[#_?G3Q/U!+ P04 " #W@/I4" ""_#H( !W%0 &0 'AL+W=O M2V7W8V@>(A$1L0((#@)+U]WNZ05+4Q9[,[HO$"]!]NOOT!;S>6O?- MYTH%\5B8TM\,\A"J-^.Q3W-52#^RE2KQ9F5=(0-NW7KL*Z=DQIL*,TXFD\6X MD+HVWK8'2I'ISP=5%(MWNOC-W>#*:#]L%GO MV) T&Q+&'14QR@\RR-MK9[?"T6I(HPLVE7<#G"XI*%^"PUN-?>'VSA:%#O!R M\$*6F;BS9=#E6I6I5OYZ'*""%H[31MS[*"YY0MQ"W$- [L7/9::RP_UC0.OP M)2V^]\FS G^MS4A,DJ%()DGRC+Q99^^,YN=*M56&BR@K(Z0\2P@OZ&,-R'9 M4R-K5O.Q#A1-9(XNZD)4MB"A)\Y\@)<5>^Z"R%NK*&I0R6B')= &*[D3# M4/$"$$-N:P]<_N4;\:"+1'RU 5Y9'9K+)NR-GBZ&M/.3\E[HHJK)*%T& M!8X&\6(Z7$Q?OX3JZ7PXGRS$NQ/KAFS_D8>$T7*IC0Z[YUQU[)=W:>IJ+&PW M$]=^0L%S',O*.@XCQ)S$XT+,AE=PT6_'+Z:3X>75?(__#%$UG)"C=?U12P>S MCY@+B%]D*7ZU7@W%G30:/:_4LN&*;,R5:Z<4^1/VR"#48Z4=B2[%!Y6J8HFE M%)\1ZW\^'GL2-J*Q].)J=(GUQG#/ KGIH2Y34V<<+5X>F*IR:3+T?1O3RARS-T]&^#6XBDQ,YBV4])1 M7C:(0@YOLIU>/XHB-@]%S>.8>1C)+VP1#; M?:5X#C"[[\Q"DM*K%?+'<_Q. M8L6ZDM'L6->D>]"&_5G7\K9#.P\A/M0NS9_I AV;?%U51B.MA@UAV0KHI3:* MH:6L5[A /B#Q7M"N9/+V[M[SU?3M2P9BG5[K$E[.E-?K\HE=OWW8;QN*RE#V M6I?1$K(Y;7I+"H"VI'#IDV0EKL( MZ#X*(FM):01$;RIGH9\Q'1:&(\RC@R*(G@X*&40ZL\!86I0P^0V>V^*YSW75 MLKF'*5>&\?2Q'$IE[WM1M2QIXD!TYGI[8$7?AZO:K$!47L3L!+ 52@F&V:RU ML!BTC+]#A' "34TREXGVN:J//4AN(BJ%0YM[*D *'D*@;:3G_RIH[JU M:VLSOY\&J41?"Z[6HT$VIR&[M)'A&I0G>"IN%!:8%S.R=G0T95 MR)U8JM8S&>'OPM 0(C:@89<2#?!]U>[%>N^(-NK1@P@9^8^J^A;')_HG0#CB M^0 8)*4).K3[6E)KM(V38_+72&BX]K?E,4YZ_V=?*PO@UYR.B9TGDP[94[JBJM>VA4 MH6Q$DU4&,ES,6*+QV0K8I^"P+?-A:]M6^/4HR"MG"RXC[$7\QV#[>OD?@*:' M^_H&R#P&DTVZ6,+] -.^[M#$HGB&\*VMODT8?< "@%DJQ3-WQF:JQY1F1^I& M2V^-"L!&LM6C+"I,)%G-H _9'&LAJKI2? ^-.%ZTE$$L<("FYVQW4_;C&IAU M*(JG&CJ>U%TF=:7P- 0<,VJCT3ZG3O(IACB.P:W5!CEK?!SN,.K) $Z1W;$B M4 APE2%_RBS&#L,SQQC]]P;U1U^&T$6+&%CB!.VP9.DV MUQ!R/"G*,S-V4Q;P*KJ!Q"^EX7[(7Q%(&KGJXO7Q9/%JM-@_^.YD/9PE^EQ' MCX)%OJE'T1^PU*TCS-1ZKIQ^AQ-%02Z#(VLN;-Q6P'V:P/C "E_KC 5\"?B+ M.8N]I,JIG+XA;11J,HS&P/P)KEA' GT\S;4^1V(Z6+.)#MU('.9J#XJL8T$C M5L"#U+I1VEH.QU.E*[ &,[B+4^*RQ@)F!SF#@W'4Q6)';HY <*SD/A"[$A]A MCI4215%H5F!C;"\TEF9!N+ M 1<8M%:04K,/FRK'79BY)\%XI-?HW->4<>]C6*' )OKD1ZF.TU#\+M8][;XJ MOHL?T_;+XR?)>Y!1EQ3O%;9.1J\N!\+%SWSQ)MB*/ZTM;0BVX$LZ7BI'"_!^ M96UH;TA!]ZWU]K]02P,$% @ ]X#Z5-%XK!DV"P 6R0 !D !X;"]W M;W)K&ULS5IM<]NX$?XK&-WUZLS(,D7JQ4YLS]AY MN:8SR?GB:_NATP\0"4EH2((!0,GNK^_N J HB;;D]MJ[+Q)% ON^S^Y"O%PK M_=4LA;#LHZX!9^ZL69J;3@&6TJ\K,X MBB9G!9=E[_J2[MWIZTM5VUR6XDXS4Q<%UX^W(E?KJ]ZP%VY\D8NEQ1MGUY<5 M7XA[8?]2W6GX==90R60A2B-5R;287_5NAJ]O1[B>%OQ5BK5I73/49*;45_SQ M,;OJ12B0R$5JD0*'KY5X*_(<"8$8WSS-7L,2-[:O _4/I#OH,N-&O%7YWV1F MEU>]\Q[+Q)S7N?VBUG\27I\QTDM5;NB3K=W:9-IC:6VL*OQFD*"0I?OF#]X. MK0WGT1,;8K\A)KD=(Y+R';?\^E*K-=.X&JCA!:E*NT$X6:)3[JV&IQ+VV>M[ MJ]*O2Y5G0IL_LO??:FD?+\\L4,;G9ZFG7 MVH[JJ)LJ)LQK4_%47/4@(XS0*]&[_N&[X21Z\XS,HT;FT7/4CW;-LU2Z96R3 M_N&[\W@X?1.,$D?#BW#]L4Q%B5G#;M9<9^PNYR5[7U2Y>A3",%YF+%6E@03@ MI35,S9E="O96%14O'_M,PCU3SXS,)-?2;^#SN&;UX-V"_MVZS2:B4ST 80D<@O-&B/LAFT*E,5P@W()\LTKS-9 M+O#*,]U:0O8H5?FMYKF<2Y'M4G _>06.2\%DA(.(,O (7&FU3&W8M'\'#"!Q MI0(9=:"L6C"+#[8^;6S?(?74"L4IT5!060RRHX5EC5%!1);@;@J/5!4% M&,(I)(VI.R4 MKX2&8AP8"PAWF1*3[Y-D,)JP"H,)>0S:RAGY\+]2[?S_H-HH&0S';=4@Y8WH M%'L%:<;B\1^8FL#?4V ,%R(YD%9!80+?'B),.&0((/$UU9H ML!0DI#0N"OG<8L@#-3)&EDED#RGE NA1< U!_+%D'\1,U\C0V1BDIQX-6/G\ M_F^L/GV1U8%$*K2%'C" C)*:\0\T^&3#A>,QX.+R8X+L&=#,-F# ;!!"6S! M9%!_T,IHV[JB+F\IQ'-SQTKHB:'[A7T>Q%7AC$9 =P*M%_66*Y$_.ESS980>WVW%W)*'72I+>)CG!=5'RE&B"GM@)5HA MF7@'+;17M;'Y@'ZZY5G>,B%YIH5_0, M$CTRE,-^6#L7$@$&'#.O\YPTG2FTD<]>; (;N;CK2V!,DD5=$& :;#-0S&TE M,8N?MQ:*?+&W)UB%\KULAQ0)XO1%.<91$W,!)-W"OH?#IME!GL <.T2L3AN0 M:ZC-(-"Z%3,>OX?14^R8/& PMU5#U&JQ4=;!+S1F,SZ#=MU2RH6>;L>3&,>N M2!D(T9S[@F!? EZ0MMP888S;.PN\H4KQCG8-G4-T/,VTC6CB :]=58D'%TTA M0R: 8&I1RG_!GM"^'^C+!NR#7WA,CW-(GE&K']V69_"B7C$:)$<5:.Q587-5 M:^Q9VUCDZN_NU((1P8]JF::#\? _:P:CO9[\-Y!]J]7HF@CJLA4K1_D6.IB- M4UJ)L#/4$=K,&0)X04L\RM4$#M(0S=0VB= 2PS6%^RJZ?@&IQH,X=(AA3O<3 MR5VMTR6.5CBF&$KO4&.P3F+O!EB_AI$O['-R5V%?1?M.R0(XA.VGU1^_O[^Z:7BB4ADZ2,%=-V>?VA'PTD\\_LS8?!VAXAT']5FNS&6U% M"ZK%&.3+!<0L=&>]P@$&8$F &@3Y&IK.@XIN"/&W6<%'$_BJ*G MDLYWI0*J SR;"^TK4VA%=V^VCUB<82%I,8(@_T\I__=WS+4JV$V]J&%F@HF+ MFAUGO&::&8X8U<>L=6MK9=A.ZS"34& ,^E"T?)IO*1<,D>T*#0EWOND/(3+< MH$&C'0=?%5Q_A8Q=\;QN6N0MRKY/[1[S"+#P?,5WJB3KD_;YG9^LD+WH4&6W M^$!3LY2@&0TA"P5,\.P(E$MM4V&6-QTJU81&/^BR'4+J&Q2?$\L^W@9E*D M/[BP3]K7Y1E$ITAT24M$0EE%#Y9(QTT'O)6LA*MN(/8^3W/EQI< N0<-[\$R MYP9!DJ8*4W=(AWE_,GNU.=,O/>DF M3Y?[ @>J<.A 75W F"8CFC\A-D<3W;6V@ ,O'RYO@2]D\J2K4+O#V,":0'>_ M8$&\IH3N."7MU.LC*N#><'JP GJIV_^:[7CHM''0GCD;?W4,T714<*B:[OU] MLE--D8@;1W^M2CII'4SL5-*6 U]03/>&PJ[J>A&J*TU/I[Z%#6!K#NMV0AFC:@,F,Z]> SUT0OOM '8/WMBZ$6Q)WTE_[_=;96ADUFX( M>LWNM,(:9]CW;#2\@,_A^00^IQ<)?":C%B';Q;0>>T(MD2P<3Q,V+1_/AW#G604H^@1 M4)C"Q01HH/QQU!_!ZA!]65?3ZR$Q9JPJZ7 H."8D+X/E< M*1M^((/F?:+K?P-02P,$% @ ]X#Z5']:9M?I!P >!, !D !X;"]W M;W)K&ULG5C;DN.V$?T5E+S9V%4EOYJ] M$)8]E45EKB9[:^OSVU%R,U6UJ/ D5[KD%K=Z-S.U%CQS0F4QB\-P.2NY MK";7EV[M3E]?JL86LA)WFIFF++D^?A"%.EQ-HDFW<"]W>TL+L^O+FN_$@[!? MZCN-NUFO)9.EJ(Q4%=,BOYK<1.W8U"0F0 M*$1J20/'WZ.X%45!B@#C?ZW.27\D"8ZO.^T_.MMARY8;<:N*?\O,[J\FZPG+ M1,Z;PMZKP]]$:\^"]*6J,.Z7'?S>9#5A:6.L*EMA("AEY?_Y4^N'D< Z?$4@ M;@5BA]L?Y%!^Y)9?7VIU8)IV0QM=.%.=-,#)BH+R8#6>2LC9ZWOQ**I&L%RK MDMVJRFKXR0"$W;-;=[S0YG)F<10)S-)6[0>O-GY%[9)]AJZ]89^J3&2G\C- M[''&'^[TS?^,W:=FL__<;(U;_^]+#O#Z MDY?U4RV=FYJGXFJ"8C%"/XK)]?OOHF5X\0;ZI$>?O*7]_X_:FVI?!OV'SF*_ M[ 4>EC6OCB@*C4HSJ-F19'HJF?:2M9:@ UD<_3X+1;DJ0!:RVC%>92SE5NR4 MEK]"I;2#6F[:C>:E19.)4PBDVO!",)6##5)AC-,/ M4TMIH-QXX8 9E=L#UX+5!;=$?*R0*8A(>(&T4$UV1ER0#5M-LS6IEC5QC;EP M^WI0<"3D7T'5>0(:ZEII.QQ_]NPT8EDK*EZE(F#B"9>H+H:]FE?V>(HA@&$J MAY&XX04S+8B (0RRZIQ;\@KTD[5&, R/QP#@1:B!," M80_RZ70!?'!D+1WXF[F[B=YX\J62!/;! K-A[UBTG@>;>4Q7\W6P6*]P-4\V MP6(YQU6\6N%IPFZ 4:9(-O'$ODP?IBP*@W6X9E$2)(L5BS;!"*K'M(A8&GEQH8)P5NFPK8E('K\,IHS"F(_1G*93 M)UAR$'S1D(,MU A,E1EI:MD!2>#N\M]/LRYZ+>J_FH%*ID.>_R0Y;)!@Q8^B MS;XNK:'+2$/^;8T;Z.Y;*NJ<>!+XVP;J*GO.[K3*&L)$"=I#14F"3>8+NHA! M*TOVZ1E3)\%FM<3O>A.C1(-%%(%O@F2U9C^I:G=&"?B:^B5H9PY.B^:K%Q1' M:_#,DO[6Q$I)L HW!".,EL"SP-.8: $LEVP2%R\T)4SS1G2IF7WKKBZ":(0^ M5(Z>'2:PW3G(3@& M')SY?+K3[-=C?NX$AO+B_^Z=QE]'% M#Q!SHQCYJJ^L#H]#3I19*>MH%1( MM\SM&#F+#]T!7LH;V^C.;L.VC06'M&<](O!$R+[<0!.^^P]=PF4.4L,?U0X; M?FC /I3@3E!6>(&6F?TJS@!O&Z\%/BT;FB_+4EI**O@?#F0'$GL7+>/IND^ MY\SHF\LK)-C;/39[GK2D2*.1!<+FAK?S5A\Z'F:*$OHF3R1R.JJH$H_/0>9\W'CKU6=<,W"%- MU6JG ;*M+(CW.3HVU?6OU:A_D5XL]!TV@#<,@0:9%,,0='DV7+Q\>$/*:M_,.!.-3P7 Z[Q?^**?..\>=6OF+JXV#8P F<:C4 M5 &8M0W1F<\0.J<;O%RF#=F5.0!"4EKV[(6\Q,N.U?VTWK\0WTOSE?VLAOFM MG;]:/?"9\"D1#8/#MYQM%8X>WH!.[,?-VRT%&\;NF+*7WJ5GHZ\A +ESWWRH MKQ81I_YW'WUA5NV\K6V7A M$7>Y%QR53AOP/%?*=C=T0/^Q[?HW4$L#!!0 ( /> ^E05W'@FY08 "P1 M 9 >&PO=V]R:W-H965TNU%Z)I&^L,+9=S^>K*<] MO]'87:6%^ M<]7*K7JKXF_M:X^G^5%+I1ME@W96>%5?3YXOG[U8TWD^\+M6^W#R6U D&^<^ MT,,OU?5D00XIH\I(&B2^;M5+90PI@AL?L\[)T20)GO[NM?_$L2.6C0SJI3-_ MZ"KNKB<7$U&I6G8FOG'[GU6.YRGI*YT)_"GVZ>QJ-1%E%Z)KLC \:+1-W_(N MY^%$X&+QB$"1!0KV.QEB+W^04=Y<>;<7GDY#&_W@4%D:SFE+H+R-'KL::Y77KB+!2I?8 MJ<2WVF+'=0'B82K47:G:2.=*6$ ]A^^>P0>OU( CXJV^&RX \H, XOR]FCYX MSD%M%%Q10\>_%)?3L[-+?!<+_'B*'\O+Z?J"5M;+Z7JUZ*7[\\5TN;[@\^?X M7$TOUG1V]?1<_/@@>%$4LT)\)9:S!7U>SL[QM9A=XI-R^](UK;2'K[^X*);G MWW^2TCYMD1/0I'C5(%YB.*>^#Q0+2[%7"+)247D4.TYW@="35J@0=<.)?PB3 MD-5[M KLD=T*1/?0('1438 +,@I7EIWW.%!UGND W\"%-BO*Z,Y. _LFC%D: M!D;N!P#Z>("5A@Z/A'C7L&"(,G;1^8.H5:6\-*)TOG6L_&C%U:)8?@6Z(F2O MH:[JL.O$;[.WLZ,<<5GZ!C!O8PVJRV5CQA_E!L, 6PC MG:SWT](B0>OL$V2I0UZI(A]UB1*M[E392^HWTI9*=#9JDQW1OA(?.^08 M:@E:F!T$(G8P89%VC%/%-*5H9 2F;\[B1!!!72O$U9 2A(-,(%)+^A.1 *U M$NL4_ !VI#A# N9C! 112N\/2-1>^BJ#=,^AV6AYRXTV.AZ(A;C\&/TW_!GQ M5^@@$IK(!A/R7FX+,C)$H2,X-?HD\A=I(D&>&W2FU5XC:9:S)]O6 !C://4Z MEVS"M]N\)W;!!"7S1,+H1L=$Q9EX)2W:GJ >]$E3H";2QKDEQ M!5U1RZ,+=-49B'@8\4&:0)$,/#,Z\4,345OO"$=JXV.LF"+LK4O#_$ZT1EI+ M#W23B6JK\R!W"- CH1'%!IW@%BI$OEF&J4Q^*F0R)4T1&V*9\^Y2E(-WXN@A#(R1L)&'OJ$>#31 M:4Y@Z3I34;ZAEB>(AEOE@&?''E)K"U4XAFH).NE'XJA!Y<+/KO8XI4CO'1QO M38.;1W;SI"?4IJ,$L[F3\7_ \&3S]X2FI2"X%^^QG%[Y2 PMP6U2S^_C)CLR M337V,>"UKDU#KZ/V!\,] NF M03RR,"ZIVB-Q+GDP2@G^ S1@C"ZQQ=IPL7V M"2E$ %041\QO,2AP117O$7? S34YB,T4Q"F/TH@@CIT">X(F(8]^UW>Y1RIG M.G;G@'(6PT#W)8;8"?NT10/*[,M./Z#-@WO%]*%#U'*??.+BX ;DE>'K(X#I M;-\]N9-D+J;^4:+M;5/1Y(L$6K/R2' :)+U>(_=\:)C9_8[NKW'8#^FR@ZE( M5UGTCMG8:]+\Y VV47[+[^F!,+ QO

5X]_!3Q/;\#WQ]/_"*^DWVJX8E0- MT<7L_.E$^/1NGAZB:_E]>.,BWJ[YYTY)M&PZ@/W:N=@_D('C'R0W_P!02P,$ M% @ ]X#Z5/H1*IFD P L0@ !D !X;"]W;W)K&ULI59M;]LV$/XK!ZT8-D"S)$J6'<\VD+=B'= @:+;UP[ /M'2VB$BD M2E)Q^N]W)&4W[I*@V[Z8/)+/P^>.=SHO]TK?FP;1PF/72K.*&FO[19*8JL&. MFXGJ4=+.5NF.6S+U+C&]1EY[4-_-D#LZ3C5+WSGA7KZ+4"<(6*^L8. T/>(EMZXA(QJ>1,SI>Z8!/ MYP?VM]YW\F7##5ZJ]J.H;;.*YA'4N.5#:S^H_2\X^C-U?)5JC?^%?3B;IQ%4 M@[&J&\&DH!,RC/QQC,,3P/PE !L!S.L.%WF55]SR]5*K/6AWFMCH0;E'#I>HZBM5=PS4N$TL7N&-)-9)=!#+V ED) M[Y6TC8%K66-]BD](V%$=.ZB[8*\2_CJT$TA9#"QE[!6^_.AM[OGR%_BNN99" M[HSWU3L)?YYOC-64''\]YV^@*YZG@3/%C'O_#OADZU-PJO8";+UK?P"R> MLHQ&EL;%=$Z3;!J714J3(HO360Y7*!457H!^]%6.]4_\@=AV>.*H ?KJ&4N^ MN#@.AE19-88.QYA]%:?@9EG$\[R$,H_3@CFK+&E@\>QL"M?;+7W 7-!]J.D3 M=KS3JNH>\-,@'GB+DMXKC_,\AR*>GC&:E\S/I^S_J'[A?4?=\S@KSZ" M.(O-I\[*B]G3('^=$ NX>"X6)SGS!M))QOR0AX$5?BBG?Q6<"G 9\' M? :WRE*X!&\I,XY!#;&(83_&"@ZQ8G&9S8!RX:RD>4:_,PKI*QS0$!0VB-(E M=#NX[-QJU3U72-]2/OL&796@T( A&82AVK/B<._$5;#!D[6#ECVZ G2WAW11 MO;O:3)[[/B5/V@@5R\XW2T-B!FE#1SFN'OOQ>6A#7XZ'9OZ>ZYV0!EK<$C2= MS*81Z- @@V%5[YO21EEJ<7[:T'\*U.X [6\5!7@TW 7'?RGKOP%02P,$% M @ ]X#Z5-5&ULE57;;MM&$/V5 1/D214IVG$<1Q)@.RZ: &,N&D?BCZLR!&Y\%[HW:44 M]>M[=BDQ*J(8Z0NYEYDS<^:V\ZUUC[YE#O15*^,761M"=Y7GOFI9"S^U'1O< MK*W3(F#KFMQWCD6=E+3*RZ*XR+60)EO.T]F]6\YM'Y0T?._(]UH+M[MA9;>+ M;)8=#C[+I@WQ(%_..]'P X&D-.5XOLNO9U M^J,U128K:Q_CYD.]R(KH$"NN0D00^&WXEI6*0'#C:8^9C2:CXO'Z@/YKX@XN M*^'YUJH_91W:17:94@!KO\FJ/<#,@E#] N*!/UH36TYVIN?ZO?@YO M1I?*@TLWY;. 'WLUI:*<4%F4Y3-X9R/%LX1W]I,4/?UUO?+!H2#^/D5W0#L_ MC1:;Y,IWHN)%AB[P[#:<+5^]F%T4[Y[Q]7ST]?PY])]*Q_]#^& ( =VE8$XH MM$RW5G?"[%Z]N"QG;]YYNK'"U637]%XZ](IUGD0?6NOD/UR3(&OXEQT+='*P MU2,ZL>M=U:(3J'.V<4(39@/U'05++V=%,01#2Z5BVP'WE-'*:HW;!#FE+R@= ME^2^1Y\ & #]$0 &0 'AL+W=O-PS#/M#2M<56(E62BN/]^IU+2K+2.D:[ M85\2623OX]QS']3EQMA/+B/RXK[(M;OJ9=Z7Y\.A2S(JI!N8DC165L86TN.G M70]=:4FFX5"1#R>CT=FPD$KWII?AW8V=7IK*YTK3C16N*@IIM]>4F\U5;]QK M7MRJ=>;YQ7!Z6S)#&5]DJOQ8W)5:+(B:?-T[/+H8<^/C5,:MG74?;D$=EG MXJW1/G/BE4XI?7A^"#M;8R>-L=>3@P+?5/E C"9],1E-)@?D';?.'P=YQX_( MV^?PG[.E\Q9D^6N?PU'>R7YYG$#GKI0)7?60(8[L'?6F3WX8GXTN#EA[TEI[ M37*Z6E3I3,A8,,0J)ZUQ=*)SG.08"O)0+@H&XN;X],AL-@:Y:.I4J:1&&OLCD'8DED1: LI06&Y0. FT*O80\\5E08NES MI6PT@!7QNP^#Q4 L**FL\AQ55OCJ/LFD7I.8FZ)0+I25IT]^>#&9C"X6K^;A M:7SQ3*#2094GJPK(+HUE@@S$S(F2;*$\.U\!$@M-QD%_E;/!"5F/(HCCQFOC MH11R#(RQ':B4CG64=?M,>@''A.97P*'Q)!7+;?1@39IL6(+C5+)FN>-L:8&V M*G-.T]J/GV:SF]81)#40[,2/#8H.#!"' )0IE69C@%LA-=0_P/.08]45I1=,M9!G$N8U!IG(I%';K1H*P,@$ &BK%#K/(\AK F- IWSJ2)1$!Z:R=#5W = MGE&N4& #MQ'&'=>Q;1#R8]X".>\FPG64+1:AB9L=?:0F[!"L^L8SE.%L2 Q#QI MXUTA.JR7^6&LJ0>SRSI+Q?BI.C MDZ-3T"*'".AHH5@I"P$-,[#(;#'1\X5$<%+$-84ZL5 M!L_(M"(VP2AW1ZKO:*Q11[<_AQ8#\!-?!9-CQB:!^JF"(6GC)Q$J#M;>@YQ=#I34:STGMTCL4BC]0,6M! M^R:9_VI')\L 2AIJD^3]H>YHW!DZ[=35IUQ3+[^)JUYL4#NQ;S='@R&=-!A\ M-Q*Q'';=TAWIBCBR!GH>&\0/ M"WE SC 4<(F(@D/JHBJ$FXB+%2O>!LDZ'OQP@U9PLQTB5ABDS28,8,B]!*F^ M-E;]S4SP.[&(9]SHSD48$\\NQ&+K4&1VD]T#$V(7SXDK*X^@+E8BU%Q,T!#N MXN&^<&;E-QR3,I>>"ZW ?8J+6SR YE&E1[$5M5MYX =58M6\"/M:HW!W4@D] M8E6#!"243**=^J.OM/&'"="")[2^H'L?686]& +1"Q[8T&6+$F%R#&WM!VB[O)=2POPX2'49^WC[;Q]VW[;F,4K_6Y[_#"";AMF M@9Q6.#H:/$=5M/%C0_SA31DN^$OC 4MXS##YD.4-6.<;2?.#%;1??*;_ %!+ M P04 " #W@/I4^XO*8^@# " "0 &0 'AL+W=ODXF:_OD/*=IV-(^R+Q-N<.3,\H]%D*]6C7B,:^%%7C9YZ:V,VX]%(EVNL MN3Z7&VQH9RE5S0U-U6JD-PKYPAG5U8@%03JJN6B\V<2MW:C91+:F$@W>*-!M M77/U?(F5W$Z]T-LOW(K5VMB%T6RRX2N\0_.PN5$T&QU0%J+&1@O9@,+EU+L( MQY>)/>\.?!.XU4=CL)',I7RTDS\64R^PA+#"TE@$3J\GO,*JLD!$X_L.TSNX MM(;'XSWZ9Q<[Q3+G&J]D]9=8F/74RSU8X)*WE;F5V]]Q%X\C6,I*NR=LN[,) M\Z!LM9'USI@8U*+IWOS'+@]'!GGPA@';&3#'NW/D6%YSPV<3);>@[&E"LP,7 MJK,FBB=>86,T\&8!MZB-$J7!1;<_N.?S M"O5P,C+DV)J/RIV3R\X)>\-)"E]E8]8:/C4+7+RT'Q'A VNV9WW)>@&_M-4Y M!,P'%C#6@Q<=LA YO*@G"R[F5XGX^V).62#M_',J[ XU/HUJZVFL-[S$J4<% MHU$]H3=[_RY,@X\]G.,#Y[@/?7;7E1'()91[^FZ O^B?XMR+>IIS)Y+_@CN/ M1.$1C14&:"Q;)8Q #:6DJM56.<3.K!&6LJ+R%\T*!J*A%=EJLM;#,=!5/@/= MY#666,]1013N]'@JH'&W=08L]L,PLH/4CV,&5[*N496"5[#A&X*A VF8 @O] M)&=6?_B\(PO+EER3SRS/Z!FQ@*S51BIND IZ;HXC>?\N9R'["$5>P+TT!/]F MLB$A7^227E$4P==3F1G#P_G=.:SD$ZJ&OFTO?!6%GP>#G(7N%0U_0IGQ^ ><'+(?$3UC6$V!6%!#Y248UVC:B%!OR=[2=%C'ER-+J MHC]]WV$6^5%:0)@0QX#9:Z'\YWEB1T%,^4B@1_+)0?))K^2O7W+W@3]Q45DR M'Z@]?=!T#Z<4WPMZ6O'WI%E>2V7$OR3B4FKCKGS)A0*Z[A:ML$_G@FN[MY>U M_4#!%A7:]:X*]*L:N#AXNK*>?E-2:WAHJ,E6;O5/FA/R9^O]F_/>HZ(S"(/0 M9Z37,QB$?IR'0QKMM/5*5'GF9RR!05H,[3A-TO^EK##,8)"332>RM^65!Q$, MXJ&3V1L"2V' ADYH?1*CL"B&- JZL-(X&;JUS"_RT^(:'75%"GKE>K_]-K6- MZ1KD8?7P>W'1==5?Q[M_$ZKEE6@T5+@DT^ \(TFIKM]W$R,WKL?.I:&.[89K M^D5"90_0_E)*LY]8!X>?KME/4$L#!!0 ( /> ^E2JB8?W;@, #L( 9 M >&PO=V]R:W-H965T5G3##CCTKMV'81\4AXF%LR5/DI/FWX^2'3>]Y=+M@R51(A\]9"@R MLYU4S[I$-/"MKH2>>Z4QS640Z*+$FNF1;%#0R5JJFAD2U2;0C4*VRNH/OC+EW,L\6.&: MM97Y+'>?L/2XL#_*HU%TRLG.+#XRKN KJUJ$>V2Z M5:B!B17<<5U4LI/?/;%EA?K]+#!TH[4+BA[]ID./7T&?PKT4IM3PBUCAZD?[ M@)@.=.,#W9OX+.!O;36",/8A#N/X#-YX<'_L\,8_=__8XS^OE]HHRIB_3OG< M04Y.0]I7=*D;5N#B46W16[Q]$TW#JS.$)P/AR3GTCO#6$O:!:8U&0]W] M;BMPSZ1HE>)B8U.5ZU/LS^*?9O]4(JQE10_8(AN7#>#NIJI@2C!T?BOKAHG] MVS=9'*57=,(%$P5GU;]H,@/KP0M+FKVD[=Z9\\DSJF8K?NB5K MN""3-$MI=H[$5\/.E]'C"#9RBTI033+D/E'FQ$I#GOM9F T6O4@!J5&Y"#2L M(?*'\RSUI\GT,+W$I4HHBOTQ_(#KAW'6C[=2-5(Q@U2!EN:4=IKG[KMO!2]X M0RQ.*$WSB?LN(*)'E>0)K?+,CU(; :KK?IK&?3SOL,!Z26Z,(Q?4Z/\%=1R' M+X)J=\X$=1KZ<9I_9]J)KP;5\A^3)X?YOX?AW7B)].D'\^&-G9) MT(T7,+71S6V\[AK" M=_6NK=XSM>%"0X5K,@U':>*!ZEI5)QC9N/:PE(::C5N6U-U1604Z7TMI#H*] M8/B_L/@'4$L#!!0 ( /> ^E2G1!I3P@4 #8/ 9 >&PO=V]R:W-H M965T+]^=Y2M)(TM=,@72:1X#X\/[[DCS];:?+5+*1T\UE5C MST=+YU:GX[&=+64M['N]D@W^F6M3"X=-LQC;E9&B]$9U->9AF(YKH9K1Y,SW MW9C)F6Y=I1IY8\"V=2W,YE)6>GT^8J-=QZU:+!UUC"=G*[&0=]+]L;HQV!KW M**6J96.5;L#(^?GH@IU>%C3>#_A3R;5]]@VTDJG67ZGQJ3P?A>20K.3,$8+ MUX.\DE5%0.C&MRWFJ)^2#)]_[]"O_=IQ+5-AY96N_E*E6YZ/\A&4E"KIGN+QRT/SPSR\( !WQIP[WW(V=C@'C1S/MGB7'1X_@)?"9]VXI85?FE*6+^W'Z%OO(-\Y>,D' M 7]KJ_<0\@!XR/D 7M0O./)XT0\M^%96PLD2/BH[J[1MC;3P]\74.H/A\L^^ MY7?H\7YTDM"I78F9/!^A1JPT#W(T>?<32\,/ [['O>_Q$/KDKE,.Z#E&\TRW MC;,HC)E4#[1= 332[7-Y$'2_RQ<'X&&F48^6*$,GW%+"7%8#B"/ VR/*>/)"CB&"X(TV\3IATH=3MU M\[9Z6O1QFH8G<)SQY*2S9GQKS5D! TPG/=/)CS*MF@?9.&TV^Z@=1-E/[:<= MWINYO!5K3 5.&B50LT>09C$^613"M6H4YH02%EJ7%HHL2),0\CS(\'4$11Y$ MG,9B3YZ'0X2E/6'ICQ*V,E@RC-L ^@[R6ZM6F,3=P>@K%DE_-HBQ(,P*>K$DA3L]=VMA)!1!RB-\ABR" MWR66CJ6N2E U$O0@R= ""](LQV>4,+AN3:,YD=Q#N8_K]'?C.MI!L\S#W%IMG6 MWJELY%PYRF \#")&B8E' 4L3;Z,;DEB?A6$I4433#1XC5ZM*2>,Y9R%@CF,, MKEIC:/R*XAXG0E]1BT8TVVQAI#,:9\,MRK(,C4*2]&LC(W&^5H)=DI)78M/I M-4'E98#ZBQA@%II+2Z=3U"1A$T-X&"1&YE+28!(WA@#6I&OCSX?8QT,&45 4 M&4Y+QSND1Y0/5.PL8+$SMZ(T8M$^YQR?29'"O7C$ M'O30U](HB(H$S7CB'2S;F:,U8VJQ0/G"9Y(HW4&BQ]B1(=4LB#%DNZA&E]$\ M#J(LPKW(T(F+("W?J\67'3@W^ M'06OVKL3J7 HA85J&MIHJJ-8V'5)Y3I(,E^V?17W[2+V;][E?]/2 8".2JM7 MQ#Y?US&6F1,J*&$$#*.?(P")#"O>09W,*J%J7'B24N' :,0GUCF6^7<28OO9 M F13OG ]1Y<[5PL4Y_?M?9$T?G:706TL_(V-L@\>_+IK3=_;7PHONKO0T_#N M1OE9&*33HFCF:!J^S_"T9KI;6M=P>N5O1E/M4(C^^[&&ULG57?;]LV$/Y7#EHQ)( :R;*L>9EMP$E7;$.#&4FW M/0Q[H*6S390B-9*JF_]^=Y2LIHFCA[W81^KNN_ON%Q='8S^Y Z*'+[72;AD= MO&^ND\25!ZR%NS(-:OJR,[86GHYVG[C&HJB"4:V2+$V+I!921ZM%N-O8U<*T M7DF-&PNNK6MA'V]0F>,RFD2GBWNY/WB^2%:+1NSQ ?T?S<;2*1E0*EFC=M)H ML+A;1NO)]084[T2I_;XZ_8,\G!%@:Y<(O M'#O=(H^@;)TW=6],$=12=__B2Y^')P;S]!6#K#?(0MR=HQ#E.^'%:F'-$2QK M$QH+@6JPIN"DYJ(\>$M?)=GYU:VI:^DIR]Z!T!7<&NVEWJ,N)3JX^"BV"MWE M(O'DBRV2LL>]Z7"S5W +N".D@X.?=875M_8)Q3@$FIT"O-.!^#3@3?\7\7?2E:$*K5B&8'>Q:S\%2A\BZK6E*R;"!CNC:%FPAG!\1[5_A+[T<"$U*9G64=7^0%Q0$17(!Y0X!9,>7#%/*XF*8$^( M\?.D@I)B*Y7TC^>J/ IYOLKK%X6(0ZE>]3M6U>E;4GQ9,P3^):VG^4V MAL;8L, )YD7KO(%I/*=J_O[\PR2-9_-\/-7)D[59H]V'QX';L=6^VZ##[?#^ MK+NU^U6]>[SNA-U+[Z X5G6RU:;FCK=DEMC/(ZP!J9<+2=)JT7*AHM0BV M6[-:Z-Y)H?#6@.W;EIO#-4J]7T99]&RX$[O&>4.R6G1\AVMTOW6WAG;)D:46 M+2HKM *#VV5TE_ULLH]8)08N4\ Z?I$6]0 M2D]$,CZ/G-'Q2@]\N7YF_RG$3K%LN,4;+?\0M6N6T2R"&K>\E^Y.[W_!,9Z) MYZNTM&&$_>B;1E#UUNEV!)."5JAAYD_C._P7 !L!+.@>+@HJWW''5PNC]V"\ M-['Y10@UH$F<4/ZCK)VA4T$XMUH[73TT6M9H[/?P_G,OW '>W/.-1/MVD3BZ MPCLFU4AW/="QK]!-X:-6KK'P7M58O\8G).VHCSWKNV9G"3_T\@)2%@-+&3O# MEQ_CS0-?_G_B_:0=PI]7&^L,96(O3K+YRYK;C%2XC*@V+YA&CU7?? M9-/TQS.:BZ/FXAS[ZIVPE=2V-PAZ"[;A!G_PF5A#I5NJ3LN'!#>&JQU2Q3@+ MF\,KQXX?O!WXGIOZ5'QG%9R.[[Y!V&I)92W4#IQ/F;&VQ=]HP?J7/J43G_P: MX8U0X!K=6ZYJ^W8.]XU!?)4_L!9/KPV4#@>@; AS'G^QO]'6^4:0IR6L.94 D#8J M-_. S@?)XAE!LKAD.4SB/$_ISJQ,X8[>A)NJ">XUW2UU%]Z;Q6QR28!I4< T M3M." (R5\#,J-%P&?UY370N?>[Y!04&0E("3+(=$;6C2[T $M?9%>N:%-'*W')GLU])9_W8<._9&; MG5 6)&X)FEZ4DPC,T/6&C=-=Z#0;[:AOA65#/PHTWH'.MYH*;=SX"XZ_GM4_ M4$L#!!0 ( /> ^E16;8P\V0, )D( 9 >&PO=V]R:W-H965T]8VX&2S:(L&"')I'XH^T-)8 M)E8279**D[_OD+*="QP#?9&&ESESACRCT72K] ^S1K3PU+6]F05K:S?GDXFI MUM@)(*5:HU_PG;< MF_( JL%8U>VCM!:GF&G5C&0>P'T8F5 MAUXZLG>6.!OX&:(B9F7,G147+"URLN*D9&D6D\7SG%836!!'60E#MP /9W=G M$(6L" N($I:D.40ER_(2>,J*+(2K0=-GE<*7:0(E*Q+W3#EMBQE/2[B6==TB M7 ECX9/H-E]AL7+HD+"P+"%E4!&5')%)\N3$K(HA#1, M(&))'#F>5#-AXK/("N(2NBR*C)6EM^*0Y<3BA"33@R33DY+\ABO4F@YPIP'F MKEUH+?H&Z6MNF1-%U2HS:#RFQ9/HQ[7X/B14BKJ&<;>X4]&+4M^K:*^#;UAA MMZ1BCR-&E4]PO3V'&ZWJP7T0:3>X:++RFN DA#AU!B=%9'!%I><%M_69VF>Z MJ3+/Z%F4G$Z7I5%$4F%)7L ?JF]^H4KM/H+/2#$QR3&*\R/ 44$2R=RK<()* M6!Z6CD889<0GI57N;I0$FI3'+W3RJEV0:AO?% T=VM#;L7,<9@]]=S&VFY?M M8].^%KJ1O8$65^0:GN5T>WILA./ JHUO/DMEJ8R]N:9_!]1N ZVOE++[@0MP M^!N9_P=02P,$% @ ]X#Z5*^%26RT @ ]@4 !D !X;"]W;W)K&ULA51M;]HP$/XKIVR=6@F1D(37 5)I.ZV3*E6%;1^F M?3#)A5A-[,QV"OWW.SO 0*7LBU_N[GG\7"YWX[54SSI'-+ I"Z$G7FY,-?)] MG>18,MV6%0KR9%*5S-!5K7Q=*62I Y6%'P9!SR\9%]YT[&R/:CJ6M2FXP$<% MNBY+IEYG6,CUQ.MX.\,37^7&&OSIN&(KG*/Y7CTJNOE[EI27*#27 A1F$^^Z M,YK%-MX%_."XU@=GL)DLI7RVE_MTX@56$!:8&,O :'O!&RP*2T0R_FPYO?V3 M%GAXWK%_<;E3+DNF\486/WEJ\HDW\"#%C-6%>9+KK[C-IVOY$EEHM\*ZB8TB M#Y):&UENP:2@Y*+9V6;['0X @^ =0+@%A$YW\Y!3>M8-&]8+>]-.'3B_X?$9OO-<; MGV.?SJG[TKI D!GP1KNQ-3JE\SS3(D?(9$'=Q\6*2*C"X 0+HX^H@8D4#$5C MEJ%K%FL'Q0SYJ/V=KT+%96J!*4_(D\(E%^21M2:X;@%N$JR,C4OH!>IK?36" M1:X0CWX1F//-L8$J_@I4<+='K3?W;0672%+P6/A'&+9ZO2'M84"'+ATZPU8\ ML):XTXJC8(?>Q8>M3CQP\7U:H]8@MK%1MP]W;Y*',&R'< &==F#78;M/6] > MPL6I.OL'O5BB6KF)HR&1M3!-6^ZM^Z%VW?3RO_!F(CXPM>)"0X$908-VO^N! M:J9,&ULI57; M;N,V$/V5@;HH$D"-).IBQ[4-Q$D6W0(;&.NT^U#T@9;&%A%)]))4G/W[#BE% ML;>.4: OX@S).3QS-$-.]U(]Z1+1P$M=-7KFE<;L)D&@\Q)KKJ_D#AM:V4A5 M3319)':_V_"GP+T^ ML,%FLI;RR3J?BID76D)886XL J?A&6^QJBP0T?C68WK#D3;PT'Y%_^ARIUS6 M7..MK+Z*PI0S;^Q!@1O>5N:+W/^&?3ZIQ)/0@;[61=1],#&K1 M="-_Z74X"!B_%\#Z .9X=PHRXZ5/8.:@:? M96-*#?=-@<5Q?$ ,!YKLE>:"G07\O:VN(&0^L)"Q,WCQD';L\.)W\.ZY:D2S MU2[I+MN_;M;:**J2OT_EV\$EI^%LYTSTCN0<^GQ%G5BT%8+<0$/_2W3_ZZ*26E_"CC+0-H-3M,\"GZ;]6")L9$7=2@*! ML24 &HVF265*,+1,Q^]:PUU;$2?J"I$#;PHH1-4:+ Y96GIY5U6.I85Q(+0@ M9*%I7R%R;J,N1$,KLM4$I7W EQQWYBT_**C +R?P6"K$HP*#E7@YGJ!Z^0Y4 M+FZ,_7_Y#VV-BANI)O#PQO4#C/R4132RT$_2,1E1ZF=)2$82^>$HACML)+5A M%_K5]3P6O_!G0MOB4:(:Z [4AG*Q.K::6!G92X>]9C_HU*69)?XXSB"+_3!A MULLR&I@_ND[A?K.AZ\R*[J2F"VTXT\C\"?!;*YYYA0W]K]B/XQ@2/[UF9&?, MV2G[/ZS?^;\][[$?9=>0C?PL3JS'QJGUXF1T*/*/!3&!Q2DMCFKF X17$7-# MW TL<4.6PMU_J#D7'W7Q81IOV[NG\3-76]%H MJ'!#H>'5*/5 =<]-YQBY2."/W.2AV:1KE+Y](0@_3$1R]?O E?MZP\@-K-ME&SV1!V./V/N=G5H.R MBE.2%3'-0$[6T]'/\';N5 Z5Q5\Q.12M8U"F\D3IU_+D\VHZLLN(2$*6K(2( M^-N>S$F2E$@\CF\UZ*BY9NG8/GY%_[5*GB?S%!5D3I._XQ7;3$?!"*S(.MHE M[ L]_$;JA-P2;TF3HGH%A]K6'H'EKF TK9UY!&F<'=^C[W4A6@[0N>" :@?4 MU0'7#KA*]!A9E=9=Q*+9)*<'D)?6'*T\J&I3>?-LXJQ51L M;D#Y"G[YMHOW44(R5MR *%N!/Z/\*V'14T+ @BQW>68X!AY0YE=XN7K:D=:FJ'*CRLJ9TZ^7_^X*;@ M,R-I\:\JS2.NH\8M[]S;8ALMR73$;\V"Y'LRFOWX _3LGU1)&P*32H";$F = M^NR!LB@!R]="5 =$%$*5^Q'0JP#+368_ELL(8-U92M$X3K:.- MMD7HHB&T*L8CC-NZ.O0Q]L*3(!5F+K9MI([2;:)T.];TYJR@QQLS[9J'>Q8@ M0DX0N"=Y*,QL!V-7G8?7Y.%I\W@<+\;@F>Y)GO%]G[5"!?^!Q8;F[.,#R5/U M-J/*1GNYOG>-(3"I,GY3&7^@C<,W60)#8%()@J8$@9E;,3CC9A@&=G#"X',K MST9^J"9PV,08:F.^"& *3DH6V4 +V0*RL@0U5 MP12:7(:6(()FF%GC2*3#MF.?4%-AQOD++_Q(0"$^H/:'_6Q[Y:([6[YFT.0R"'D$M=*C!Z/]3HP>0NA MH72@7NK,:;ZE><0(6)$G=BTC+5;O=32$)FGY&0/4@O>RZR](W[LOYRO7LLRV>H807$@(+J3O]G0G,NY"Y"%D$Q*R"5V13;LL7L9;_N?N2BY:F-XK: A- M3EJH,.0.162C.LL4FEP&H;.0OC75G^7^\T#DE\KD1:K@H%0W'8J+@RA2:708@KI.].=>=PV(7#0T@D+"02UDND M3(869 MYS@7^FFX-H<9EC5-280I/+($2-VCB>,;JM'GYXH8S2M#C&ULM9I=C]HX%(;_BL56JU8:AM@.">DR2%-FV^VJ ME:K2Z5ZL]L(#GB%J$E/;,.UJ?_PZ(<7YPDRH?0-)\#GV>W)B/YQX^LCX%[&F M5()O:9*)J\%:RLW+T4@LUS0EXI)M:*9^N6<\)5*=\H>1V'!*5H51FHR0YP6C ME,398#8MKGW@LRG;RB3.Z <.Q#9-"?_^BB;L\6H !S\N?(P?UC*_,)I--^2! M+JB\W7S@ZFQT\+**4YJ)F&6 T_NKP35\.??'N4'1XG-,'T7E&.12[AC[DI^\ M75T-O'Q$-*%+F;L@ZFM'YS1)%>"7FC@@Z9\E? M\4JNKP:3 5C1>[)-Y$?V^ N&2#*;-Y:>/[L!7@&X@Q\6K.M4+[%="35Z/,Q MC);E2%_M1XJ.C/3/;7()/'0!D(=0A_G<;'Y#EY< P\(-^#W]U#_@"_%!NR MI%<#]80*RG=T,/OU%QAXOW7)M^2L%@Q\" 8V>9^])C$'GTFRI5TR][9!89M/ M*[L9##$.HNEH5Q70T6R,/0\=FM6&YA^&YAN'ME@S+H>?*$^/Y.JURO1F_G>I M,';3]V99L3_4I4#3,@NJ7O[ M<34MHRC 7B-[C=V<*2(\B B-(MYP)@2XS=0ZGA1:WJESVIG%84O-$ ;^N"'& MV-V98B8',9.?F$LF'7*=R00>J[Y M#YR:CKHT&[OK^[!9).FAG:S MP$-AU,TT4$,--%/-G*4IYLF06ZAQ9HE5IL>:L' M1',+-(/+B?1L4XM"%K\)+1W-5 [#(\@--8] ,Y TT_,)"]^3.=S<=>^[Z )U MH&8=.'&?UI9@IPR("W2"FIV@&9Z>L!Y&[9P-0]0D0',_9^I &G20D1OZ+(>E MI]IRV/IS;.[N7#D:4Y 94\RS#6HCRB0,QD%3@PM"096"C9E0FEQ.'FBV_%[! M\TYI=FLT+I &::1!V'W-RDA-O0-BR5L](!JCD!FC3J2UWV8\#S41KZ/5>(S" M[B44:>!!1GXXG:UG_IDT=]O[_KF (*0A" 7N$]I2Y:8,B(LZ$-+@APF6?FC&\8)Y*"5?[,F1=-LZ^^CY0M;W7E>P=#['8$OD4P;$!4=A MS5'8S%$G7O:TBSMAU'K5TVZ$QV'0O6;BRELH<\GF:)*>N5::N^M]VURP#M:L M@WWW>6RUI&3+6ST@FK"PF;!.KY6E@WIY!#=SV04"88U V%P'ZK%4XG:U9^@W MU;C@%ZSY!9OYY<3:OO.="XY)MQR9S'?KOB$T3-)[%L5-T/@:HO&.HCTSCCFRLY M7?EYYO)H[JGWE@@75.-KJO'=[^?QK1:+;'FK!T3#E&^&J=/+H]_Q9AO M^U1SQT.<"9#0>^7>NPQ5;WR_DW)_(MFFV(QXQZ1D:7&XIF1%>=Y _7[/F/QQ MDN]O/.QGG?T/4$L#!!0 ( /> ^E3]N]$ #@@ )Y. 9 >&PO=V]R M:W-H965T5_N8N3M9_E;Y/[:;I)E+\J M&ZW#*74<,5W[0319G)>??4@6Y_$V"X-(?4A(NEVO_>3[I0KCIXN)._GQP?-AR1_-ZU45L%:16D01R11=Q>3U^ZK*SDK&I017P+U ME-9>DV(JMW'\M7CS=G4Q<8H1J5 MLT+"SW\]JBL5AH52/HY_]J*3JL^B8?WU M#_4WY>3SR=SZJ;J*PS^#5?9P,9E-R$K=^=LP^Q@__:;V$^*%WC(.T_(G>=K' M.A.RW*99O-XWSD>P#J+=;__;/A&U!J[7TH#N&]"N#=B^ 2LGNAM9.:UK/_,7 MYTG\1)(B.E4:"B'QZB+=I'IV>3[-\+(7B M=+GO]W+7+VWI]_=M>$8<^I)0AU)+\RNX^;5:GA'FELU=L_DTST"5!EJE@99Z M[&@:7I+7::JR71;>!?YM$ 99D&=AGYX5R8OOHUINDR2([LNH/^(HJ3ZX]-,@ M)7^]RSL@;S.U3O^V)6%*QL3\?/I8GXLE MC#/'H568,4JO&J4'CO(J7J]5L@S\D&S\C4IL P05^BX)DI@Q65Y-EH^JECEF MXI#$C,2)*G$"IY9W,KQ6I((YGG-0RLVHF3-S6RI95F.4X!@_G]V4++O"B&)&;.?5;.?C:JT9YB)0Q(S$C>O$C?'*>UYHVCG M#IT=5'8SB',J[87M.II$G",GZ603)WZF<@R[S8Z,$];JNS18:N;,:PSFCJJL M]\/!2AZ2FID\36XNR#?=2WNO4R];.3_D#TL0XU*TU+:F)/<()FVC8!ELCF9!!F_)=7=WG$Y'@"4,. *8QBX&8]?_. *LS -W MUW<1L=3,Y&CF8^/R-ADJ,&*IFZ&&V"]C&O[8N%Q/AHJ)6&IF\C0F,B3GDUE,32FX.*ST9EC^;RYK0WRF MD8S!2-:UW&' @3OIO79#;*@Q37]L7)XH0Z5#+#4S>9H.&9(ORIJ>9^/T#H68 MEZUH /-@ .M=[U:<@3OI?6W+$%MLGF8];UQFJ8?*@EAJ9O(T"WI(9JG7]$%M M)WI+&'2B]S1W>3!W=27Z3M>_P'WU7L(A=N&\VJ5LXW)5/=P+XX:@1$]3HH?D MJGI-P]1R(8PEJOU*&$_CF'>"K=JE^&'L@7OMO9)#;,YYF@2]<9FP'BHS8JF9 MR=/,Z,$[AMT/@Z;+>H@]8(@Y/HUEWFD>;/<#P,Y!J'MS6&KF1;X:#?FX?%J. M"I%8:F;R-$1R>,.P\P' FT:LY7O $M7^/< UK?'3W-I>5TK"??1>MR&VX[C& M0CXN_Y:CDB.6FID\38X:%TTS#>>J_=$-MT7/,@'Y>)RU%!$4O-O*E)@Z) ,G%%TYUMGO8M0>VG?:&!3)SF MX':]T7S@N- M8N(TV]96[C#@P!WU7KLAMN>$AC\Q+A-7H-(AEIJ9O-K=JUBWKS;=V<:]JU"( M.3X-8.(T[Q:L>2O;P!WU7K8A]N*$YCXQ+O]6H((AEIJ9/ V& LF_%4USUG*R M;P:UG^RE!C!YFHG[/H[4=[(NIT#NMI'].1JP>.^[MX?8=Y,:\^2XS%N)BH58 M:F;R-!;*(^9MMWII6K)4S@XOPK=%,=IRCI<:ON1IMFUSZ##5P-WT7KW6HK>$M5>]!J\Y&EV+5#T5JR!N^F] M;D-LM\G:<#,&$4C.A/.+/=BOZG4C]84F'' ^&[ 8WK3T\K'AR M6XY4]T&4DE#=Y6V)-^3RQVSC+XG7Y\D'Y*Y44 ?G?[^(X M^_&F>$19]4BZQ7]02P,$% @ ]X#Z5!%1BSMQ @ < 8 !D !X;"]W M;W)K&ULK55A;YLP$/TK%JNF5FH#."%),X*4)IJV M29.B9-T^.W $J\9FMDFZ?S_;$)1VI-JD?0&??>_YO<,^XJ.03ZH T.BY9%S- MO4+K:N;[*BV@)&H@*N!F)1>R)-J$Z%WFMC0?:'MA)_$%=G#%O1CM98F\CN6C); %14< M2RBME19E"S8*2LJ;-WENZW &"$<7 +@%X+\%#%O T!EME#E;*Z))$DMQ M1-)F&S8[<+5Q:..&0#M P=/#P)=PWE>C*@;MR8,!6\1!]WEL2$?]I/8BSE1%4IA[YJ8ID ?PDO?OPG'PH<_Q?R)[X7_8^1^^ MQ9XL_C3=Y[=PM';"IEI/.[( MFA:&,E'O=%ZS[FOUJ6T(HS,==^-Q\$IL3]($1_U:HTYK]*_5O'B$HIZ2AOAU M27NR(AS>OY+IG_4#VXN_$KFG7"$&N<$%@XFAD4U_:P(M*MXW-NKF^2FHL760 H M]%I2)J=.H50U<5V9%5!B.> 5,+VSYJ+$2D_%QI65 )Q;4$G=P/-BM\2$.6EB MUQ8B3?A64<)@(9#3UU?&>_\$@VA3(+;II4> -+4,_50NB9V['D MI 0F"6=(P'KJ?/,GL\C$VX"?!&IY,$;&R8KS%S-YR*>.9P0!A4P9!JP?.Y@! MI89(R_C=)1JGTEM,,O5Y.4>7%U?H A&&G@J^E9CE,G&55F+XW*P]];8Y-3AQZOZ1IVNH9G==T11G1!YVC# M>7]Q-?CHX-";41QY'Z0=1XW'H^B$N*@3%YT5]\05IG^KI$]==)22FW$8?$S< M<=18_SZJ8.1IA%-IVHFBE?VLJ^XTJW##@O=W$&8 M +V_YESM)Z9_=)^+] ]02P,$% @ ]X#Z5"N4_.36 P S1, !D !X M;"]W;W)K&ULM5AKCYLX%/TK%ENM6JD=L'EF-D'J M9+;:K;I2U+2[GSW$2:P"IK9)IOOKUP:&1^*@346^)!CN/9Q[?0P'SX^,?Q-[ M0B1XSM)<+*R]E,6];8MD3S(L[EA!8 MYE8\K\ZM>#QGI4QI3E8CGQF>[V4I^PXWF!=V1-Y-=B MQ=7(;E$V-".YH"P'G&P7UGMXOT2.3J@B_J;D*'K'0)?RQ-@W/?ASL[ L02QW/.CH#K:(6F#ZK>5-FJ&IKK:5Q+KJY2E2?C!YSB M/"%@76GFD4A,4P'>@1572N'R!\#Y!OS^O:2%FCOY%N0JZG43]D;%?5T_@M>O MWH!7@.;@RYZ50B6(N2T5-WT'.VEX/-0\T 4>'\OT#CCH+4 .0H;TY7CZ(TGN M@ NK=#A,MU5'VK:@MBVHPG,OX*UK50.V!46_$V30"5.9-:YGQM6+\EX4."$+ M2ZTZ0?B!6/&OO\# ^BU7;Y3K^R0ILS+%DFS4&E;-2"BNGQ**.\X8E_3? MZH2)=PWM]QB]\U (_1/BIC#H(-_,W&^9^S_5Y0OJ\L]((*7XV0E50Q0,(]?, M-&B9!J-,OQ A.X8F=1[LP+ [,R9RW7V2C7)41I*KVS 1VK -G2F!XZ[D>GV>>XQ9@-Q3>1JB''CA M[0X[(P+'G<@GHKZ&]BS= )JI63L03=9,WTNJD[F6=_T*BON%ZK#5[_HU.]]D^_3$U1 M$40G6K5[>RUZH^LOS'.ZH'DA75]LL3DY)EU>&>X WA M.D!=WS(F7P9Z1Z?=P8O_ U!+ P04 " #W@/I4GGX4E(D" !S!@ &0 M 'AL+W=O\YG'NX7)(M%X^R M!%#HJ:),IDZI5'WINC(OH<)RQ&M@^F3%1865#L7:E;4 7%A01=W \V*WPH0Y M66+WYB)+>*,H83 72#95A<7?:Z!\FSJ^\[QQ1]:E,AMNEM1X#0M0#_5!K=Q9(U/)DO-'$]P6J>,904 A5X8!Z]L& MID"I(=(R_G2<3O]( ]Q=/[-_MK7K6I98PI33GZ109>I,'%3 "C=4W?'M#73U M6($YI])>T;;+]1R4-U+QJ@-K!15A[1T_=3[L /SQ*X"@ P3O!80=(+2%MLIL M63.L<)8(OD7"9&LVL[#>6+2NAC#S%A=*Z%.B<2J[QA2S'-#"MLP,%"94HC/T M794@T%?.UF?W("IT)24HB8Z[C!.=\K"8H>.C$W2$"$/W)6\D9H5,7*5E&7(W M[R1@(><$I"KP@&(!/WX;/(!^AT+=P?Q_N:C-Z1X+>D<#RA>]R MY XH5E"@&9$YY;(1(-&OJZ540C?@[Z%B6_;Q,+OY*"]EC7-('?W521 ;<+*/ M'_S8^S14^G\BVS,B[(T(WV+/;IG";$V6%! V;_\4,5!#%;X7C-Q6V34I-DRK3I%;F8 >V/-'.TR]"[_R%Q,.D M>.)YPQ*C7F+T#HFM,&T@9WDC!+!!'Z,#B_SQY#Q^H7(@*XP/G'1W1H(9Q]^P M6!,F$865QGFC ^E3AP_4,\ , @4 9 >&PO=V]R:W-H965T3JR9KQ#$MURS>NV'' :2'*J!MXWMC-,,F=Y;PHN^7+.=M+ M2G*XY4CLLPSSXR50=E@XOO-4<$P GF_N^7JSJTI*-;!77J.K6P>?U$_UQT7G7F 0NX8O0ODLKMPIDZ*(4UWE-YQPZ_0-6A4/,2 M1D7QBPYE['CFH&0O),LJL6I!1O+R'W^OC&@(%*=?$%2"X*5@](I@6 F&[Q6, M*L'HO8*P$A1==\N^%\9%6.+EG+,#XCI:T?1%X7ZA5GZ17 ^4E>3J*5$ZN;S$ M%.<)H%4Q*B.0F%"!SM!OF'.L6RZU <9Y"VM:[J@=U-X*G;EP&1N *=@,43']" M@>?/>MIS99;_NJ<#Y 5:'@0]\L@LCR 9H*%?R/T>>?Q^N6AT;O? MY18XHBS?G$G@V5L>&F&G>EC"PH8[,W\T?F%A-\CWO40[?%2K8XD2EF5$ZLN^A!A9IR;$)BRR"8NGG3G" M#Z>>5W_@6D[/:J=G1J<;PQ_KX=_G[ZQ;\3!H5%P:9ZSG5.-LPF)+L):_OO>\ MTO?>,7'>F*?+BO&6QU58:Y(+9B_#HKZP+BTV-_R_&M/8 OE&8^X%K/=4+236 MO1/A&^H0'0'S/C.OS,I3AZ)56FR+UO8\>/8\L+$"-E-._:16M.9P#"?=0=N- M&G6B8ELM:_OWO,7SC?N34U?!9MK)/@Z[NX3.6QWU1$W#KH]6]V%NXR0D [XI MCJ"$FK;WN2P/1>K2^ICKHCC<<9_#RS.R+YAO2"X0A;62>H.)&A"\/'8J;R3; M%>$# #J# &0 'AL+W=OK@[_NY/W9TT/PGY31T -'DJ>*D6SD'KZM9U57: @JD;44&)=W9"%DSCJ=R[ MJI+ MHU3P5W?\V*W8'GI+.?-M0>YG(M:\[R$!TE4711,/M\!%Z>%0YV7"U_R M_4&;"^YR7K$]K$%_K1XDGKE]E&U>0*ER41()NX7S@=ZN:&0<&HN_@<@B;1EJQ)ZYYIMIQ+<2+26&,T<]!HTWAC-GEI MMG&M)=[-T4\O[QAG909DW3PS]Z!9SA7YA7S(,EG#EGS*V2;GN\ANR$!;=SI:W<7E>CE\'LY_"9>,!)OW3[-1.SP 6L5X&<%;.FU\4)[ M/%.$MZIB&2P?:.S]:DOV?PKV*O6@3SV8BKY+].R6 4TCGJK5[QASQM^EU>4 M4&I\ H_X)W#;#L"1]QF;4E7Q'*25N0T;7=#, NI=(0^-DIA2.W'4$T?3Q+64 MAK<2LA$9'[(3DY*5^KD37$N!2MN@HP%/G"3)%?30*/&2V X=]]#Q?X66@'K7 M0-2!22 5>\:V;G\\X@%0E(37U$.C, E&I$YZZF22^@&%!&5F#>.-MIDH%7;V MO-R3'=@K.1G"QDEZ!3LT"E,ZL\.F/6PZ"?M1-L/&QI0.F7R/7C$-C8+9++$S MS7JFV7>VW8P>D(1MCV9 *"(D;OP&.X)5O-D0E-)K\89&81+Z=E#JG2>8-XGZ MN0+)FIWE@ /=/H2\H4:I[U_QV:RBV4@!T8L12R>2S1 MZ;G4;:\800N&BR;Q0#J+5>AY(VCG"42G1]!G?0!II1J.CS"-KNO69A4DP0C5 M>C_V^M+%NIS-V*'30658S&@T:#+NQ8NH^0KXD\E]7BHLS!WZ M>3<)AI'MBW5[HD75O)MNA,9VTQP>\&,$I#' ^SLA],N)>=WM/V^6_P)02P,$ M% @ ]X#Z5(A*FNU* P Z H !D !X;"]W;W)K&ULK59K;],P%/TK5D ()%A>3;*-MM+Z0( T:5IY?$!\\)+;UL*Q@^VT MX]]C.VGH4J]4L"]M;)]SKL_UC7.'6RY^R#6 0O,AKQ4E#&X$DG598O%K M I1O1U[H[29NR6JMS(0_'E9X!0M0GZL;H4=^IU*0$I@DG"$!RY%W%5[.,X.W M@"\$MG+O&1DG=YS_,(,/Q<@+S(: 0JZ, M9_&Y@"I49(;^-GJ^EU(0UQ_WFG M_LYZUU[NL(0IIU])H=8C[]Q#!2QQ3=4MW[Z'UD]B]').I?U%VP:;I1[*:ZEX MV9+U#DK"FG]\W^9ACZ!UW(2H)41]PN 10MP2XE,C#%K"X-0(24NPUOW&NTW< M#"L\'@J^1<*@M9IYL-FW;)TOPDR=+)30JT3SU'B"*68YH(4MRADH3*A$;]!7 M+ 1FZA>Z!0EB ^AEN_9*+WY>S-#+YZ_0"%W6N M_M3'59Z+&E/T[993BO3+N]6P[ZY::*(-W-',?7@I*YS#R-,7GJTY;_SB69@& M;UT'\91BLZ<4FS^1V(,C&W1'-CBFWKW-6*$[6!'&"%LAOD05",)=+]BDT4NM MGOFF;,87218,_JZU=\S)?B2*%<"&NUD;T=OXB3L)> 0% 9!W$N Y1E/?^'F"@* M$K?_M/.?'O4_Y5*90W9:1CG%I'3>S>FA\R1->LX=H&P0]9P[0&$8]KV[4$D0 MN>)KT*G1Z"+B["7CW,3E&:_T6IL>OO?;I+$"O; M,TF4\YJIYJKN9KNV[,IV([WY27@Y#1WS,]W&-5W7'_FF![S&0E\1$E%8ZE#! M6::/1C1]53-0O+*-PQU7N@VQCVO=BH(P +V^Y%SM!B9 U]R.?P-02P,$% M @ ]X#Z5%.YTV3" @ B0< !D !X;"]W;W)K&ULG95=;]HP%(;_BI554RNM36*2 !U$:D%3-W5:U8_M8MJ%20Y@U8XSVX'V MW\]V:,J&H=)NB.WXO,][3,[Q:"WDHUH":/3$6:7&P5+K^CP,5;$$3M29J*$R M;^9"@'^H;:69AIU)2#I6BHD(2YN/@(CZ_C",;X'9\ MI[!66V-D4YD)\6@GG\MQ$%E'P*#05H*8QPHFP)A5,CY^;T2#CFD#M\P'+?5R' P"5,*<-$S?BO45;!)*K5XAF'*_:-WN[2<5NV3/&T.8BL XST!>!. G>\6Y%Q.B2;Y2(HUDG:W4;,#EZJ+-N9H9?^5 M.RW-6VKB=#X1G%-MCEDK1*H2342E:;6 JJ"@T"GZ5H,D=@5=@TE>H>,I:$*9 M.D%'B%;H?BD:90+5*-3&CA4-BPWZLD7C/>@O#3M#$?Z <(0Q>KB;HN.CD[]E M0I--EQ+N4L).M_=?*4VI*IA0C03T\V*FM#3?Q2^?^1:2^"&V6,Y530H8!Z8: M%,@5!/G[=W$6?3R00J]+H7=(/;\%6U E2"3F[GA\!EN)S$G8XEOE&&>]4;CR M@),.G!P$&U;/QVJCTBU6D@TB/ROM6.E;K,3'2G=9:;R'E76L["U6ZF-ENZQH M'ZO?L?IOL3(?J[_#2C/L1PTZU. @ZEYHPM"\T?9S-MV!\H8C9@L5U>39E8#/ MR6#'B?EN[0'YO P[+\.#7JY!*41YW6@H36?08,I"^^C#'?IIG,5#/SV.7AM9 M=)#_VJG: V"4S"BC^MG;F:*=XHF3),K^,1%N-59[27TE=]4T6 MLNW[[42+VO7:F="F<[OATMR5(.T&\WXNA'Z9V/;=W;[Y'U!+ P04 " #W M@/I4']8L'LD" #O!P &0 'AL+W=O>>8E;8L*<=&S7KD0ZYK6BA,&50+(N2RP>SH'R]<3QGMVUC/05DM%2];L%90$M;\X_NV M#EN X&0'(&@!P3. '^T A"T@M$8;9=;6#"ND0 M><$ !5X0],"G^^$SR(8H]"W^"OPGLB?U"+MZA/O8 MT[,L$S7DB+9-T+1(5@NA2X0J+NS)Y 7B7==0TS6]G="D2FPJ<]>LTG!D-GVU M[;8G*#Y)NJ G+J+.1;37Q>4_B&L8XJV\OA>/HF?JHA?J_" \WB$O[N3%KY'7 M%?NA3V?\4D$4>=>O'8J0,T;=+UG:J];*^MD+MU'9NG\!L6"\*D+D"AZ;WA ML=X/T3POS43QRM[0R$?;$EBO<<\A[R\I(<;QG_(5:$2/24)IF86"LIUR/;%O&*I%A< ML#7)X,N"\11+>.5+6ZPYP?/"*$ULSW$&=HII9DW'1=D=GXY9+A.:D3N.1)ZF MF#_?D(1M)Y9KO13Z^P^^@S\*T$"K,YF7?8!WK[@<;>!D_4 M[O!>W''C:0$_YK.^]C#][%'>O. Q!?(=[O, M&[[TZZ'E%WC^FX;6/W]"=70K22K^[1HX)7:O&UO%VY%8XYA,+ BH@O -L::_ M_N(.G-^[5#,)%I@$"TV"18; &FKW:K5[.O3I5R9Q@A:YS#E1@8JF>8H2 D$? MK?%S,0JZ9"Y!!P6H6@4W4VB/UQ_;FWW]M-2GZG<496B2,C($UA"F7PO3UPKS MO5A&0+"#(2E1(SY9H3D7,\DPB>"&IFIURM5^[%#.A M^)$F5#ZC,_@2@Z[G7;J6;;K:<[)SX0S< UVU+3]5UZ,H0Y.4D2&PAJZ#6M?! M:;IRHC+)G5)*102YYZ&$77+IJ7ST3# 7:(#28KGM"K%:A%.E?'=S0I/-B0R! M-60>UC(/M9V]AQF&R!/L)+J5&[:CF>LX!_.L7>GJL$[0KN-YAY7"CDHMMDC; MH3>ZZ[)VUZ7675^:8_VC=O'10IV:8Y@$"TJP_KZ?_988EVTQG)88AIK5$..J M%N-**\9=SN.5"D5QG0HBT(>RKE3_1H_EE9.^R_-:PU,];Q(L- D6&0)K*.DZ MNWVBH_7_=1SS'%:;)9QV#)U>E=K?6H(,XH6&$4+C:)%IM": MJGH[5;V?N#6NP$V);A(M,(H6&D6+3*$U1=\=A[C:_??T2RZ%!+55^F01CV,-C;)&%5HCG^D-]].>IN-W)Q.N_FCB 6?H$U/) MX PG%'9$&<6=SC:YYY\910N,HH5&T2)3:$UY=^<;;O]G!E.3!P(SHVB!4;30 M*%ID"JTI^N[PP]6? ;SQN+%"W8\QE_UV-#5ZF'$49VB4,S*%5JIC[]TO0>J_ M+&X"!2K.#LO[@+JTOFV\+N[8#LIOW-',[2@/W%%8WB7NX,NKS<^8+VDF0-H% M4#D70QAVO+PM+%\D6Q>W6X],PKZD>%P1/"=<58#O"\;DRXLBJ.]LI_\#4$L# M!!0 ( /> ^E2$'PY4&PO=V]R:W-H965T\T^;!-H@.GJ10=A8USJTOXMB6#4IF)WJ- MBDYJ;21S9)I5;-<&616"I(BS)#F+)>,J*O*P-S=%KELGN,*Y =M*RO_@\(-C M9_?6X)4LM7[PQFTUBQ)/" 66SB,P^FWP&H7P0$3C<<",QI0^<'^]0_\>?'L[O9^["KEF)LXB&RJ+98%2\?I6>)1]?4'(M7#G^YQ.O^'4;PW M'/Z=N6-FQ94%@37%))-S"C;][/:&T^LP+TOM:/K"LJ'G#HUWH/-::[ MHC!FUYTEYZO+7H]Y2Q*YK$M7)!:_S&D2N5Q\318]MDJ(ZZ=&4=C#_?ZP%[E! MW)ERHS2S_++._^Z MTY<>D9!X7$*XXL^&3$D82B3AQY<FG$:Y<;"@RB(L[_N4TY$ MQ4#@-!O@W "?:F#F!F;- !\R&.0&@WH/@P,&5FZ0WGHON_>4.-OE[N0JH5N4 MR-8"37Y(V4^M!5]!+ ?*/4_$KX&PXY-[3KW/2QKZ)&$_(^?+.N#/Z!REE]'' ME123H=RGYZ7>W.;>8,/>&.@]S3F2X:L[?U]D.-?4\P6]"+ M=_3>8BW@6S+K(CPZ0[B/<=/]Z,U_7X==U,<'S>WO,W=.,3=3-%C=)XL8+(N(/1[-G5&UWYSZGEV^V;N*CO_\0 MD.@=)Q'[IVET9?T/FON7,?>2K5R/7'=$4&4DV9#.Y*P(Y/>BUH6RXO]F:SV33I]YM939,>R#6%S5'!YJC=I-\1BE9)X)%R MAI\AIA!_>AC0.M"6^='>!+_H6D:-]\9&M5#A +FEL#XN6!]K67^,$^+111S\ M*P8N.Q 1A!3R+PW:RW+W!O;)[5R@!Q32#;Z93;1U]+\*2,Y M)5.,T8 V/83?ZD':L@>*9A^Y08R>B9R &$59IF!@L5X_-XT1!\HQ58M*9F?H M715/[>B.)&DU(1:1Y<%-%H0S]+66WGV5K814Z&-,&N72]M-:+D@T&Q3-@4)3 M%<.E8OB%$Z3< 2@I(=%L4#0'"DV5LDQU#6T2-LGDV!#&@WB!$KGDLS,9$CTA MEECU&\4!35]!T>P;S MH&@V*)H#A:9*6=8'C-%+AT30 @$HF@V*YD"AJ5*610=#7W7XIF)YCEDM8ETT M%+&F^KY;\PZ)YD"AJ9MN91D"Z[-T\,)ZWE^UP&59W7&MPC75N]56$E T!PI- ME:2L1F!]-2*+3*O*6G3X">$(E)&NPHV[J:"U!5 T!PI-Y;^L+6!MPCOY0#@* M8H]&2H69IT\)R/66 =ED*TM5(KX4KLC3 47JVB@7;LH-1_6Y 5HL $5SH-!4 M;F1F4'HVY^KBN!VA] !3-@4)3]2C+"%A?1OBPCF9BCM#Y M[H3+;N4.YBBFY[_>W-SMYM),'K5"H_Z/R(U]-,N%S"^/Q64!DHMZ9-G'^QO6 M]15?[W9KR4#K"%!HJF1E'0'KM]+O,Z'<=)79ILM_GH4>G"56TRRQZI2#YON@ M: X4FDIYF>]C?3+\L!^KBOB$1,C:39Y,$Q8&OE2$>6[86/W,>U/T,.IJ@";[ MH&@.%)JJ1ED P"=LTI]XRD$/U3;_R]&4HPGCO=W+AE8#:V_W$LHSE<0R]<;Z MO?GOJJ*4FVBGEE3TWK36 30/!T5SH-!47S>_^2S!R8'Q84M/#8QZ M;UH?Y 6M"H"B.5!HJJYE5(MM9OTW:S:==NX=+)WS4J8[-6W]V+A"L2R M%)*Y@)2#O9--EMT73E?IZU(SRCF-TH]+XOHDD0W$[W-*^>Z+[*!XIV_R'U!+ M P04 " #W@/I4SK[-_&@' W-0 &0 'AL+W=OM:S[4.G#S+( M-EU 1(@X[O3C*PD,QF 96GDV#S'&TM'5N>+J'DG<;BC[DJX)X> E"N/T;K#F M/'DW'*;>FD0XO:0)B<4O2\HBS,57MAJF"2/85Y6B<(@L:S*,!@=^-3L%IS>6,XO4WPBLP)_YS,F/@V+%'\ M(")Q&M 8,+*\&]S#=ZX]DA54B=\"LDGWKH'LRH+2+_++!_]N8$F+2$@\+B&P M^'@F#R0,)9*PXZD '91MRHK[USOT'U7G16<6."4/-/P]\/GZ;G ] #Y9XBSD MG^CF)U)T:"SQ/!JFZC_8%&6M ?"RE-.HJ"PLB((X_\0O!1%[%4;P2 545$!= M*]A%!?N@ CI68514&'6M,"XJJ*X/\[XKXAS,\?26T0U@LK1 DQ>*?55;\!7$ MG\XY];ZL:>@3EGX/W*MHR.MV^"1QGR= C?V MB=]2_T%??Z*I/Q1,E'2@'1WOD1;PYRR\!!9Z Y"%$/@\=\#%J]<@(2R@/DA$ MYT&ZQHRT=?7A;,B.'OD^6UT"."Z0CZ*X)U 2MF=?&TJ-4+L<7[:"M8^-+PGT M5C[*/GB@D8AO*581XIXQ'*^(B#D<++9@O]P,;]7M^PUF/OCC%P$)/G 2I7^V MC;"\_5%[^S+.ODL3[)&[@0BD*6'/9##][ALXL7YH\Z%),,G$ MD0Y]^C&+%H0!N@1D%Q=2%1>275Q(5%SX1WVV.2G''RM\.7<]3]'M\'F?^9,E M'*V-?>DT!%:CDS?%@*>) MO"M'^JLVG^4M0K0WBL?C2_M@J'_[I5#5D- MMB9V&ZM="SIZ6_L2:PJMSNR>%H5:9N<%G\]"7,IA"9:4@67&,T; 2H0A?I)? MV*#-;N>W8T%';W%O?@VAU?E%%;_(0.*I!^D;J4^8!*U=SHE&1W-.HQ:YIM#J M3J@$,=1*M>DC?@FB+!*!..8L6&0[;WAR*KW($L I0.-OV\=W#@WAWKBU+M'X M<'1W*N;H#>U-ZSD4*JPD*M1KU#*GY(1%08SW!KD((V%(-T&\J@2KCSF13 L- M0()GL@OE:;;XBWA<_1*D7V20%S%H20(9@UH]8E*5/ISH(U0ZK?4),2J.3:'5 M75G)8ZB7H]4$BWU?12L<_H>Y=MPM@=$;TS>7-(KFFD*K.Z)2R% OD7>AJI%' M8O$\>>()\N43MK<*='Q.F32<,6YU1K=RCM[PWC2?0Q[#2A]#O4!N))0R+>\P MP*\:7(U:.>U6SM%;V9O3U6SM$;VIO6<^A+ M6 E,J%>8YU@T*YJLK8=-+F\.Z>Y2RM&;WYOL:?9?)]'!]) M3KF]E> M$Z(!^,3/O'V%AE>M,J!HY4!QP4-AUJV8H[>Y-\/GT+NHTKM(KW?K M##=229E EK2?F)KU+?5^*NSFEF-S^C;:IFL*K>Z+2B2CKANY=+D4R;I4Q"IG M5WNW1[-W='K[]G011V];;R;/H5%1I5&17J/^6N>OE36C.[@G[)D4RVBM =NH M)C6%5B>^TJ1(KTGS<.('J4>S6"G04GVRP".GXK1)W?A0H!V$\^M&.#D_WMO S7U MIMVZAM*UH*.WN#=WYU"FJ%*F2*],YXM/6[XMV MV[?3@_0^":DW">;Y!I@;9(R5,F];W[ M+/ZWNL?HMJI1-,ZKO1/'7_W(L=DSQV8/'9L]=7P.O6I7>M76ZU6C M!YKT;?7VFDDTQV[*9]AV'L4UU6SND.'>BR,182OUQDX*E+3*WR$I[Y9O!=VK M=V&&5?'\E:)'S%9!G(*0+$55Z_)*](7E;^GD7SA-U&LH"\HYC=3EFF"1H\D" MXOEZD! >QT !D !X M;"]W;W)K&ULQ9EM;ZLV%,>_BL6NMGNEM6#SD*1+ M(K6%;7?:E:IV=WLQ[84+;D %G&L[2?OM9PPE/+BHV2SU30/..3_[G&/^Y<3+ M V6//"5$@*,'EGMY0D*TC),UH"1AY6UB6\B."B<4&+QEFNH,C*^A,_-8GH M.$B.W@$U#FCHX+WBX#8.[EMG\!H'[ZTS^(V#"MVN8U>)"[' ZR6C!\ J:TFK M+E3VE;?,5U96&^5.,/EM)OW$^D[0^#&E>4(8_P%$WW:9> 9G0 V?7.O=R'X^.$3^ "R$OR1TAW'9<*7MI#KJV:Q MXV8M5_5:T"MK<<$76HJ4@ZA,2*+Q#Z?]@PE_6^:E30YZ2Z[>XN\H=ZL+Y?[-'_WGV7C+<=J>XBN>^ME-2S,C9_7A+7#*&RPV1 MZB' _3/HVMW@9S5\>< L 7__+I'@LR %_T>W.^KY/?W\E6)>\"V.RE/T^G%OBA-WBJ@K1TT*%*GZ?[-? M0\=Q9DM[W\WSV"I R.T;A6,CY'@SOV\5:2:$[L)KK7H1^VW$_F3$-XPFNUAH MY6C2\]0-9Q(6FH1%AF"]] =M^H-W5HW 9!%-PD*3L,@0K%?$65O$F3'5J$E^ MYR'VX&*@&6,;. \&DC&VF2T&LA*-;5QOKI>+>1OJ?#I4F;HL)EJYF/0\=:>9 MA(4F89$A6"_]BS;]BW>6BX7)(IJ$A29AD2%8KXC0.385CC'!:%#=IQBY<* 8 M&B/H#UY%0HV1-QMJAL;([;S4] /N=%%P.F"<$PYDVR-[,_9(1%9NM+%.4D[= M?49IH5%:9(K6KP4%3&5BY"K[VD'+LX.-W&_4)*PG"N- 4G M159F7#!<_5"O#7L2=O)>-$D+C=(B4[1^68X=)YR_MZP8[5R-TD*CM,@4K5_* M8_<*)_NJTV1E,?JYTT.^,Y25L17RX>A=96PUFX]^7]7-Z'IH("MVYS"I(&RC M3O&X#&=7BOJTH!UM3PHOU?G88/P*7EQ#S7A8G2RJPZLCOCZ6_(+9)BLYR,F# MG,HYGTD%9/5)7WTCZ%8=9=U3(6BA+E."$\(J _G] Z7BY:::H#UO7?\+4$L# M!!0 ( /> ^E0-=CECD@0 %$< 9 >&PO=V]R:W-H965T"@I./<3,"<\]C'QWZ'@\=[0G^P-<8$Y6:UYT:!/QQNTPG/,7S9/5-SI#25.,IRSA.2 MXN5$NX=W$0P*A]+BCP3OV1'PS#E;M8%W: M@UT[V)?VX-0.9>AZ%7LY<2'B:#JF9 ]H82UHQ44Y^Z6WF*\D+Q;*G%/Q-!%^ M?/J,=SC?8K"D) ,SDG,J4L?$(/@:S,KN,67@%W"P^Q1BCI*4?19M+_,0?/KP M&7P 20Z^K\F6H3QF8YV+<15T?5&/X:$:@WEF#!9X%!VO&8CR&,<2_W#8WQWP MU\5\-)-B'B;EP1P$_K9-1\ P?P:F89J2\=887)@RM5A2O4+FSR;)9"W_]+DS!-XXS]KU.I[=O!EW?]8RV6=@WLWPW"#IFD<3,,CS;;LQ:P3I-L,Y@ ML"]YPG$,YAQQ>:R#[M2 UY;P565PTD9I;O^%Y'#?IFEATXKM51@[Z9Z7F!=48-_"98 M?S#8>_%FDBP0 _@-O(SF(UFX@X1KUYQ*6*@2%BF"M=(0-&D(;B0(@W8VTC"+H:T;=RH&=V-:)OY7FPIQ%] M*VB:9]\:CF43'*Z;[EF"P!-:),MD(8UTT/WJ1:>2%BJE1:IH[40<2SKHWTH7 ME)9Z2FFA4EJDBM9.T;'<@X,%RR6Z$/0_.=H]6>@;N;#[M5%BY!AV5Q3Z1M"V M8$<3]),CD@S357DVQ<"";'->?0MO6IOSK_ORU*?3_@#O9E#2'A;G9>61S!%? M';8](KI*<@92O!1=&2-/Z!>MSJ^J&TXVY0'-*^&<9.7E&J,8T\) /%\2P@\W M10?-*>+T/U!+ P04 " #W@/I4*XG-61@$ !!$0 &0 'AL+W=O8VDZRVU]?VQ"2 .&T:58K;3#,/'Z>8>P9,]DQ_DVL 21Z MSM)<3*VUE,6-;8MX#1D10U9 KIXL&<^(5$.^LD7!@23&*4MMUW%&=D9H;LTF MYMX#GTW81J8TAP>.Q";+"'^Y@Y3MIA:V]C<>Z6HM]0U[-BG("IY ?BT>N!K9 M-4I",\@%93GBL)Q:M_AFCB/M8"S^H+ 31]=(2UDP]DT//B53R]&,((58:@BB M?K8PAS352(K'/Q6H5<^I'8^O]^B_&/%*S(((F+/T3YK(]=2*+)3 DFQ2^80OY!M"2 MLPS-62ZY"JQ0).0:S 7,=U._C,^]WO(1XB#QMWW$/'JP/O&3SO'!X5 M9+7BL"(FG=D2[5_%7Y^5*?HD(1-_=\6MQ/6[)OA+820C\.@1^'_JLSBF3;7&5;0-$=(IU*2_A1@9.[T_;&0X=9V)O MCQ5]Q^B$:5 S#2YG.D %IXRC M1/,D YDVJ#B]DJI_\V,[?4$;0H^BT9O80N M?#&C6N[H_\B%YT)MPI @R= "D-H$4C7@H*M& ESG\@L09:\B$D/>^2I+ A@? MQ< 9CAHQZ&5Y80S".@9A;PSN80F<&UUF60Y4'-2X6TW8>J&>%V#BI$_W96ZPI_Z=U5W-J;!72MZB3<"'/@&/WFHY7:FV5V%XBTX!'UH% M?,5> ;?; '\<-EN?+JMH[)Y)T4.S@*_8+518)ZUTY 8MJEUF43AN<+6/#JFJ ML*[,V5V@F&UR69Y7Z[OU]X%;U\N! M9(4Y\BZ85%7<7*Z!J-Y4&ZCG2\;D?J GJ+^:S/X#4$L#!!0 ( /> ^E3. M6@4@L ( ,8' 9 >&PO=V]R:W-H965TV\>MZC8VFT$_)9K1$U[#/&U=A;:YT/?5\E:\R(:HL"0VFE&.4PEJDV5$OMP@$[NQ%WJ'@1E= MK;4=\.-13E8X1_V03Z7I^97*DF;(%14<)*9C[SHK?@"\6=JK7!.ED( M\6P[=\NQ%U@@9)AHJT#,WQ8GR)@5,AC?2DVOVM(&UML']7?.N_&R( HG@GVE M2[T>>U<>+#$E&Z9G8O<>2S\]JY<(IMPO[,JU@0?)1FF1E<&&(*.\^"?[,@^U M@"@Z$A"5 9'C+C9RE+=$DW@DQ0ZD76W4;,-9==$&CG)[*',MS2PU<3J>X1;Y M!B&5(H.)X%J:/"D#H=S7-50Y27#LF<]'H=RB%[]^%?:#-R=L=BJ;G5/J\0]W>!N'_:A]-?*W#43=BJC["Z*_E?@6S#61&DR!(SQ>[ZEZ M&KHRN0P&ET&GR=))M-\\BEYEO/>_5%SO']CL5S;[?UAQ9CQ!KLW=WL1>J(=A MK>J"=J?;7'2#"FIP$FK:B*( #XG6 A8(RB69XK)5FW%'T$1Z>LL07I#(IH3Z MM6O9OG#W1*ZH@6&8&J6@/3#')XM7H^AHD;N;>B&TN7A=6I1V@9E/A="' MCKW\JZ<[_@Y02P,$% @ ]X#Z5"<>WQ(% P $0P !D !X;"]W;W)K M&ULK5==;]HP%/TK5C9-G=21+Y)N#"*U!+1-JE2U MZO8P[<$D%V(UB3/;0-=?/]L)&10WHRT\@#_N.<<^U[(OPS5E=SP#$.B^R$L^ MLC(AJH%M\R2# O,>K:"4,W/*"BQDERUL7C' J085N>TY3F@7F)16--1C5RP: MTJ7(20E7#/%E46#VYP)RNAY9KK49N":+3*@!.QI6> $W(&ZK*R9[=LN2D@)* M3FB)&,Q'UKD[F(8J7@=\)[#F6VVD=C*C]$YUOJ8CRU$+@AP2H1BP_%G!&/)< M$0L MD3@17<,*RB6@.:,%&M-2,)EK+AUMO>$MH\N)6O&T:1,(37@XVY\V(&WI0^M&=[&C NO MD_#;,N\AQSM%GN-YAO6,#X'[&NZ:MO,Z])CDDV.238]$ME.QOMMQOM=[-$85T3@G#Q BI)-PA-Y79RB!:.FXH$R0!ZQ> M<)/WP=Z*/IFLWP_S#6%Q'19LA4DG#*;NTWF&L&GGKE]XD,/6T_"EGI*BPH3) MPDJ8'.VD?>Z-=4RR.-QS_7%>_ALQ/=*"ZI386R6+? H6NKCDTN5E*>I'IAUM MZ]=S7;8]&K]P!V/7,!Z[@TE=GOZCKXOE2\P6I.0HA[F4&ULM53;CM,P$/T5 M*T@(I*6Y] *4-%(OH%V)%557P /BP4VFC57'#K:3+-)^/&,GS7:EMF^\Q!Y[ MYLPYX\S$C50'G0,8\EAPH6=>;DPY]7V=YE!0/9 E"+S92550@Z;:^[I40#,7 M5' _"H*)7U FO"1V9VN5Q+(RG E8*Z*KHJ#J[P*X;&9>Z!T/-FR?&WO@)W%) M]_ YGNY5FCY/4K&"A":24$4[&;>/)PNQM;?.?Q@T.B3/;%*ME(>K'&7S;S M$@(.J;$(%)<:EL"Y!4(:?SI,KT]I T_W1_0O3CMJV5(-2\E_LLSD,^^#1S+8 MT8J;C6QNH=/C"*:2:_L[^>B1M-)&%ETP,BB8:%?ZV-7A)""<7 B(NH#( M\6X3.98K:F@2*]D09;T1S6Z<5!>-Y)BPC_)@%-XRC#/)!FH0%9"=D@592F$4 MUDDC"9.3I4L/2I-W]BH%>^MJN6'Z0-ZLP%#&]=O8-\C$XOEIEW719HTN9 TC MS\BA#R_H. MX:@XQ[;%"]O_W(ZB.@D&813[]2D-_Z13\#GW;AYHXIZO;9K^M!\Y\[;3GMW; M>75/U9X)33CL,#08O$<&JIT!K6%DZ?IN*PW^.VZ;X]@$91WP?B>E.1HV03^( MDW]02P,$% @ ]X#Z5*B7=) ; P W@H !D !X;"]W;W)K&ULK59K;]HP%/TK5E9-G;01YT%X#"*5Q[1.JE3UM0_3/ICD M E&3F-D.=/]^MA,R""YC&WP@MG/.N3[7CGT'&\J>^1) H)UB'-@927(K'.BQ6Q8.:"'2)(=; MAGB1983]'$%*-T/+L;8#=\EB*=2 '0Y69 'W(!Y7MTSV[%HE3C+(>4)SQ& ^ MM*Z<_K2C\!KPE,"&[[21>1>U3P2Y&V$';?(Q>[KF$^XU/HGJ8[ M)CO_%WWZS]'WDN'5&\#3>MX?-P":)#Q**2\8H&]7,RZ8_(J_F]:[5/3-BNID MZ_,5B6!HR:.+ UN#%;Y]XP3XHRG9YQ2;G%-L>B:QO67QZV7QCZEOEV4&\BH M^0'JGE!?J6E!2JU :ZF;81WV@J WL->[B3X$N3@(VONHR2'*Z?G=AM;T$.4[ MOH=KU)[G=NVY?8KG5UVV#PTX?K?AT@#"G8;'0XS7]9L6#:!VQVPPJ T&1PU. MYW/0%Z/RB!@18+)9:O1V N.6JXZ*/9\ERG'V8-AI.#5I.;U&/J8F%,;=WO[/ M[+U3>^\<]?Y$TH*4M4$JBQ.21T;SG<.LXR[&#?-'0_WMF7%2R.F90I:YLWC=3%VI6N0QOC(Z8\=P_A$%F]EK?5;OJS\;@A;)#E' M* ^E0V)6?;/P0 ,,1 9 >&PO=V]R:W-H965T7HJ<'@A]95N,.?A>Y"6;65O.=Q/;9JLM M+A![(#MD\RFI>)Z5>$D! MJXH"T1^/.">'F>5:QXXOV6;+98<]G^[0!C]A_KQ;4M&R6Y8T*W#),E("BM5(CW".5UQ2(/&SQPN VQAQE.;L#'\#S4PQN;^[ #; !DV\9R$KP7&:< MW7^QMH5(K%3Q*]0A["?^L\@?@P'L '0@-_BS>8NXI<]-GOSGT<_$\-J\ M\12?=RUOJ@)3Q F=F");V_IF6UG[)FR'5GAFB>+&,-UC:_[K+V[H_&:2=4BR M>$BR9""RLP#X;0#\/G:U<#.U<$T!J&U#92OWBOT\"F3<]UUA+T'0\8/1.2J^ M1+E!Z#OGJ.02Y;M.Y+6HLSD&[1R#WB2+<4E$S;N:9L&0:38D63PD63(0V5D( MPC8$86^:?54[+4X_H+U8[QL,5O4.T91\\>G!N*CO6;D!%<,IX$0B=A7'C.%-[:LZ"34Z$_\D(MBPTHS_&AEL4FKC#4 M4(D!!:-Q8,[BJ)4PZI4P6:_%5Q$@:Y!F>26_BUH1.5F] ORMRO8HQR5G/U,D MNO#/$W^:()<@/QCK>AB80J@Q)2:F )K5&+5JC/ZOA%+RB:YWI-3H,L C-QQK M"AI04>CYFH0F+C@*- U-7)X?F444->9I,]2HDS;.@ZLMXH41Y>E+ MW8B"6C8G1E1XI?2YG>.%VRM*?+EFWR.+:Y)%_ZXQHCQ=%1/HH@(:4:%[115X M4@7VJK(D7)3[#.7YC].F4)>M>W!H*B0X5LB?U+1FK&Z)@:$;Z:)7W.:'O;&X>/ZIRM]3^ZDX5KZ(_E M#84Z!)_HZ^N-SXANLI*!'*_%4,Y#)#RE]8U!W>!DIX[$+X2+ [9ZW&*48BH! MXOV:B U#3E >V\S_Q=02P,$% @ ]X#Z5.P"KA%, @ :@4 !D !X M;"]W;W)K&ULG51A;YLP$/TK)S9-K=0%0I-TR@"I M:3JUTRI%C;I]F/;!@4NP8F-JF]#NU\\VA&95BJ;Q 7SVO>=WQN^B6LBMRA$U M/'%6J-C+M2ZGOJ_2'#E1 U%B85;60G*B32@WOBHEDLR!.//#()CXG-#"2R(W MMY!))"K-:($+":KBG,CG&3)1Q][0VT_X$5A Q3;1F(^>SP"AFS M1$;&8\OI=5M:X.%XS_[%U6YJ61&%5X+]H)G.8^^3!QFN2<7TO:AOL*W'"4P% M4^X-=9,[NO @K906O 4;!9P6S9<\M>=P C#-P!A"PB=[F8CIW).-$DB*6J0 M-MNPV8$KU:&-.%K8G[+4TJQ2@]/)LEHI?*RPT'"],V\%)W/4A#)U"A_A]6KD M:[.G1?IIRS]K^,,W^(=P)PJ=*[@N,LS^QOM&:RA;V$7RLV@'!R!F$0 MAO"PG,/)^],>WO/N(,X=[_D_'@3\_&8RX%8C5[^.U=W0C8[362]-54E2C#UC M%H5RAU[RX=UP$GSN$3OJQ([ZV).E%NG6>**L9)J;.PFE%!M)^!F4**G(@%0Z M%Y+^?GWDC?1^\B$\(Y$]*L>=RO%_JGR1!X2+ZOC%:L@GCMSVEETR#-HG\G>' MNOR#^\]1;IS+%:26N;%"-]LUDLO&/R_I31>Z(W)#"P4,UP8:#"Z,"MDXNPFT M*)V;5D(;;[IA;IHA2IM@UM="Z'U@-^C::_('4$L#!!0 ( /> ^E3KYHU$ M0 , "84 - >&PODEX3"MSM:SHD[?@C"9S+J_WXQ<6N"2A5[1[A.A5JX4+ XB)Q\>)']+&I'N[TNOAYT:K MX9YCY+Z7O$7%B(F'N$F)Y>NUCEJ' \M@A<.Z3$:#K)";:HF("YC,-&?!(Q5# M,J:"3Q0'5D9S+E8NW(' M!"%"K0I4V.E#9'JR<%MUX,*KG5R+@ME<[L,[O>D M'KX'K'M@D O1&.P0%Q@-2JHU4_+&=.Q@&WP&!77[?E4:AS-%5^U.EVP(]F:2 M3 J5,M6D:9-U:#00+ ,[BL_F<-=%&0*H=9&;1LKIK)#4>E@SZH:1G3(A[N#Q M_IGM:"^SK3VU.RJ;IC%4-YV,ZX#^MIK3WI:-7J0;E/RQT%\69CK2]J%6V*UB M&5_:_C)K#&#J;5R=EJ58?19\)G/F)G]TPM& KGG!O%#\R62#4IF: %,D>&1* M\^EVY+>BY3U;ZG4Y+3/<<^<$/?_;=9XQR105VZ9-[;_E57ZQXZCW6I;MM\J^ M8:_'^IW]UDUV3\%D? HF3Z(F^Z=@,CD!D[U7^]8\:#*L3QE;1YF=@TP3#># M."0_X&@J-DF#R8(+S67=F_,T9?+9><;(:SHQ?P3MZ)OQ*W#O?12NWU/AYC^# MHS]02P,$% @ ]X#Z5)>*NQS $P( L !?3T\$MP> M:4#M.*2VBZD8_1!2:5K5N %(MB6/:(7->=I3W;+T]!;X"O.DQQ0FE(2S,.\,W2?S+W\PPU1>5*(Y5; M&GC3Y?YVX$G1H2)8%II%R=.B':5_'522[% MJF,SMD.G\^O'"45[,UNN]L63EP8[QCVYB7U\33Z]:/.\UOJ9?2NELN-HZ]SN MLM^W^19*;O_0.U#^S$:;DCM?-$]]NS/ "[L%<*7L)X/!J%]RH:+/GXY]+4T? M%[2#W FM?&5=\2C@Q?Y[OBZRO;!B+:1PK^.H^2PA8J50HA3?H1A'@XC9K7[Y M2QOQ72O'Y2HW6LIQ%!]./()Q(O]/]:J&?.!KV]0XOK[G'F056"S#U]?A_<%,0_R0(,B4@TTX@ M5P_^<#>;(\B,@,PZA&Q%?2M[<3Q/7A"0%V$AOW!AV".7%; [X+8R4'\!1S >4+/X M("S>-9=5RHW)= GO@W]JWE5))'-@E<]_O&]<2#*L?1:W\,.$&,"(EDCBP25;5VL+7 MRC=B,W^?'>:BW!%W*8_66B&F[!%WHH]FHKD'VXHFY8_XEPODP#@5-I<:CY>$ M$DG2A4C8F4^B)-C?,25EE*1+H[ SC$FF+1TXY=U84G))NI1+:Y@GE%R27RB7 M=V-(62;ISC(U*\:D3).$SEFHE7;[5E/B20*+A\;$^5]"B2<)+!YR1F]'DQ)/ M$E@\[\_HO:/2\>8))9ZT$_'T_+"JUT0:8U+F20.;YQ3FTOA>32N:E'G2P.8Y MA;EP6S\_W6),U-E)1R3QK8/<00,A44&).R4!K80J=*0NEH=,?$A/+,J4LE :VT+M+X1Y+ M!O%%7<*[XY2%LL 6.H'95+/%#F-2%LH"6^@$YJS<2?T*>&/@@*FC1NNWB\7%FU_:')EV6_#EVSW#7K&'0RF8;^YXSJ9?9SYFAQ M[N)?)K:KU7897]OEYR$>\R^#PU?;[](FQER-%DV_CGE>A=/^?CJ%ZT'&E\G5 MZ.UC7O5O'U*%TD$*05H^R"#(R@BOJK01Z*^JM!'HKZJT$>BOJ MK01Z*^JM!'HKZJT$>BOJK01Z&^IM!'H;ZFT$>AOJ;01ZVV"SA$!O0[V-0&]# MO8U ;T.]C4!O0[V-0&]#O8U ;T.]C4!O1[V=0&]'O9U ;T>]G4!O1[V=0&\? M;'83Z.VHMQ/H[:BW$^CMJ+<3Z.VHMQ/H[:BW$^A=H]XU@=XUZEW_I]XIG_UW7VSI;#)^VUGR MO6U5UGZ2+$.P#XSY;$F5]JFQ5,>1N7&5#O'1+9C5V4HOB(G!8,0R4P>J0S\T M-9+I^(GF>EV&WO,VOO:%J2>)H](GON[,:N__CG:W--*%_4QG[5_H*>?4$L! A0#% @ M]X#Z5 =!36*! L0 ! ( ! &1O8U!R;W!S+V%P M<"YX;6Q02P$"% ,4 " #W@/I4.&PO=&AE;64O=&AE;64Q+GAM;%!+ M 0(4 Q0 ( /> ^E0.I?_-Q 4 +X> 8 " @0T( !X M;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ ]X#Z5([*._@( P 7PH !@ ("! ME10 'AL+W=O ^E0I M($(RJ0@ -4R 8 " @=,7 !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ M]X#Z5)B7"2LO!@ 1QD !@ ("!4"D 'AL+W=O&PO=V]R M:W-H965T&UL4$L! A0#% @ ]X#Z5)-V0/4B!@ WP\ M !@ ("!'CP 'AL+W=O ^E1D6,?46P4 + - 9 " @79" !X M;"]W;W)K&UL4$L! A0#% @ ]X#Z5&"OQFS& M!P 2Q( !D ("!"$@ 'AL+W=O&PO=V]R:W-H965T M^E31>*P9-@L %LD 9 " @798 !X;"]W;W)K&UL4$L! A0#% @ ]X#Z5']:9M?I!P >!, !D M ("!XV, 'AL+W=O&PO=V]R M:W-H965T ^E3Z$2J9I , +$( M 9 " @1]S !X;"]W;W)K&UL M4$L! A0#% @ ]X#Z5-5 & #]$0 &0 @('.>@ >&PO=V]R:W-H965T ^E3[B\ICZ , ( ) 9 M " @>6! !X;"]W;W)K&UL4$L! A0#% @ M]X#Z5*J)A_=N P .P@ !D ("!!(8 'AL+W=O&UL4$L! A0#% @ ]X#Z5*BY93 6 P MA@8 !D ("!_I( 'AL+W=O&PO=V]R:W-H965T ^E2O MA4ELM ( /8% 9 " @5N: !X;"]W;W)K&UL4$L! A0#% @ ]X#Z5,=ZJ1*% P _P< !D M ("!1IT 'AL+W=O&PO=V]R:W-H M965T ^E0OG<$V\04 -LJ 9 M " @:RF !X;"]W;W)K&UL4$L! M A0#% @ ]X#Z5/V[T0 ." GDX !D ("!U*P 'AL M+W=O&PO=V]R:W-H965T ^E3><0'<:@( #H& 9 " M@<&W !X;"]W;W)K&UL4$L! A0#% @ ]X#Z M5"N4_.36 P S1, !D ("!8KH 'AL+W=O&PO=V]R:W-H965T ^E3AP_4,\ , @4 9 " @2_! !X;"]W;W)K M&UL4$L! A0#% @ ]X#Z5+3Y^IGA P Z@P M !D ("!5L4 'AL+W=O&PO=V]R:W-H965T ^E13N=-D MP@( (D' 9 " @>_, !X;"]W;W)K&UL4$L! A0#% @ ]X#Z5!_6+![) @ [P< !D M ("!Z,\ 'AL+W=O&PO=V]R:W-H965T M ^E2$'PY4&UL4$L! A0# M% @ ]X#Z5([=R&PO=V]R:W-H965T ^E24='I>I 0 'L= 9 " @=CI M !X;"]W;W)K&UL4$L! A0#% @ ]X#Z5 UV M.6.2! 41P !D ("!L^X 'AL+W=O&PO=V]R:W-H965T ^E3.6@4@L ( ,8' 9 " @&UL4$L! A0#% @ ]X#Z5"<>WQ(% P $0P !D M ("!LOH 'AL+W=O&PO M=V]R:W-H965T ^E2HEW20&P, M -X* 9 " @7D 0!X;"]W;W)K&UL4$L! A0#% @ ]X#Z5#8E9]L_! PQ$ !D ("! MRP,! 'AL+W=O&PO=V]R:W-H965T ^E3KYHU$0 , "84 - M " <0* 0!X;"]S='EL97,N>&UL4$L! A0#% @ ]X#Z5)>*NQS M $P( L ( !+PX! %]R96QS+RYR96QS4$L! A0#% M @ ]X#Z5#0E-J@X! 4R( \ ( !& \! 'AL+W=O ^E2AE^J4R0$ * > : M " 7T3 0!X;"]? ^E0HM&@3PP$ (D> 3 " 7X5 0!;0V]N=&5N=%]4 ?>7!E&UL4$L%!@ [ #L %! '(7 0 $! end XML 63 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 64 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 65 FilingSummary.xml IDEA: XBRL DOCUMENT 3.22.2 html 206 240 1 false 54 0 false 6 false false R1.htm 0001001 - Document - Cover Sheet http://www.calix.com/role/Cover Cover Cover 1 false false R2.htm 1001002 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS Sheet http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS CONDENSED CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 1002003 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) Sheet http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSParenthetical CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) Statements 3 false false R4.htm 1003004 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME Sheet http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME Statements 4 false false R5.htm 1004005 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Sheet http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Statements 5 false false R6.htm 1005006 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 6 false false R7.htm 2101101 - Disclosure - Company and Basis of Presentation Sheet http://www.calix.com/role/CompanyandBasisofPresentation Company and Basis of Presentation Notes 7 false false R8.htm 2102102 - Disclosure - Significant Accounting Policies Sheet http://www.calix.com/role/SignificantAccountingPolicies Significant Accounting Policies Notes 8 false false R9.htm 2104103 - Disclosure - Cash, Cash Equivalents, and Marketable Securities Sheet http://www.calix.com/role/CashCashEquivalentsandMarketableSecurities Cash, Cash Equivalents, and Marketable Securities Notes 9 false false R10.htm 2108104 - Disclosure - Fair Value Measurements Sheet http://www.calix.com/role/FairValueMeasurements Fair Value Measurements Notes 10 false false R11.htm 2111105 - Disclosure - Balance Sheet Details Sheet http://www.calix.com/role/BalanceSheetDetails Balance Sheet Details Notes 11 false false R12.htm 2120106 - Disclosure - Commitments and Contingencies Sheet http://www.calix.com/role/CommitmentsandContingencies Commitments and Contingencies Notes 12 false false R13.htm 2125107 - Disclosure - Stockholders' Equity Sheet http://www.calix.com/role/StockholdersEquity Stockholders' Equity Notes 13 false false R14.htm 2131108 - Disclosure - Revenue from Contracts with Customers Sheet http://www.calix.com/role/RevenuefromContractswithCustomers Revenue from Contracts with Customers Notes 14 false false R15.htm 2138109 - Disclosure - Income Taxes Sheet http://www.calix.com/role/IncomeTaxes Income Taxes Notes 15 false false R16.htm 2141110 - Disclosure - Net Income Per Common Share Sheet http://www.calix.com/role/NetIncomePerCommonShare Net Income Per Common Share Notes 16 false false R17.htm 2144111 - Disclosure - Subsequent Event Sheet http://www.calix.com/role/SubsequentEvent Subsequent Event Notes 17 false false R18.htm 2203201 - Disclosure - Significant Accounting Policies (Policies) Sheet http://www.calix.com/role/SignificantAccountingPoliciesPolicies Significant Accounting Policies (Policies) Policies http://www.calix.com/role/SignificantAccountingPolicies 18 false false R19.htm 2305301 - Disclosure - Cash, Cash Equivalents and Restricted Cash (Tables) Sheet http://www.calix.com/role/CashCashEquivalentsandRestrictedCashTables Cash, Cash Equivalents and Restricted Cash (Tables) Tables 19 false false R20.htm 2309302 - Disclosure - Fair Value Measures and Disclosures (Tables) Sheet http://www.calix.com/role/FairValueMeasuresandDisclosuresTables Fair Value Measures and Disclosures (Tables) Tables 20 false false R21.htm 2312303 - Disclosure - Balance Sheet Details (Tables) Sheet http://www.calix.com/role/BalanceSheetDetailsTables Balance Sheet Details (Tables) Tables http://www.calix.com/role/BalanceSheetDetails 21 false false R22.htm 2321304 - Disclosure - Commitments and Contingencies (Tables) Sheet http://www.calix.com/role/CommitmentsandContingenciesTables Commitments and Contingencies (Tables) Tables http://www.calix.com/role/CommitmentsandContingencies 22 false false R23.htm 2326305 - Disclosure - Stockholders' Equity (Tables) Sheet http://www.calix.com/role/StockholdersEquityTables Stockholders' Equity (Tables) Tables http://www.calix.com/role/StockholdersEquity 23 false false R24.htm 2332306 - Disclosure - Revenue from Contracts with Customers (Tables) Sheet http://www.calix.com/role/RevenuefromContractswithCustomersTables Revenue from Contracts with Customers (Tables) Tables http://www.calix.com/role/RevenuefromContractswithCustomers 24 false false R25.htm 2339307 - Disclosure - Income Taxes (Tables) Sheet http://www.calix.com/role/IncomeTaxesTables Income Taxes (Tables) Tables http://www.calix.com/role/IncomeTaxes 25 false false R26.htm 2342308 - Disclosure - Net Income Per Common Share (Tables) Sheet http://www.calix.com/role/NetIncomePerCommonShareTables Net Income Per Common Share (Tables) Tables http://www.calix.com/role/NetIncomePerCommonShare 26 false false R27.htm 2406401 - Disclosure - Cash, Cash Equivalents, and Marketable Securities - Summary of Cash and Cash Equivalents (Details) Sheet http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails Cash, Cash Equivalents, and Marketable Securities - Summary of Cash and Cash Equivalents (Details) Details 27 false false R28.htm 2407402 - Disclosure - Cash, Cash Equivalents, and Marketable Securities - Schedule of Marketable Securities (Details) Sheet http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails Cash, Cash Equivalents, and Marketable Securities - Schedule of Marketable Securities (Details) Details 28 false false R29.htm 2410403 - Disclosure - Fair Value Measures and Disclosures (Details) Sheet http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails Fair Value Measures and Disclosures (Details) Details http://www.calix.com/role/FairValueMeasuresandDisclosuresTables 29 false false R30.htm 2413404 - Disclosure - Balance Sheet Details - Accounts Receivable (Details) Sheet http://www.calix.com/role/BalanceSheetDetailsAccountsReceivableDetails Balance Sheet Details - Accounts Receivable (Details) Details 30 false false R31.htm 2414405 - Disclosure - Balance Sheet Details - Inventory (Details) Sheet http://www.calix.com/role/BalanceSheetDetailsInventoryDetails Balance Sheet Details - Inventory (Details) Details 31 false false R32.htm 2415406 - Disclosure - Balance Sheet Details - Property and Equipment, net (Details) Sheet http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails Balance Sheet Details - Property and Equipment, net (Details) Details 32 false false R33.htm 2416407 - Disclosure - Balance Sheet Details - Other Long-Term Assets (Details) Sheet http://www.calix.com/role/BalanceSheetDetailsOtherLongTermAssetsDetails Balance Sheet Details - Other Long-Term Assets (Details) Details 33 false false R34.htm 2417408 - Disclosure - Balance Sheet Details - Narrative (Details) Sheet http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails Balance Sheet Details - Narrative (Details) Details 34 false false R35.htm 2418409 - Disclosure - Balance Sheet Details - Accrued Liabilities (Details) Sheet http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails Balance Sheet Details - Accrued Liabilities (Details) Details 35 false false R36.htm 2419410 - Disclosure - Balance Sheet Details - Warranty Reserve (Details) Sheet http://www.calix.com/role/BalanceSheetDetailsWarrantyReserveDetails Balance Sheet Details - Warranty Reserve (Details) Details 36 false false R37.htm 2422411 - Disclosure - Commitments and Contingencies - Operating Leases (Details) Sheet http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails Commitments and Contingencies - Operating Leases (Details) Details 37 false false R38.htm 2423412 - Disclosure - Commitments and Contingencies - Operating Lease Liability (Details) Sheet http://www.calix.com/role/CommitmentsandContingenciesOperatingLeaseLiabilityDetails Commitments and Contingencies - Operating Lease Liability (Details) Details 38 false false R39.htm 2424413 - Disclosure - Commitments and Contingencies - Narrative (Details) Sheet http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails Commitments and Contingencies - Narrative (Details) Details 39 false false R40.htm 2427414 - Disclosure - Stockholders' Equity - 2019 Equity Incentive Award Plan (Details) Sheet http://www.calix.com/role/StockholdersEquity2019EquityIncentiveAwardPlanDetails Stockholders' Equity - 2019 Equity Incentive Award Plan (Details) Details 40 false false R41.htm 2428415 - Disclosure - Stockholders' Equity - Stock Options (Details) Sheet http://www.calix.com/role/StockholdersEquityStockOptionsDetails Stockholders' Equity - Stock Options (Details) Details 41 false false R42.htm 2429416 - Disclosure - Stockholders' Equity - Employee Stock Purchase Plans (Details) Sheet http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails Stockholders' Equity - Employee Stock Purchase Plans (Details) Details 42 false false R43.htm 2430417 - Disclosure - Stockholders' Equity - Stock-Based Compensation Expense (Details) Sheet http://www.calix.com/role/StockholdersEquityStockBasedCompensationExpenseDetails Stockholders' Equity - Stock-Based Compensation Expense (Details) Details 43 false false R44.htm 2433418 - Disclosure - Revenue from Contracts with Customers - Revenue (Details) Sheet http://www.calix.com/role/RevenuefromContractswithCustomersRevenueDetails Revenue from Contracts with Customers - Revenue (Details) Details 44 false false R45.htm 2434419 - Disclosure - Revenue from Contracts with Customers - Contract Asset and Liability (Details) Sheet http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails Revenue from Contracts with Customers - Contract Asset and Liability (Details) Details 45 false false R46.htm 2435420 - Disclosure - Revenue from Contracts with Customers - Performance Obligations (Details) Sheet http://www.calix.com/role/RevenuefromContractswithCustomersPerformanceObligationsDetails Revenue from Contracts with Customers - Performance Obligations (Details) Details 46 false false R47.htm 2436421 - Disclosure - Revenue from Contracts with Customers - Contract Costs (Details) Sheet http://www.calix.com/role/RevenuefromContractswithCustomersContractCostsDetails Revenue from Contracts with Customers - Contract Costs (Details) Details 47 false false R48.htm 2437422 - Disclosure - Revenue from Contracts with Customers - Concentration Risk (Details) Sheet http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails Revenue from Contracts with Customers - Concentration Risk (Details) Details 48 false false R49.htm 2440423 - Disclosure - Income Taxes - (Details) Sheet http://www.calix.com/role/IncomeTaxesDetails Income Taxes - (Details) Details http://www.calix.com/role/IncomeTaxesTables 49 false false R50.htm 2443424 - Disclosure - Net Income Per Common Share (Details) Sheet http://www.calix.com/role/NetIncomePerCommonShareDetails Net Income Per Common Share (Details) Details http://www.calix.com/role/NetIncomePerCommonShareTables 50 false false R51.htm 2445425 - Disclosure - Subsequent Events (Details) Sheet http://www.calix.com/role/SubsequentEventsDetails Subsequent Events (Details) Details http://www.calix.com/role/SubsequentEvent 51 false false All Reports Book All Reports calx-20220702.htm calx-20220702.xsd calx-20220702_cal.xml calx-20220702_def.xml calx-20220702_lab.xml calx-20220702_pre.xml calx_22q2ex311.htm calx_22q2ex3121.htm calx_22q2ex321.htm http://fasb.org/us-gaap/2022 http://xbrl.sec.gov/dei/2022 true true JSON 68 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "calx-20220702.htm": { "axisCustom": 0, "axisStandard": 22, "contextCount": 206, "dts": { "calculationLink": { "local": [ "calx-20220702_cal.xml" ] }, "definitionLink": { "local": [ "calx-20220702_def.xml" ] }, "inline": { "local": [ "calx-20220702.htm" ] }, "labelLink": { "local": [ "calx-20220702_lab.xml" ] }, "presentationLink": { "local": [ "calx-20220702_pre.xml" ] }, "schema": { "local": [ "calx-20220702.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd", "https://xbrl.fasb.org/srt/2022/elts/srt-roles-2022.xsd", "https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd", "https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd", "https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd", "https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd", "https://xbrl.sec.gov/country/2022/country-2022.xsd", "https://xbrl.sec.gov/dei/2022/dei-2022.xsd" ] } }, "elementCount": 400, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2022": 2, "http://xbrl.sec.gov/dei/2022": 5, "total": 7 }, "keyCustom": 24, "keyStandard": 216, "memberCustom": 16, "memberStandard": 36, "nsprefix": "calx", "nsuri": "http://www.calix.com/20220702", "report": { "R1": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "0001001 - Document - Cover", "role": "http://www.calix.com/role/Cover", "shortName": "Cover", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2108104 - Disclosure - Fair Value Measurements", "role": "http://www.calix.com/role/FairValueMeasurements", "shortName": "Fair Value Measurements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2111105 - Disclosure - Balance Sheet Details", "role": "http://www.calix.com/role/BalanceSheetDetails", "shortName": "Balance Sheet Details", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2120106 - Disclosure - Commitments and Contingencies", "role": "http://www.calix.com/role/CommitmentsandContingencies", "shortName": "Commitments and Contingencies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2125107 - Disclosure - Stockholders' Equity", "role": "http://www.calix.com/role/StockholdersEquity", "shortName": "Stockholders' Equity", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2131108 - Disclosure - Revenue from Contracts with Customers", "role": "http://www.calix.com/role/RevenuefromContractswithCustomers", "shortName": "Revenue from Contracts with Customers", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2138109 - Disclosure - Income Taxes", "role": "http://www.calix.com/role/IncomeTaxes", "shortName": "Income Taxes", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2141110 - Disclosure - Net Income Per Common Share", "role": "http://www.calix.com/role/NetIncomePerCommonShare", "shortName": "Net Income Per Common Share", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2144111 - Disclosure - Subsequent Event", "role": "http://www.calix.com/role/SubsequentEvent", "shortName": "Subsequent Event", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2203201 - Disclosure - Significant Accounting Policies (Policies)", "role": "http://www.calix.com/role/SignificantAccountingPoliciesPolicies", "shortName": "Significant Accounting Policies (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2305301 - Disclosure - Cash, Cash Equivalents and Restricted Cash (Tables)", "role": "http://www.calix.com/role/CashCashEquivalentsandRestrictedCashTables", "shortName": "Cash, Cash Equivalents and Restricted Cash (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1001002 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS", "role": "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "lang": "en-US", "name": "us-gaap:PrepaidExpenseAndOtherAssetsCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2309302 - Disclosure - Fair Value Measures and Disclosures (Tables)", "role": "http://www.calix.com/role/FairValueMeasuresandDisclosuresTables", "shortName": "Fair Value Measures and Disclosures (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2312303 - Disclosure - Balance Sheet Details (Tables)", "role": "http://www.calix.com/role/BalanceSheetDetailsTables", "shortName": "Balance Sheet Details (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2321304 - Disclosure - Commitments and Contingencies (Tables)", "role": "http://www.calix.com/role/CommitmentsandContingenciesTables", "shortName": "Commitments and Contingencies (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2326305 - Disclosure - Stockholders' Equity (Tables)", "role": "http://www.calix.com/role/StockholdersEquityTables", "shortName": "Stockholders' Equity (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2332306 - Disclosure - Revenue from Contracts with Customers (Tables)", "role": "http://www.calix.com/role/RevenuefromContractswithCustomersTables", "shortName": "Revenue from Contracts with Customers (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2339307 - Disclosure - Income Taxes (Tables)", "role": "http://www.calix.com/role/IncomeTaxesTables", "shortName": "Income Taxes (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2342308 - Disclosure - Net Income Per Common Share (Tables)", "role": "http://www.calix.com/role/NetIncomePerCommonShareTables", "shortName": "Net Income Per Common Share (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2406401 - Disclosure - Cash, Cash Equivalents, and Marketable Securities - Summary of Cash and Cash Equivalents (Details)", "role": "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails", "shortName": "Cash, Cash Equivalents, and Marketable Securities - Summary of Cash and Cash Equivalents (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "lang": "en-US", "name": "calx:CashCashEquivalentsAndMarketableSecurities", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DebtSecuritiesAvailableForSaleExcludingAccruedInterestCurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2407402 - Disclosure - Cash, Cash Equivalents, and Marketable Securities - Schedule of Marketable Securities (Details)", "role": "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails", "shortName": "Cash, Cash Equivalents, and Marketable Securities - Schedule of Marketable Securities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i6299e5a7796b43e08a4bfd0d7ff1d384_I20220702", "decimals": "-3", "lang": "en-US", "name": "us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLossCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DebtSecuritiesAvailableForSaleExcludingAccruedInterestCurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2410403 - Disclosure - Fair Value Measures and Disclosures (Details)", "role": "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails", "shortName": "Fair Value Measures and Disclosures (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i07f3f9f406a7442d9c68e54445cf6ad7_I20220702", "decimals": "-3", "lang": "en-US", "name": "us-gaap:AssetsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1002003 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)", "role": "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSParenthetical", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableGrossCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2413404 - Disclosure - Balance Sheet Details - Accounts Receivable (Details)", "role": "http://www.calix.com/role/BalanceSheetDetailsAccountsReceivableDetails", "shortName": "Balance Sheet Details - Accounts Receivable (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableGrossCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2414405 - Disclosure - Balance Sheet Details - Inventory (Details)", "role": "http://www.calix.com/role/BalanceSheetDetailsInventoryDetails", "shortName": "Balance Sheet Details - Inventory (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2415406 - Disclosure - Balance Sheet Details - Property and Equipment, net (Details)", "role": "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails", "shortName": "Balance Sheet Details - Property and Equipment, net (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfOtherAssetsNoncurrentTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:IntangibleAssetsNetExcludingGoodwill", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2416407 - Disclosure - Balance Sheet Details - Other Long-Term Assets (Details)", "role": "http://www.calix.com/role/BalanceSheetDetailsOtherLongTermAssetsDetails", "shortName": "Balance Sheet Details - Other Long-Term Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfOtherAssetsNoncurrentTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:IntangibleAssetsNetExcludingGoodwill", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AccruedLiabilitiesCurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2417408 - Disclosure - Balance Sheet Details - Narrative (Details)", "role": "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails", "shortName": "Balance Sheet Details - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i1394a2e08001466189f5659e30856c30_I20201231", "decimals": "-5", "lang": "en-US", "name": "us-gaap:RoyaltyGuaranteesCommitmentsAmount", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2418409 - Disclosure - Balance Sheet Details - Accrued Liabilities (Details)", "role": "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails", "shortName": "Balance Sheet Details - Accrued Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i7fa416f6771545ddbcfba5be2a431766_I20220402", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ProductWarrantyAccrual", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2419410 - Disclosure - Balance Sheet Details - Warranty Reserve (Details)", "role": "http://www.calix.com/role/BalanceSheetDetailsWarrantyReserveDetails", "shortName": "Balance Sheet Details - Warranty Reserve (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i7fa416f6771545ddbcfba5be2a431766_I20220402", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ProductWarrantyAccrual", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2422411 - Disclosure - Commitments and Contingencies - Operating Leases (Details)", "role": "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails", "shortName": "Commitments and Contingencies - Operating Leases (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseLiabilityCurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2423412 - Disclosure - Commitments and Contingencies - Operating Lease Liability (Details)", "role": "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeaseLiabilityDetails", "shortName": "Commitments and Contingencies - Operating Lease Liability (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R39": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2424413 - Disclosure - Commitments and Contingencies - Narrative (Details)", "role": "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails", "shortName": "Commitments and Contingencies - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i8ae72fc78d314add8d49721a4043eecb_D20220403-20220702", "decimals": "-5", "lang": "en-US", "name": "us-gaap:OperatingLeaseCost", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i8ae72fc78d314add8d49721a4043eecb_D20220403-20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1003004 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME", "role": "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i8ae72fc78d314add8d49721a4043eecb_D20220403-20220702", "decimals": "-3", "lang": "en-US", "name": "us-gaap:CostOfGoodsAndServicesSold", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "id13ade090c9642b38d900bfc2422b019_I20220702", "decimals": "-5", "first": true, "lang": "en-US", "name": "calx:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrantAdditionalShares", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2427414 - Disclosure - Stockholders' Equity - 2019 Equity Incentive Award Plan (Details)", "role": "http://www.calix.com/role/StockholdersEquity2019EquityIncentiveAwardPlanDetails", "shortName": "Stockholders' Equity - 2019 Equity Incentive Award Plan (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "id13ade090c9642b38d900bfc2422b019_I20220702", "decimals": "-5", "first": true, "lang": "en-US", "name": "calx:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrantAdditionalShares", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i8ae72fc78d314add8d49721a4043eecb_D20220403-20220702", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2428415 - Disclosure - Stockholders' Equity - Stock Options (Details)", "role": "http://www.calix.com/role/StockholdersEquityStockOptionsDetails", "shortName": "Stockholders' Equity - Stock Options (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i8ae72fc78d314add8d49721a4043eecb_D20220403-20220702", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "INF", "first": true, "lang": "en-US", "name": "calx:NumberOfEmployeeStockPurchasePlans", "reportCount": 1, "unitRef": "plan", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2429416 - Disclosure - Stockholders' Equity - Employee Stock Purchase Plans (Details)", "role": "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails", "shortName": "Stockholders' Equity - Employee Stock Purchase Plans (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i208953ca3e144c06977ea6cc6151c9ec_D20220101-20220702", "decimals": null, "lang": "en-US", "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i8ae72fc78d314add8d49721a4043eecb_D20220403-20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2430417 - Disclosure - Stockholders' Equity - Stock-Based Compensation Expense (Details)", "role": "http://www.calix.com/role/StockholdersEquityStockBasedCompensationExpenseDetails", "shortName": "Stockholders' Equity - Stock-Based Compensation Expense (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i8ae72fc78d314add8d49721a4043eecb_D20220403-20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i8ae72fc78d314add8d49721a4043eecb_D20220403-20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2433418 - Disclosure - Revenue from Contracts with Customers - Revenue (Details)", "role": "http://www.calix.com/role/RevenuefromContractswithCustomersRevenueDetails", "shortName": "Revenue from Contracts with Customers - Revenue (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ie89a13f776ed4b65a46752ee20ee516f_D20220403-20220702", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetNet", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2434419 - Disclosure - Revenue from Contracts with Customers - Contract Asset and Liability (Details)", "role": "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails", "shortName": "Revenue from Contracts with Customers - Contract Asset and Liability (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetNet", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2435420 - Disclosure - Revenue from Contracts with Customers - Performance Obligations (Details)", "role": "http://www.calix.com/role/RevenuefromContractswithCustomersPerformanceObligationsDetails", "shortName": "Revenue from Contracts with Customers - Performance Obligations (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia1ddd97395d949e792fc7c1a1794e9a6_I20220702", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:CapitalizedContractCostGross", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2436421 - Disclosure - Revenue from Contracts with Customers - Contract Costs (Details)", "role": "http://www.calix.com/role/RevenuefromContractswithCustomersContractCostsDetails", "shortName": "Revenue from Contracts with Customers - Contract Costs (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ifaf995db2c3a445e863a3c028f3c48e4_I20211231", "decimals": "-5", "lang": "en-US", "name": "us-gaap:CapitalizedContractCostGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i08553a463dd94e5c8c77853f0ec0e7d5_D20210101-20211231", "decimals": "2", "first": true, "lang": "en-US", "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2437422 - Disclosure - Revenue from Contracts with Customers - Concentration Risk (Details)", "role": "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails", "shortName": "Revenue from Contracts with Customers - Concentration Risk (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i08553a463dd94e5c8c77853f0ec0e7d5_D20210101-20211231", "decimals": "2", "first": true, "lang": "en-US", "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i8ae72fc78d314add8d49721a4043eecb_D20220403-20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2440423 - Disclosure - Income Taxes - (Details)", "role": "http://www.calix.com/role/IncomeTaxesDetails", "shortName": "Income Taxes - (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i8ae72fc78d314add8d49721a4043eecb_D20220403-20220702", "decimals": "3", "lang": "en-US", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia06c98703938499da9a908d4ad93fa35_I20201231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CommonStockSharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1004005 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "role": "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia06c98703938499da9a908d4ad93fa35_I20201231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CommonStockSharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i8ae72fc78d314add8d49721a4043eecb_D20220403-20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2443424 - Disclosure - Net Income Per Common Share (Details)", "role": "http://www.calix.com/role/NetIncomePerCommonShareDetails", "shortName": "Net Income Per Common Share (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "i8ae72fc78d314add8d49721a4043eecb_D20220403-20220702", "decimals": "-3", "lang": "en-US", "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia7277a8f337645adba511d9819804399_D20220701-20220726", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockRepurchaseProgramPeriodInForce1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2445425 - Disclosure - Subsequent Events (Details)", "role": "http://www.calix.com/role/SubsequentEventsDetails", "shortName": "Subsequent Events (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "ia7277a8f337645adba511d9819804399_D20220701-20220726", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockRepurchaseProgramPeriodInForce1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1005006 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS", "role": "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": "-3", "lang": "en-US", "name": "us-gaap:Depreciation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2101101 - Disclosure - Company and Basis of Presentation", "role": "http://www.calix.com/role/CompanyandBasisofPresentation", "shortName": "Company and Basis of Presentation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2102102 - Disclosure - Significant Accounting Policies", "role": "http://www.calix.com/role/SignificantAccountingPolicies", "shortName": "Significant Accounting Policies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CashCashEquivalentsAndMarketableSecuritiesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2104103 - Disclosure - Cash, Cash Equivalents, and Marketable Securities", "role": "http://www.calix.com/role/CashCashEquivalentsandMarketableSecurities", "shortName": "Cash, Cash Equivalents, and Marketable Securities", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "calx-20220702.htm", "contextRef": "if2e204d145c7478f8b6c60906a437ade_D20220101-20220702", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CashCashEquivalentsAndMarketableSecuritiesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 54, "tag": { "calx_A2017NonqualifiedEmployeeStockPurchasePlanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "2017 Nonqualified Employee Stock Purchase Plan", "label": "2017 Nonqualified Employee Stock Purchase Plan [Member]", "terseLabel": "2017 Nonqualified Employee Stock Purchase Plan" } } }, "localname": "A2017NonqualifiedEmployeeStockPurchasePlanMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "domainItemType" }, "calx_A2019EquityIncentiveAwardPlanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "2019 Equity Incentive Award Plan [Member]", "label": "2019 Equity Incentive Award Plan [Member]", "terseLabel": "2019 Equity Incentive Award Plan" } } }, "localname": "A2019EquityIncentiveAwardPlanMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquity2019EquityIncentiveAwardPlanDetails" ], "xbrltype": "domainItemType" }, "calx_A2021PerformanceTargetsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "2021 Performance Targets", "label": "2021 Performance Targets [Member]", "terseLabel": "2021 Performance Targets" } } }, "localname": "A2021PerformanceTargetsMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "domainItemType" }, "calx_AccruedCustomerRebates": { "auth_ref": [], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": 12.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accrued customer rebates.", "label": "Accrued Customer Rebates", "terseLabel": "Customer advances or rebates" } } }, "localname": "AccruedCustomerRebates", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "calx_AccruedExcessAndObsoleteInventoryAtContractManufacturer": { "auth_ref": [], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accrued excess and obsolete inventory at contract manufacturer.", "label": "Accrued Excess and Obsolete Inventory At Contract Manufacturer", "terseLabel": "Accrued customer rebates/prepayments", "verboseLabel": "Component inventory held by suppliers" } } }, "localname": "AccruedExcessAndObsoleteInventoryAtContractManufacturer", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails", "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "calx_AccruedFreight": { "auth_ref": [], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": 6.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accrued Freight", "label": "Accrued Freight", "terseLabel": "Freight" } } }, "localname": "AccruedFreight", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "calx_AmericasExUSMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Americas ex U.S.", "label": "Americas ex U.S. [Member]", "terseLabel": "Americas ex U.S." } } }, "localname": "AmericasExUSMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersRevenueDetails" ], "xbrltype": "domainItemType" }, "calx_CashCashEquivalentsAndMarketableSecurities": { "auth_ref": [], "calculation": { "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Cash, Cash Equivalents, And Marketable Securities", "label": "Cash, Cash Equivalents, And Marketable Securities", "totalLabel": "Total cash, cash equivalents, and marketable securities" } } }, "localname": "CashCashEquivalentsAndMarketableSecurities", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails" ], "xbrltype": "monetaryItemType" }, "calx_ContractWithCustomerAssetExpectedToBeBilledRemainderOfYearPercent": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Contract With Customer, Asset, Expected To Be Billed Remainder Of Year, Percent", "label": "Contract With Customer, Asset, Expected To Be Billed Remainder Of Year, Percent", "terseLabel": "Contract with customer, asset, expected to be billed remainder of year, percent" } } }, "localname": "ContractWithCustomerAssetExpectedToBeBilledRemainderOfYearPercent", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails" ], "xbrltype": "percentItemType" }, "calx_ContractwithCustomerAssetPriorPeriodNotRecognized": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Contract with Customer, Asset, Prior Period, Not Recognized", "label": "Contract with Customer, Asset, Prior Period, Not Recognized", "terseLabel": "Contract with customer, asset, prior period, not recognized" } } }, "localname": "ContractwithCustomerAssetPriorPeriodNotRecognized", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails" ], "xbrltype": "monetaryItemType" }, "calx_CostOfRevenueProductsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Cost Of Revenue, Products [Member]", "label": "Cost Of Revenue, Products [Member]", "terseLabel": "Products" } } }, "localname": "CostOfRevenueProductsMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockBasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "calx_CostOfRevenueServicesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Cost Of Revenue, Services [Member]", "label": "Cost Of Revenue, Services [Member]", "terseLabel": "Services" } } }, "localname": "CostOfRevenueServicesMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockBasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "calx_ExtendedWarrantyMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Extended Warranty", "label": "Extended Warranty [Member]", "terseLabel": "Extended warranty" } } }, "localname": "ExtendedWarrantyMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails" ], "xbrltype": "domainItemType" }, "calx_InterestAndOtherIncomeExpenseNonoperating": { "auth_ref": [], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Interest And Other Income (Expense), Nonoperating", "label": "Interest And Other Income (Expense), Nonoperating", "totalLabel": "Total interest and other income (expense), net" } } }, "localname": "InterestAndOtherIncomeExpenseNonoperating", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "calx_LesseeOperatingLeaseLiabilityTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Lessee, Operating Lease Liability", "label": "Lessee, Operating Lease Liability [Table Text Block]", "terseLabel": "Lessee, operating lease liability" } } }, "localname": "LesseeOperatingLeaseLiabilityTableTextBlock", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesTables" ], "xbrltype": "textBlockItemType" }, "calx_MiddleEastAndAfricaMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Middle East And Africa", "label": "Middle East And Africa [Member]", "terseLabel": "Middle East & Africa" } } }, "localname": "MiddleEastAndAfricaMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersRevenueDetails" ], "xbrltype": "domainItemType" }, "calx_NumberOfEmployeeStockPurchasePlans": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number Of Employee Stock Purchase Plans", "label": "Number Of Employee Stock Purchase Plans", "terseLabel": "Number of employee stock purchase plans" } } }, "localname": "NumberOfEmployeeStockPurchasePlans", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "integerItemType" }, "calx_OneCustomerMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "One Customer", "label": "One Customer [Member]", "terseLabel": "One Customer" } } }, "localname": "OneCustomerMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "calx_PaymentsForFinancingArrangements": { "auth_ref": [], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Payments For Financing Arrangements", "label": "Payments For Financing Arrangements", "negatedTerseLabel": "Payments related to financing arrangements" } } }, "localname": "PaymentsForFinancingArrangements", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "calx_PerformanceBasedStockOptionsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Performance Based Stock Options", "label": "Performance Based Stock Options [Member]", "terseLabel": "Performance Based Stock Options" } } }, "localname": "PerformanceBasedStockOptionsMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "domainItemType" }, "calx_ProductAndServicesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Product and Services", "label": "Product and Services [Member]", "terseLabel": "Products and services" } } }, "localname": "ProductAndServicesMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails" ], "xbrltype": "domainItemType" }, "calx_ProductReturnReserveCurrent": { "auth_ref": [], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": 11.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Product Return Reserve, Current", "label": "Product Return Reserve, Current", "terseLabel": "Product returns" } } }, "localname": "ProductReturnReserveCurrent", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "calx_RevenueShareObligationCurrent": { "auth_ref": [], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": 9.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Revenue Share Obligation, Current", "label": "Revenue Share Obligation, Current", "terseLabel": "Current portion of revenue share payments" } } }, "localname": "RevenueShareObligationCurrent", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "calx_SanJoseCaliforniaMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "San Jose, California", "label": "San Jose, California [Member]", "terseLabel": "San Jose, California" } } }, "localname": "SanJoseCaliforniaMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "domainItemType" }, "calx_ShareBasedCompensationArrangementByShareBasedPaymentAwardBookingsTargetAchievementPerformanceThresholdPercent": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-Based Compensation Arrangement By Share-Based Payment Award, Bookings, Target Achievement Performance Threshold, Percent", "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Bookings, Target Achievement Performance Threshold, Percent", "terseLabel": "Bookings, target achievement performance threshold, percent" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardBookingsTargetAchievementPerformanceThresholdPercent", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "percentItemType" }, "calx_ShareBasedCompensationArrangementByShareBasedPaymentAwardEmployeeTerminationPeriodFollowingPurchaseDateToReceiveSharesSubjectToRiskOfForfeiture": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-Based Compensation Arrangement By Share-Based Payment Award, Employee Termination Period Following Purchase Date To Receive Shares Subject To Risk Of Forfeiture", "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Employee Termination Period Following Purchase Date To Receive Shares Subject To Risk Of Forfeiture", "terseLabel": "Employee termination period following purchase date to receive shares subject to risk of forfeiture" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEmployeeTerminationPeriodFollowingPurchaseDateToReceiveSharesSubjectToRiskOfForfeiture", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "durationItemType" }, "calx_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumContributionPercent": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-Based Compensation Arrangement By Share-Based Payment Award, Maximum Contribution Percent", "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Maximum Contribution Percent", "terseLabel": "Maximum contribution percent (up to 25%)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumContributionPercent", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "percentItemType" }, "calx_ShareBasedCompensationArrangementByShareBasedPaymentAwardNetIncomeTargetAchievementPerformanceThresholdPercent": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-Based Compensation Arrangement By Share-Based Payment Award, Net Income, Target Achievement Performance Threshold, Percent", "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Net Income, Target Achievement Performance Threshold, Percent", "terseLabel": "Net income per share, target achievement performance threshold, percent" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNetIncomeTargetAchievementPerformanceThresholdPercent", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "percentItemType" }, "calx_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfOfferingPeriods": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-Based Compensation Arrangement By Share-Based Payment Award, Number Of Offering Periods", "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Number Of Offering Periods", "terseLabel": "Number of offering periods" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfOfferingPeriods", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "integerItemType" }, "calx_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorizedPerPurchasePeriod": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-Based Compensation Arrangement By Share-Based Payment Award, Number Of Shares Authorized Per Purchase Period", "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Number Of Shares Authorized Per Purchase Period", "terseLabel": "Maximum number of shares allocated per purchase period" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorizedPerPurchasePeriod", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "sharesItemType" }, "calx_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrantAdditionalShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share Based Compensation Arrangement By Share Based Payment Award Number Of Shares Available For Grant, Additional Shares", "label": "Share Based Compensation Arrangement By Share Based Payment Award Number Of Shares Available For Grant, Additional Shares", "terseLabel": "Increase in the number of shares of common stock issuable" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrantAdditionalShares", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquity2019EquityIncentiveAwardPlanDetails", "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "sharesItemType" }, "calx_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesGrantedIfTargetAchievementPerformanceThresholdNotMet": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-Based Compensation Arrangement By Share-Based Payment Award, Number Of Shares Granted If Target Achievement Performance Threshold Not Met", "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Number Of Shares Granted If Target Achievement Performance Threshold Not Met", "terseLabel": "Number of shares granted if no-GAAP income below 80% and bookings below 90% of target (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesGrantedIfTargetAchievementPerformanceThresholdNotMet", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "sharesItemType" }, "calx_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesAwardTargetAchievementPerformanceThresholdPercent": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-Based Compensation Arrangement By Share-Based Payment Award, Shares Award Target Achievement Performance Threshold, Percent", "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Shares Award Target Achievement Performance Threshold, Percent", "terseLabel": "Target achievement threshold for shares award sliding scale" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesAwardTargetAchievementPerformanceThresholdPercent", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "percentItemType" }, "calx_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesAwardWeightingPercentForTargetAchievementPerformanceThresholdPercent": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-Based Compensation Arrangement By Share-Based Payment Award, Shares Award Weighting Percent For Target Achievement Performance Threshold, Percent", "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Shares Award Weighting Percent For Target Achievement Performance Threshold, Percent", "terseLabel": "Shares award weighting percent" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesAwardWeightingPercentForTargetAchievementPerformanceThresholdPercent", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "percentItemType" }, "calx_SharebasedCompensationArrangementbySharebasedPaymentAwardPurchasePriceofCommonStockOfferingPeriod": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Offering Period", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Offering Period", "terseLabel": "Offering period" } } }, "localname": "SharebasedCompensationArrangementbySharebasedPaymentAwardPurchasePriceofCommonStockOfferingPeriod", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "durationItemType" }, "calx_ShortTermMarketableSecuritiesAndCashEquivalentsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Short-Term Marketable Securities And Cash Equivalents", "label": "Short-Term Marketable Securities And Cash Equivalents [Member]", "terseLabel": "Short-Term Marketable Securities And Cash Equivalents" } } }, "localname": "ShortTermMarketableSecuritiesAndCashEquivalentsMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails" ], "xbrltype": "domainItemType" }, "calx_ShortTermMarketableSecuritiesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Short-Term Marketable Securities", "label": "Short-Term Marketable Securities [Member]", "terseLabel": "Short-Term Marketable Securities" } } }, "localname": "ShortTermMarketableSecuritiesMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails" ], "xbrltype": "domainItemType" }, "calx_SoftwareMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Software", "label": "Software [Member]", "terseLabel": "Software" } } }, "localname": "SoftwareMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "calx_SystemsProductMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Systems Product [Member]", "label": "Systems Product [Member]", "terseLabel": "Systems" } } }, "localname": "SystemsProductMember", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "domainItemType" }, "calx_TaxesPayableCurrentExcludingAccruedIncomeTaxes": { "auth_ref": [], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": 7.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Taxes Payable, Current, Excluding Accrued Income Taxes", "label": "Taxes Payable, Current, Excluding Accrued Income Taxes", "terseLabel": "Taxes payable" } } }, "localname": "TaxesPayableCurrentExcludingAccruedIncomeTaxes", "nsuri": "http://www.calix.com/20220702", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "country_US": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "UNITED STATES", "terseLabel": "United States" } } }, "localname": "US", "nsuri": "http://xbrl.sec.gov/country/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersRevenueDetails" ], "xbrltype": "domainItemType" }, "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag", "terseLabel": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Area code of city", "label": "City Area Code", "terseLabel": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_CoverAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Cover page.", "label": "Cover [Abstract]" } } }, "localname": "CoverAbstract", "nsuri": "http://xbrl.sec.gov/dei/2022", "xbrltype": "stringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date", "terseLabel": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "gMonthDayItemType" }, "dei_DocumentFiscalPeriodFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.", "label": "Document Fiscal Period Focus", "terseLabel": "Document Fiscal Period Focus" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus", "terseLabel": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "gYearItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.", "label": "Document Period End Date", "terseLabel": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r474" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report", "terseLabel": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r475" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report", "terseLabel": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type", "terseLabel": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "submissionTypeItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One", "terseLabel": "Entity Address, Address Line One" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address, City or Town", "terseLabel": "Entity Address, City or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address, Postal Zip Code", "terseLabel": "Entity Address, Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address, State or Province", "terseLabel": "Entity Address, State or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r472" ], "lang": { "en-us": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Entity Central Index Key", "terseLabel": "Entity Central Index Key" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock, Shares Outstanding", "terseLabel": "Entity Common Stock, Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status", "terseLabel": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r472" ], "lang": { "en-us": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company", "terseLabel": "Entity Emerging Growth Company" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number", "terseLabel": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r472" ], "lang": { "en-us": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category", "terseLabel": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation, State or Country Code", "terseLabel": "Entity Incorporation, State or Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r483" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current", "terseLabel": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r472" ], "lang": { "en-us": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name", "terseLabel": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r472" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company", "terseLabel": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r472" ], "lang": { "en-us": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business", "terseLabel": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r472" ], "lang": { "en-us": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number", "terseLabel": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "employerIdItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number", "terseLabel": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r471" ], "lang": { "en-us": { "role": { "documentation": "Title of a 12(b) registered security.", "label": "Title of 12(b) Security", "terseLabel": "Title of 12(b) Security" } } }, "localname": "Security12bTitle", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r473" ], "lang": { "en-us": { "role": { "documentation": "Name of the Exchange on which a security is registered.", "label": "Security Exchange Name", "terseLabel": "Security Exchange Name" } } }, "localname": "SecurityExchangeName", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "edgarExchangeCodeItemType" }, "dei_TradingSymbol": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Trading symbol of an instrument as listed on an exchange.", "label": "Trading Symbol", "terseLabel": "Trading Symbol" } } }, "localname": "TradingSymbol", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.calix.com/role/Cover" ], "xbrltype": "tradingSymbolItemType" }, "srt_AsiaPacificMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Asia Pacific [Member]", "terseLabel": "Asia Pacific" } } }, "localname": "AsiaPacificMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersRevenueDetails" ], "xbrltype": "domainItemType" }, "srt_EuropeMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Europe [Member]", "terseLabel": "Europe" } } }, "localname": "EuropeMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersRevenueDetails" ], "xbrltype": "domainItemType" }, "srt_ExecutiveOfficerMember": { "auth_ref": [ "r141" ], "lang": { "en-us": { "role": { "label": "Executive Officer [Member]", "terseLabel": "Executive Officer" } } }, "localname": "ExecutiveOfficerMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "domainItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r140", "r243", "r249", "r447" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]", "terseLabel": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [ "r140", "r243", "r249", "r447" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]", "terseLabel": "Customer [Domain]" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "srt_ProductOrServiceAxis": { "auth_ref": [ "r136", "r196", "r197", "r243", "r247", "r413", "r444", "r445" ], "lang": { "en-us": { "role": { "label": "Product and Service [Axis]", "terseLabel": "Product and Service [Axis]" } } }, "localname": "ProductOrServiceAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" }, "srt_ProductsAndServicesDomain": { "auth_ref": [ "r136", "r196", "r197", "r243", "r247", "r413", "r444", "r445" ], "lang": { "en-us": { "role": { "label": "Product and Service [Domain]", "terseLabel": "Product and Service [Domain]" } } }, "localname": "ProductsAndServicesDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "domainItemType" }, "srt_SegmentGeographicalDomain": { "auth_ref": [ "r137", "r138", "r243", "r248", "r446", "r461", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]", "terseLabel": "Geographical [Domain]" } } }, "localname": "SegmentGeographicalDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails", "http://www.calix.com/role/RevenuefromContractswithCustomersRevenueDetails" ], "xbrltype": "domainItemType" }, "srt_StatementGeographicalAxis": { "auth_ref": [ "r137", "r138", "r243", "r248", "r446", "r458", "r461", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]", "terseLabel": "Geographical [Axis]" } } }, "localname": "StatementGeographicalAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails", "http://www.calix.com/role/RevenuefromContractswithCustomersRevenueDetails" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualAxis": { "auth_ref": [ "r141", "r375" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Axis]", "terseLabel": "Title of Individual [Axis]" } } }, "localname": "TitleOfIndividualAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Title of Individual [Domain]", "terseLabel": "Title of Individual [Domain]" } } }, "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountingPoliciesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]", "terseLabel": "Accounting Policies [Abstract]" } } }, "localname": "AccountingPoliciesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r34", "r378" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts Payable, Current", "verboseLabel": "Accounts payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableGrossCurrent": { "auth_ref": [ "r5", "r19", "r142", "r143" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccountsReceivableDetails": { "order": 2.0, "parentTag": "us-gaap_AccountsReceivableNetCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Accounts Receivable, before Allowance for Credit Loss, Current", "verboseLabel": "Accounts receivable" } } }, "localname": "AccountsReceivableGrossCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccountsReceivableDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableMember": { "auth_ref": [ "r459" ], "lang": { "en-us": { "role": { "documentation": "Due from customers or clients for goods or services that have been delivered or sold.", "label": "Accounts Receivable [Member]", "terseLabel": "Accounts Receivable" } } }, "localname": "AccountsReceivableMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsReceivableNetCurrent": { "auth_ref": [ "r142", "r143" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccountsReceivableDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Accounts Receivable, after Allowance for Credit Loss, Current", "totalLabel": "Accounts receivable, net", "verboseLabel": "Accounts receivable, net" } } }, "localname": "AccountsReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccountsReceivableDetails", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableNetCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Accounts Receivable, after Allowance for Credit Loss, Current [Abstract]", "verboseLabel": "Summary of accounts receivable, net" } } }, "localname": "AccountsReceivableNetCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccountsReceivableDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r36" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Liabilities, Current", "totalLabel": "Total accrued liabilities", "verboseLabel": "Accrued liabilities" } } }, "localname": "AccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails", "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Accrued Liabilities, Current [Abstract]", "verboseLabel": "Summary of accrued liabilities" } } }, "localname": "AccruedLiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AccruedProfessionalFeesCurrent": { "auth_ref": [ "r36" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": 5.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for professional fees, such as for legal and accounting services received. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Professional Fees, Current", "terseLabel": "Professional and consulting fees" } } }, "localname": "AccruedProfessionalFeesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "auth_ref": [ "r11", "r183" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails": { "order": 1.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.", "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "negatedLabel": "Accumulated depreciation and amortization" } } }, "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r22", "r45", "r46", "r47", "r434", "r452", "r453" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "verboseLabel": "Accumulated other comprehensive loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r44", "r47", "r54", "r55", "r56", "r87", "r88", "r89", "r335", "r374", "r448", "r449" ], "lang": { "en-us": { "role": { "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.", "label": "AOCI Attributable to Parent [Member]", "verboseLabel": "Accumulated Other Comprehensive Loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "domainItemType" }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "auth_ref": [ "r20" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.", "label": "Additional Paid in Capital, Common Stock", "verboseLabel": "Additional paid-in capital" } } }, "localname": "AdditionalPaidInCapitalCommonStock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r87", "r88", "r89", "r299", "r300", "r301", "r342" ], "lang": { "en-us": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid-in Capital [Member]", "terseLabel": "Additional Paid-in Capital" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "auth_ref": [ "r264", "r302", "r303" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.", "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition", "terseLabel": "Stock-based compensation" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]", "verboseLabel": "Adjustments to reconcile net income to net cash provided by operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "stringItemType" }, "us-gaap_AllocatedShareBasedCompensationExpense": { "auth_ref": [ "r294" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.", "label": "Share-Based Payment Arrangement, Expense", "verboseLabel": "Stock-based compensation" } } }, "localname": "AllocatedShareBasedCompensationExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockBasedCompensationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "auth_ref": [ "r26", "r144", "r156" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccountsReceivableDetails": { "order": 1.0, "parentTag": "us-gaap_AccountsReceivableNetCurrent", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.", "label": "Accounts Receivable, Allowance for Credit Loss, Current", "negatedLabel": "Allowance for doubtful accounts" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccountsReceivableDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r110" ], "lang": { "en-us": { "role": { "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "verboseLabel": "Potentially dilutive shares, weighted average (in shares)" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/NetIncomePerCommonShareDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_Assets": { "auth_ref": [ "r14", "r81", "r125", "r128", "r134", "r154", "r209", "r210", "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r332", "r336", "r355", "r376", "r378", "r419", "r432" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets", "totalLabel": "Total assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "verboseLabel": "ASSETS" } } }, "localname": "AssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r6", "r33", "r81", "r154", "r209", "r210", "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r332", "r336", "r355", "r376", "r378" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Current", "totalLabel": "Total current assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets, Current [Abstract]", "verboseLabel": "Current assets:" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsFairValueDisclosure": { "auth_ref": [ "r345" ], "calculation": { "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Fair Value Disclosure", "totalLabel": "Total assets" } } }, "localname": "AssetsFairValueDisclosure", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax": { "auth_ref": [ "r147" ], "calculation": { "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails": { "order": 1.0, "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLossCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before tax, of unrealized loss in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).", "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax", "negatedTerseLabel": "Gross Unrealized Losses" } } }, "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293" ], "lang": { "en-us": { "role": { "documentation": "Information by type of award under share-based payment arrangement.", "label": "Award Type [Axis]", "terseLabel": "Award Type [Axis]" } } }, "localname": "AwardTypeAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails", "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BalanceSheetLocationAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by location on balance sheet (statement of financial position).", "label": "Balance Sheet Location [Axis]", "terseLabel": "Balance Sheet Location [Axis]" } } }, "localname": "BalanceSheetLocationAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BalanceSheetLocationDomain": { "auth_ref": [ "r339", "r340" ], "lang": { "en-us": { "role": { "documentation": "Location in the balance sheet (statement of financial position).", "label": "Balance Sheet Location [Domain]", "terseLabel": "Balance Sheet Location [Domain]" } } }, "localname": "BalanceSheetLocationDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BalanceSheetRelatedDisclosuresAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Balance Sheet Related Disclosures [Abstract]", "terseLabel": "Balance Sheet Related Disclosures [Abstract]" } } }, "localname": "BalanceSheetRelatedDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).", "label": "Basis of Accounting, Policy [Policy Text Block]", "terseLabel": "Basis of Presentation" } } }, "localname": "BasisOfAccountingPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CapitalizedContractCostAmortization": { "auth_ref": [ "r169" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization expense for asset recognized from cost incurred to obtain or fulfill contract with customer.", "label": "Capitalized Contract Cost, Amortization", "terseLabel": "Capitalized contract cost, amortization" } } }, "localname": "CapitalizedContractCostAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalizedContractCostGross": { "auth_ref": [ "r168" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer.", "label": "Capitalized Contract Cost, Gross", "verboseLabel": "Capitalized contract cost, gross" } } }, "localname": "CapitalizedContractCostGross", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalizedContractCostImpairmentLoss": { "auth_ref": [ "r169" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of impairment loss for asset recognized from cost incurred to obtain or fulfill contract with customer.", "label": "Capitalized Contract Cost, Impairment Loss", "terseLabel": "Capitalized contract cost, impairment" } } }, "localname": "CapitalizedContractCostImpairmentLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Cash": { "auth_ref": [ "r9", "r378", "r456", "r457" ], "calculation": { "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails": { "order": 2.0, "parentTag": "us-gaap_CashAndCashEquivalentsAtCarryingValue", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Excludes cash and cash equivalents within disposal group and discontinued operation.", "label": "Cash", "terseLabel": "Cash" } } }, "localname": "Cash", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents [Abstract]", "terseLabel": "Cash and Cash Equivalents [Abstract]" } } }, "localname": "CashAndCashEquivalentsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r3", "r9", "r76" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 }, "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails": { "order": 2.0, "parentTag": "calx_CashCashEquivalentsAndMarketableSecurities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.", "label": "Cash and Cash Equivalents, at Carrying Value", "totalLabel": "Total cash and cash equivalents", "verboseLabel": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsAtCarryingValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsAxis": { "auth_ref": [ "r9" ], "lang": { "en-us": { "role": { "documentation": "Information by type of cash and cash equivalent balance.", "label": "Cash and Cash Equivalents [Axis]", "terseLabel": "Cash and Cash Equivalents [Axis]" } } }, "localname": "CashAndCashEquivalentsAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails", "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CashAndCashEquivalentsFairValueDisclosure": { "auth_ref": [], "calculation": { "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails": { "order": 2.0, "parentTag": "us-gaap_AssetsFairValueDisclosure", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Fair value portion of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash and Cash Equivalents, Fair Value Disclosure", "terseLabel": "Money market funds" } } }, "localname": "CashAndCashEquivalentsFairValueDisclosure", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Cash and Cash Equivalents [Line Items]", "terseLabel": "Cash and Cash Equivalents [Line Items]" } } }, "localname": "CashAndCashEquivalentsLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CashCashEquivalentsAndMarketableSecuritiesTextBlock": { "auth_ref": [ "r150" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of cash, cash equivalents, and debt and equity securities, including any unrealized or realized gain (loss).", "label": "Cash, Cash Equivalents, and Marketable Securities [Text Block]", "terseLabel": "Cash, Cash Equivalents, and Marketable Securities" } } }, "localname": "CashCashEquivalentsAndMarketableSecuritiesTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecurities" ], "xbrltype": "textBlockItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r71", "r76", "r77" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents", "periodEndLabel": "Cash and cash equivalents at end of period", "periodStartLabel": "Cash and cash equivalents at beginning of period" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r71", "r356" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "totalLabel": "Net increase (decrease) in cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashEquivalentsAtCarryingValue": { "auth_ref": [ "r9" ], "calculation": { "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails": { "order": 1.0, "parentTag": "us-gaap_CashAndCashEquivalentsAtCarryingValue", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.", "label": "Cash Equivalents, at Carrying Value", "terseLabel": "Cash equivalents" } } }, "localname": "CashEquivalentsAtCarryingValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashMember": { "auth_ref": [ "r9" ], "lang": { "en-us": { "role": { "documentation": "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.", "label": "Cash [Member]", "terseLabel": "Cash" } } }, "localname": "CashMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CommercialPaperMember": { "auth_ref": [ "r208" ], "lang": { "en-us": { "role": { "documentation": "Unsecured promissory note (generally negotiable) that provides institutions with short-term funds.", "label": "Commercial Paper [Member]", "terseLabel": "Commercial paper" } } }, "localname": "CommercialPaperMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails", "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CommitmentsAndContingencies": { "auth_ref": [ "r39", "r424", "r438" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.", "label": "Commitments and Contingencies", "verboseLabel": "Commitments and contingencies (See Note 6)" } } }, "localname": "CommitmentsAndContingencies", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Abstract]", "terseLabel": "Commitments and Contingencies Disclosure [Abstract]" } } }, "localname": "CommitmentsAndContingenciesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "auth_ref": [ "r189", "r190", "r191", "r198", "r460" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for commitments and contingencies.", "label": "Commitments and Contingencies Disclosure [Text Block]", "verboseLabel": "Commitments and Contingencies" } } }, "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingencies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r87", "r88", "r342" ], "lang": { "en-us": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock [Member]", "terseLabel": "Common Stock" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r18" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common Stock, Par or Stated Value Per Share", "verboseLabel": "Common stock, par value (in dollars per share)" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r18" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common Stock, Shares Authorized", "verboseLabel": "Common stock, shares authorized (in shares)" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r18" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Shares, Issued", "verboseLabel": "Common stock, shares issued (in shares)" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r18", "r226" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common Stock, Shares, Outstanding", "periodEndLabel": "Ending Balance (in shares)", "periodStartLabel": "Beginning Balance (in shares)", "verboseLabel": "Common stock, shares outstanding (in shares)" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSParenthetical", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r18", "r378" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common Stock, Value, Issued", "verboseLabel": "Common stock, $0.025 par value; 100,000 shares authorized; 65,241 shares issued and outstanding as of July 2, 2022, and 64,274 shares issued and outstanding as of December 31, 2021" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r50", "r52", "r53", "r59", "r427", "r440" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "Comprehensive income" } } }, "localname": "ComprehensiveIncomeNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComputerEquipmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Long lived, depreciable assets that are used in the creation, maintenance and utilization of information systems.", "label": "Computer Equipment [Member]", "terseLabel": "Computer equipment" } } }, "localname": "ComputerEquipmentMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ComputerSoftwareIntangibleAssetMember": { "auth_ref": [ "r175", "r178", "r329" ], "lang": { "en-us": { "role": { "documentation": "Collection of computer programs and related data that provide instructions to a computer, for example, but not limited to, application program, control module or operating system, that perform one or more particular functions or tasks.", "label": "Computer Software, Intangible Asset [Member]", "terseLabel": "Licensed Software" } } }, "localname": "ComputerSoftwareIntangibleAssetMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "auth_ref": [ "r119", "r120", "r140", "r352", "r353", "r459" ], "lang": { "en-us": { "role": { "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.", "label": "Concentration Risk Benchmark [Domain]", "terseLabel": "Concentration Risk Benchmark [Domain]" } } }, "localname": "ConcentrationRiskBenchmarkDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "auth_ref": [ "r119", "r120", "r140", "r352", "r353", "r455", "r459" ], "lang": { "en-us": { "role": { "documentation": "Information by benchmark of concentration risk.", "label": "Concentration Risk Benchmark [Axis]", "terseLabel": "Concentration Risk Benchmark [Axis]" } } }, "localname": "ConcentrationRiskByBenchmarkAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskByTypeAxis": { "auth_ref": [ "r119", "r120", "r140", "r352", "r353", "r455", "r459" ], "lang": { "en-us": { "role": { "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.", "label": "Concentration Risk Type [Axis]", "terseLabel": "Concentration Risk Type [Axis]" } } }, "localname": "ConcentrationRiskByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Concentration Risk [Line Items]", "terseLabel": "Concentration Risk [Line Items]" } } }, "localname": "ConcentrationRiskLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskPercentage1": { "auth_ref": [ "r119", "r120", "r140", "r352", "r353" ], "lang": { "en-us": { "role": { "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.", "label": "Concentration Risk, Percentage", "terseLabel": "Concentration risk, percentage" } } }, "localname": "ConcentrationRiskPercentage1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ConcentrationRiskTable": { "auth_ref": [ "r117", "r119", "r120", "r121", "r352", "r354", "r459" ], "lang": { "en-us": { "role": { "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.", "label": "Concentration Risk [Table]", "terseLabel": "Concentration Risk [Table]" } } }, "localname": "ConcentrationRiskTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskTypeDomain": { "auth_ref": [ "r119", "r120", "r140", "r352", "r353", "r459" ], "lang": { "en-us": { "role": { "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration.", "label": "Concentration Risk Type [Domain]", "terseLabel": "Concentration Risk Type [Domain]" } } }, "localname": "ConcentrationRiskTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "auth_ref": [ "r232" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.", "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]", "terseLabel": "Deferred revenue, by arrangement, disclosure" } } }, "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ContractWithCustomerAssetNet": { "auth_ref": [ "r229", "r231", "r244" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.", "label": "Contract with Customer, Asset, after Allowance for Credit Loss", "terseLabel": "Contract with customer, asset" } } }, "localname": "ContractWithCustomerAssetNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiability": { "auth_ref": [ "r229", "r230", "r244" ], "calculation": { "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "Contract with Customer, Liability", "totalLabel": "Deferred revenue" } } }, "localname": "ContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r229", "r230", "r244" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 }, "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails": { "order": 2.0, "parentTag": "us-gaap_ContractWithCustomerLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.", "label": "Contract with Customer, Liability, Current", "terseLabel": "Deferred revenue, current", "verboseLabel": "Deferred revenue" } } }, "localname": "ContractWithCustomerLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS", "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityNoncurrent": { "auth_ref": [ "r229", "r230", "r244" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails": { "order": 1.0, "parentTag": "us-gaap_ContractWithCustomerLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent.", "label": "Contract with Customer, Liability, Noncurrent", "terseLabel": "Deferred revenue, current", "verboseLabel": "Long-term portion of deferred revenue" } } }, "localname": "ContractWithCustomerLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS", "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r245" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.", "label": "Contract with Customer, Liability, Revenue Recognized", "terseLabel": "Contract with customer, liability, revenue recognized" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CorporateDebtSecuritiesMember": { "auth_ref": [ "r255", "r262", "r454" ], "lang": { "en-us": { "role": { "documentation": "Debt securities issued by domestic or foreign corporate business, banks and other entities with a promise of repayment.", "label": "Corporate Debt Securities [Member]", "terseLabel": "Corporate debt securities" } } }, "localname": "CorporateDebtSecuritiesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails", "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CostOfGoodsAndServicesSold": { "auth_ref": [ "r63", "r413" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.", "label": "Cost of Goods and Services Sold", "verboseLabel": "Cost of revenue" } } }, "localname": "CostOfGoodsAndServicesSold", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfRevenueAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cost of Revenue [Abstract]", "verboseLabel": "Cost of revenue:" } } }, "localname": "CostOfRevenueAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" }, "us-gaap_CustomerConcentrationRiskMember": { "auth_ref": [ "r118", "r140" ], "lang": { "en-us": { "role": { "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.", "label": "Customer Concentration Risk [Member]", "terseLabel": "Customer Concentration Risk" } } }, "localname": "CustomerConcentrationRiskMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLossCurrent": { "auth_ref": [ "r162" ], "calculation": { "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amortized cost excluding accrued interest, after allowance for credit loss, of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as current.", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Excluding Accrued Interest, after Allowance for Credit Loss, Current", "totalLabel": "Amortized Cost" } } }, "localname": "DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLossCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtSecuritiesAvailableForSaleExcludingAccruedInterestCurrent": { "auth_ref": [ "r162" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 5.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 }, "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails": { "order": 2.0, "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostExcludingAccruedInterestAfterAllowanceForCreditLossCurrent", "weight": 1.0 }, "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails": { "order": 1.0, "parentTag": "calx_CashCashEquivalentsAndMarketableSecurities", "weight": 1.0 }, "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails": { "order": 1.0, "parentTag": "us-gaap_AssetsFairValueDisclosure", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount excluding accrued interest, of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as current.", "label": "Debt Securities, Available-for-Sale, Excluding Accrued Interest, Current", "terseLabel": "Fair Value", "verboseLabel": "Marketable securities" } } }, "localname": "DebtSecuritiesAvailableForSaleExcludingAccruedInterestCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails", "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtSecuritiesAvailableForSaleTable": { "auth_ref": [ "r150" ], "lang": { "en-us": { "role": { "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).", "label": "Debt Securities, Available-for-Sale [Table]", "terseLabel": "Debt Securities, Available-for-sale [Table]" } } }, "localname": "DebtSecuritiesAvailableForSaleTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock": { "auth_ref": [ "r150" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).", "label": "Debt Securities, Available-for-Sale [Table Text Block]", "terseLabel": "Debt securities, available-for-sale" } } }, "localname": "DebtSecuritiesAvailableForSaleTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandRestrictedCashTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DeferredIncomeTaxAssetsNet": { "auth_ref": [ "r307", "r308" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 6.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.", "label": "Deferred Income Tax Assets, Net", "terseLabel": "Deferred tax assets" } } }, "localname": "DeferredIncomeTaxAssetsNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "auth_ref": [ "r74", "r82", "r315", "r321", "r322", "r323" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.", "label": "Deferred Income Tax Expense (Benefit)", "terseLabel": "Deferred income taxes" } } }, "localname": "DeferredIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredRevenueArrangementTypeAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of deferred revenue arrangement.", "label": "Deferred Revenue Arrangement Type [Axis]", "terseLabel": "Deferred Revenue Arrangement Type [Axis]" } } }, "localname": "DeferredRevenueArrangementTypeAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DeferredRevenueArrangementTypeDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Category of obligation arising when an entity receives consideration from a customer before achieving certain criteria that must be met for revenue to be recognized.", "label": "Deferred Revenue [Domain]", "terseLabel": "Deferred Revenue [Domain]" } } }, "localname": "DeferredRevenueArrangementTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DeferredTaxAssetsValuationAllowance": { "auth_ref": [ "r313" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.", "label": "Deferred Tax Assets, Valuation Allowance", "terseLabel": "Valuation allowance" } } }, "localname": "DeferredTaxAssetsValuationAllowance", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Depreciation": { "auth_ref": [ "r74", "r181" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.", "label": "Depreciation", "verboseLabel": "Depreciation and amortization" } } }, "localname": "Depreciation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisaggregationOfRevenueLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Disaggregation of Revenue [Line Items]", "terseLabel": "Disaggregation of Revenue [Line Items]" } } }, "localname": "DisaggregationOfRevenueLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails", "http://www.calix.com/role/RevenuefromContractswithCustomersRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [ "r243", "r247", "r248", "r249", "r250", "r251", "r252", "r253" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table]", "terseLabel": "Disaggregation of Revenue [Table]" } } }, "localname": "DisaggregationOfRevenueTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersContractAssetandLiabilityDetails", "http://www.calix.com/role/RevenuefromContractswithCustomersRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock": { "auth_ref": [ "r267", "r297" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of share-based payment arrangement.", "label": "Disclosure of Share-Based Compensation Arrangements by Share-Based Payment Award [Table Text Block]", "terseLabel": "Disclosure of share-based compensation arrangements by share-based payment award" } } }, "localname": "DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Abstract]", "terseLabel": "Net income per common share:" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r60", "r92", "r93", "r94", "r95", "r96", "r100", "r102", "r107", "r108", "r109", "r113", "r114", "r343", "r344", "r428", "r441" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.", "label": "Earnings Per Share, Basic", "terseLabel": "Basic (in dollars per share)", "verboseLabel": "Basic net income per common share (in dollars per share)" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME", "http://www.calix.com/role/NetIncomePerCommonShareDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareBasicAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Basic [Abstract]", "terseLabel": "Net income per common share:" } } }, "localname": "EarningsPerShareBasicAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/NetIncomePerCommonShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r60", "r92", "r93", "r94", "r95", "r96", "r102", "r107", "r108", "r109", "r113", "r114", "r343", "r344", "r428", "r441" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "Earnings Per Share, Diluted", "terseLabel": "Diluted (in dollars per share)", "verboseLabel": "Diluted net income per common share (in dollars per share)" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME", "http://www.calix.com/role/NetIncomePerCommonShareDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r110", "r111", "r112", "r115" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for earnings per share.", "label": "Earnings Per Share [Text Block]", "verboseLabel": "Net Income Per Common Share" } } }, "localname": "EarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/NetIncomePerCommonShare" ], "xbrltype": "textBlockItemType" }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r356" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. 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.", "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations", "verboseLabel": "Effect of exchange rate changes on cash and cash equivalents" } } }, "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "auth_ref": [ "r310" ], "lang": { "en-us": { "role": { "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Effective Income Tax Rate Reconciliation, Percent", "terseLabel": "Effective tax rate" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperations", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/IncomeTaxesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "auth_ref": [ "r36" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": 3.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Employee-related Liabilities, Current", "verboseLabel": "Compensation and related benefits" } } }, "localname": "EmployeeRelatedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "auth_ref": [ "r295" ], "lang": { "en-us": { "role": { "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition", "terseLabel": "Recognition period" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails", "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": { "auth_ref": [ "r295" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options.", "label": "Share-Based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount", "terseLabel": "Unrecognized stock-based compensation expense" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": { "auth_ref": [ "r295" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cost to be recognized for option under share-based payment arrangement.", "label": "Share-Based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount", "terseLabel": "Unrecognized stock-based compensation expense, stock options" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails", "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeStockMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "An Employee Stock Purchase Plan is a tax-efficient means by which employees of a corporation can purchase the corporation's stock.", "label": "Employee Stock [Member]", "verboseLabel": "Employee Stock Purchase Plan" } } }, "localname": "EmployeeStockMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "domainItemType" }, "us-gaap_EmployeeStockOptionMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.", "label": "Share-Based Payment Arrangement, Option [Member]", "terseLabel": "Stock Options" } } }, "localname": "EmployeeStockOptionMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_EquipmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tangible personal property used to produce goods and services.", "label": "Equipment [Member]", "verboseLabel": "Test equipment" } } }, "localname": "EquipmentMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_EquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Equity [Abstract]" } } }, "localname": "EquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r0", "r54", "r55", "r56", "r87", "r88", "r89", "r91", "r97", "r99", "r116", "r155", "r226", "r227", "r299", "r300", "r301", "r317", "r318", "r342", "r357", "r358", "r359", "r360", "r361", "r362", "r374", "r448", "r449", "r450" ], "lang": { "en-us": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.", "label": "Equity Component [Domain]", "terseLabel": "Equity Component [Domain]" } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "terseLabel": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]" } } }, "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "auth_ref": [ "r345", "r346", "r350" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis.", "label": "Fair Value, Recurring and Nonrecurring [Table]", "terseLabel": "Fair Value, Recurring and Nonrecurring [Table]" } } }, "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock": { "auth_ref": [ "r345", "r346" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of assets, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, by class that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).", "label": "Fair Value, Assets Measured on Recurring Basis [Table Text Block]", "terseLabel": "Fair value, assets measured on recurring basis" } } }, "localname": "FairValueAssetsMeasuredOnRecurringBasisTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasuresandDisclosuresTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "auth_ref": [ "r220", "r222", "r223", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r346", "r385", "r386", "r387" ], "lang": { "en-us": { "role": { "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.", "label": "Fair Value Hierarchy and NAV [Axis]", "terseLabel": "Fair Value Hierarchy and NAV [Axis]" } } }, "localname": "FairValueByFairValueHierarchyLevelAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByMeasurementFrequencyAxis": { "auth_ref": [ "r345", "r346", "r347", "r348", "r351" ], "lang": { "en-us": { "role": { "documentation": "Information by measurement frequency.", "label": "Measurement Frequency [Axis]", "terseLabel": "Measurement Frequency [Axis]" } } }, "localname": "FairValueByMeasurementFrequencyAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Fair Value Disclosures [Abstract]" } } }, "localname": "FairValueDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresTextBlock": { "auth_ref": [ "r349" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.", "label": "Fair Value Disclosures [Text Block]", "terseLabel": "Fair Value Measurements" } } }, "localname": "FairValueDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasurements" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueInputsLevel1Member": { "auth_ref": [ "r220", "r255", "r256", "r261", "r262", "r346", "r385" ], "lang": { "en-us": { "role": { "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.", "label": "Fair Value, Inputs, Level 1 [Member]", "terseLabel": "Level 1" } } }, "localname": "FairValueInputsLevel1Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel2Member": { "auth_ref": [ "r220", "r222", "r223", "r255", "r256", "r261", "r262", "r346", "r386" ], "lang": { "en-us": { "role": { "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets.", "label": "Fair Value, Inputs, Level 2 [Member]", "terseLabel": "Level 2" } } }, "localname": "FairValueInputsLevel2Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementFrequencyDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Measurement frequency.", "label": "Measurement Frequency [Domain]", "terseLabel": "Measurement Frequency [Domain]" } } }, "localname": "FairValueMeasurementFrequencyDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "auth_ref": [ "r220", "r222", "r223", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r385", "r386", "r387" ], "lang": { "en-us": { "role": { "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.", "label": "Fair Value Hierarchy and NAV [Domain]", "terseLabel": "Fair Value Hierarchy and NAV [Domain]" } } }, "localname": "FairValueMeasurementsFairValueHierarchyDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementsRecurringMember": { "auth_ref": [ "r349", "r351" ], "lang": { "en-us": { "role": { "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value.", "label": "Fair Value, Recurring [Member]", "terseLabel": "Fair Value, Recurring" } } }, "localname": "FairValueMeasurementsRecurringMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinancialInstrumentAxis": { "auth_ref": [ "r148", "r149", "r151", "r152", "r153", "r157", "r158", "r159", "r160", "r161", "r163", "r164", "r165", "r166", "r221", "r225", "r341", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r411", "r476", "r477", "r478", "r479", "r480", "r481", "r482" ], "lang": { "en-us": { "role": { "documentation": "Information by type of financial instrument.", "label": "Financial Instrument [Axis]", "terseLabel": "Financial Instrument [Axis]" } } }, "localname": "FinancialInstrumentAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails", "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Finite-Lived Intangible Asset, Useful Life", "terseLabel": "Useful life" } } }, "localname": "FiniteLivedIntangibleAssetUsefulLife", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r175", "r176", "r179", "r180", "r414", "r415" ], "lang": { "en-us": { "role": { "documentation": "Information by major type or class of finite-lived intangible assets.", "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]" } } }, "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Finite-Lived Intangible Assets [Line Items]", "terseLabel": "Finite-Lived Intangible Assets [Line Items]" } } }, "localname": "FiniteLivedIntangibleAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r175", "r178" ], "lang": { "en-us": { "role": { "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]" } } }, "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "auth_ref": [ "r179", "r414" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Net", "terseLabel": "Intangible asset" } } }, "localname": "FiniteLivedIntangibleAssetsNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FurnitureAndFixturesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.", "label": "Furniture and Fixtures [Member]", "verboseLabel": "Furniture and fixtures" } } }, "localname": "FurnitureAndFixturesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_GeneralAndAdministrativeExpense": { "auth_ref": [ "r64" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.", "label": "General and Administrative Expense", "verboseLabel": "General and administrative" } } }, "localname": "GeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_GeneralAndAdministrativeExpenseMember": { "auth_ref": [ "r61" ], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing general and administrative expense.", "label": "General and Administrative Expense [Member]", "terseLabel": "General and administrative" } } }, "localname": "GeneralAndAdministrativeExpenseMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockBasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r12", "r170", "r171", "r172", "r173", "r378", "r418" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill", "verboseLabel": "Goodwill" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r62", "r81", "r125", "r127", "r130", "r133", "r135", "r154", "r209", "r210", "r211", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r355" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.", "label": "Gross Profit", "totalLabel": "Gross profit" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r57", "r125", "r127", "r130", "r133", "r135", "r417", "r425", "r429", "r442" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "terseLabel": "Income before income taxes", "totalLabel": "Income before income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME", "http://www.calix.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income Statement [Abstract]", "terseLabel": "Income Statement [Abstract]" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r185", "r187" ], "lang": { "en-us": { "role": { "documentation": "Information by location in the income statement.", "label": "Income Statement Location [Axis]", "terseLabel": "Income Statement Location [Axis]" } } }, "localname": "IncomeStatementLocationAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockBasedCompensationExpenseDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [ "r187" ], "lang": { "en-us": { "role": { "documentation": "Location in the income statement.", "label": "Income Statement Location [Domain]", "terseLabel": "Income Statement Location [Domain]" } } }, "localname": "IncomeStatementLocationDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockBasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Abstract]", "terseLabel": "Income Tax Disclosure [Abstract]" } } }, "localname": "IncomeTaxDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r83", "r311", "r312", "r314", "r319", "r324", "r326", "r327", "r328" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.", "label": "Income Tax Disclosure [Text Block]", "verboseLabel": "Income Taxes" } } }, "localname": "IncomeTaxDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/IncomeTaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r84", "r98", "r99", "r124", "r309", "r320", "r325", "r443" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Income Tax Expense (Benefit)", "terseLabel": "Income taxes", "verboseLabel": "Income taxes" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME", "http://www.calix.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r73" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.", "label": "Increase (Decrease) in Accounts Payable", "verboseLabel": "Accounts payable" } } }, "localname": "IncreaseDecreaseInAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r73" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.", "label": "Increase (Decrease) in Accounts Receivable", "negatedLabel": "Accounts receivable, net" } } }, "localname": "IncreaseDecreaseInAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccruedLiabilities": { "auth_ref": [ "r73" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.", "label": "Increase (Decrease) in Accrued Liabilities", "verboseLabel": "Accrued liabilities" } } }, "localname": "IncreaseDecreaseInAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInDeferredRevenue": { "auth_ref": [ "r73" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable.", "label": "Increase (Decrease) in Deferred Revenue", "verboseLabel": "Deferred revenue" } } }, "localname": "IncreaseDecreaseInDeferredRevenue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r73" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.", "label": "Increase (Decrease) in Inventories", "negatedLabel": "Inventory" } } }, "localname": "IncreaseDecreaseInInventories", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "verboseLabel": "Changes in operating assets and liabilities:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": { "auth_ref": [], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in noncurrent operating liabilities classified as other.", "label": "Increase (Decrease) in Other Noncurrent Liabilities", "verboseLabel": "Other long-term liabilities" } } }, "localname": "IncreaseDecreaseInOtherNoncurrentLiabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "auth_ref": [ "r73" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "negatedLabel": "Prepaid expenses and other assets" } } }, "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "verboseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]" } } }, "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "stringItemType" }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "auth_ref": [ "r103", "r104", "r105", "r109", "r266" ], "calculation": { "http://www.calix.com/role/NetIncomePerCommonShareDetails": { "order": 2.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-us": { "role": { "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.", "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements", "terseLabel": "Effect of dilutive common stock equivalents (in shares)" } } }, "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/NetIncomePerCommonShareDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "auth_ref": [ "r174", "r177" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails": { "order": 1.0, "parentTag": "us-gaap_OtherAssetsNoncurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Intangible Assets, Net (Excluding Goodwill)", "terseLabel": "Intangible asset, net" } } }, "localname": "IntangibleAssetsNetExcludingGoodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsOtherLongTermAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestIncomeExpenseNonoperatingNet": { "auth_ref": [], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net amount of nonoperating interest income (expense).", "label": "Interest Income (Expense), Nonoperating, Net", "verboseLabel": "Interest income (expense), net" } } }, "localname": "InterestIncomeExpenseNonoperatingNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoriesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tangible personal property held for sale in the ordinary course of business, or in process of, or to be consumed in, production for sale.", "label": "Inventories [Member]", "terseLabel": "Inventories" } } }, "localname": "InventoriesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_InventoryFinishedGoodsNetOfReserves": { "auth_ref": [ "r27", "r167" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsInventoryDetails": { "order": 1.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.", "label": "Inventory, Finished Goods, Net of Reserves", "verboseLabel": "Finished goods" } } }, "localname": "InventoryFinishedGoodsNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsInventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNet": { "auth_ref": [ "r4", "r32", "r378" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsInventoryDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 1.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Inventory, Net", "totalLabel": "Total inventory", "verboseLabel": "Inventory" } } }, "localname": "InventoryNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsInventoryDetails", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNetAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Inventory, Net [Abstract]", "verboseLabel": "Summary of inventory, net" } } }, "localname": "InventoryNetAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsInventoryDetails" ], "xbrltype": "stringItemType" }, "us-gaap_InventoryRawMaterialsNetOfReserves": { "auth_ref": [ "r28", "r167" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsInventoryDetails": { "order": 2.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.", "label": "Inventory, Raw Materials, Net of Reserves", "verboseLabel": "Raw materials" } } }, "localname": "InventoryRawMaterialsNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsInventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LeaseholdImprovementsMember": { "auth_ref": [ "r182" ], "lang": { "en-us": { "role": { "documentation": "Additions or improvements to assets held under a lease arrangement.", "label": "Leasehold Improvements [Member]", "verboseLabel": "Leasehold improvements" } } }, "localname": "LeaseholdImprovementsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r372" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.", "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]", "terseLabel": "Schedule of future minimum rental payments for operating leases" } } }, "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "auth_ref": [ "r372" ], "calculation": { "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails_1": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.", "label": "Lessee, Operating Lease, Liability, to be Paid", "terseLabel": "Total future minimum lease payments", "totalLabel": "Total future minimum lease payments" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails", "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r372" ], "calculation": { "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid 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).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "terseLabel": "2023" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r372" ], "calculation": { "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails": { "order": 5.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid 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).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four", "terseLabel": "2026" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r372" ], "calculation": { "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails": { "order": 4.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid 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).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three", "terseLabel": "2025" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r372" ], "calculation": { "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid 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).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "terseLabel": "2024" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r372" ], "calculation": { "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails": { "order": 3.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.", "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year", "terseLabel": "Remainder of 2022" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r372" ], "calculation": { "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails_1": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.", "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "negatedTerseLabel": "Less imputed interest" } } }, "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r35", "r81", "r129", "r154", "r209", "r210", "r211", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r333", "r336", "r337", "r355", "r376", "r377" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.", "label": "Liabilities", "totalLabel": "Total liabilities" } } }, "localname": "Liabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r25", "r81", "r154", "r355", "r378", "r421", "r436" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "Liabilities and Equity", "totalLabel": "Total liabilities and stockholders\u2019 equity" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities and Equity [Abstract]", "verboseLabel": "LIABILITIES AND STOCKHOLDERS\u2019 EQUITY" } } }, "localname": "LiabilitiesAndStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r7", "r37", "r81", "r154", "r209", "r210", "r211", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r333", "r336", "r337", "r355", "r376", "r377", "r378" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 1.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "Liabilities, Current", "totalLabel": "Total current liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities, Current [Abstract]", "verboseLabel": "Current liabilities:" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "stringItemType" }, "us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by category of items purchased under a long-term purchase commitment.", "label": "Category of Item Purchased [Axis]", "terseLabel": "Category of Item Purchased [Axis]" } } }, "localname": "LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "General description of the goods or services to be purchased from the counterparty to the long-term purchase commitment.", "label": "Long-Term Purchase Commitment, Category of Item Purchased [Domain]", "terseLabel": "Long-term Purchase Commitment, Category of Item Purchased [Domain]" } } }, "localname": "LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LongtermPurchaseCommitmentPeriod": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Period covered by the long-term purchase commitment, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Long-Term Purchase Commitment, Period", "terseLabel": "Purchase commitment period" } } }, "localname": "LongtermPurchaseCommitmentPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_LossContingenciesLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Loss Contingencies [Line Items]", "terseLabel": "Commitments and Contingencies [Line Items]" } } }, "localname": "LossContingenciesLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingenciesTable": { "auth_ref": [ "r192", "r193", "r194", "r195", "r196", "r200", "r201" ], "lang": { "en-us": { "role": { "documentation": "Discloses the specific components (such as the nature, name, and date) of the loss contingency and gives an estimate of the possible loss or range of loss, or states that a reasonable estimate cannot be made. Excludes environmental contingencies, warranties and unconditional purchase obligations.", "label": "Loss Contingencies [Table]", "terseLabel": "Loss Contingencies [Table]" } } }, "localname": "LossContingenciesTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_MoneyMarketFundsMember": { "auth_ref": [ "r255" ], "lang": { "en-us": { "role": { "documentation": "Fund that invests in short-term money-market instruments, for example, but not limited to, commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and other highly liquid securities.", "label": "Money Market Funds [Member]", "terseLabel": "Money market funds" } } }, "localname": "MoneyMarketFundsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails", "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_MovementInStandardProductWarrantyAccrualRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Movement in Standard Product Warranty Accrual [Roll Forward]", "terseLabel": "Movement in Standard Product Warranty Accrual [Roll Forward]" } } }, "localname": "MovementInStandardProductWarrantyAccrualRollForward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsWarrantyReserveDetails" ], "xbrltype": "stringItemType" }, "us-gaap_MunicipalNotesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Short-term debt securities issued by state, city or local governments or the agencies operated by state, city or local governments.", "label": "Municipal Notes [Member]", "terseLabel": "Municipal securities" } } }, "localname": "MunicipalNotesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails", "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r71" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash provided by financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "verboseLabel": "Financing activities:" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r71" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 4.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash used in investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "verboseLabel": "Investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r71", "r72", "r75" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 3.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash provided by operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "verboseLabel": "Operating activities:" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r1", "r48", "r51", "r56", "r58", "r75", "r81", "r90", "r92", "r93", "r94", "r95", "r98", "r99", "r106", "r125", "r127", "r130", "r133", "r135", "r154", "r209", "r210", "r211", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r344", "r355", "r426", "r439" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net Income (Loss) Attributable to Parent", "terseLabel": "Net income", "totalLabel": "Net income", "verboseLabel": "Net income" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY", "http://www.calix.com/role/NetIncomePerCommonShareDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Income (Loss) Attributable to Parent [Abstract]", "verboseLabel": "Numerator:" } } }, "localname": "NetIncomeLossAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/NetIncomePerCommonShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "verboseLabel": "Newly Adopted Accounting Standard and Recent Accounting Pronouncements Not Yet Adopted" } } }, "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_NonoperatingIncomeExpenseAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Nonoperating Income (Expense) [Abstract]", "verboseLabel": "Interest and other income (expense), net:" } } }, "localname": "NonoperatingIncomeExpenseAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingExpenses": { "auth_ref": [], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.", "label": "Operating Expenses", "totalLabel": "Total operating expenses" } } }, "localname": "OperatingExpenses", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingExpensesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Operating Expenses [Abstract]", "verboseLabel": "Operating expenses:" } } }, "localname": "OperatingExpensesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r125", "r127", "r130", "r133", "r135" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "Operating Income (Loss)", "totalLabel": "Operating income" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseCost": { "auth_ref": [ "r368", "r373" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.", "label": "Operating Lease, Cost", "terseLabel": "Rent expense" } } }, "localname": "OperatingLeaseCost", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiability": { "auth_ref": [ "r365" ], "calculation": { "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeaseLiabilityDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails_1": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.", "label": "Operating Lease, Liability", "totalLabel": "Operating lease liability" } } }, "localname": "OperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeaseLiabilityDetails", "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r365" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": 10.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 }, "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeaseLiabilityDetails": { "order": 1.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.", "label": "Operating Lease, Liability, Current", "terseLabel": "Operating leases", "verboseLabel": "Accrued liabilities - current portion of operating leases" } } }, "localname": "OperatingLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails", "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeaseLiabilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": { "auth_ref": [ "r366" ], "lang": { "en-us": { "role": { "documentation": "Indicates line item in statement of financial position that includes current operating lease liability.", "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]", "terseLabel": "Operating lease, liability, current, statement of financial position" } } }, "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeaseLiabilityDetails" ], "xbrltype": "enumerationSetItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r365" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 4.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeaseLiabilityDetails": { "order": 2.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.", "label": "Operating Lease, Liability, Noncurrent", "terseLabel": "Operating leases", "verboseLabel": "Operating leases" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS", "http://www.calix.com/role/CommitmentsandContingenciesOperatingLeaseLiabilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasePayments": { "auth_ref": [ "r367", "r369" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.", "label": "Operating Lease, Payments", "terseLabel": "Operating lease, payments" } } }, "localname": "OperatingLeasePayments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r364" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 5.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's right to use underlying asset under operating lease.", "label": "Operating Lease, Right-of-Use Asset", "terseLabel": "Right-of-use operating leases" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r371", "r373" ], "lang": { "en-us": { "role": { "documentation": "Weighted average discount rate for operating lease calculated at point in time.", "label": "Operating Lease, Weighted Average Discount Rate, Percent", "terseLabel": "Weighted average operating discount rate used to determine the operating lease liability (percent)" } } }, "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "percentItemType" }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "auth_ref": [ "r370", "r373" ], "lang": { "en-us": { "role": { "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Operating Lease, Weighted Average Remaining Lease Term", "terseLabel": "Weighted average remaining lease term for operating lease" } } }, "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]", "terseLabel": "Organization, Consolidation and Presentation of Financial Statements [Abstract]" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "auth_ref": [ "r2", "r338" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure.", "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]", "verboseLabel": "Company and Basis of Presentation" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CompanyandBasisofPresentation" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "auth_ref": [ "r36" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": 8.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.", "label": "Other Accrued Liabilities, Current", "verboseLabel": "Other" } } }, "localname": "OtherAccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsMiscellaneousNoncurrent": { "auth_ref": [], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails": { "order": 2.0, "parentTag": "us-gaap_OtherAssetsNoncurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of other miscellaneous assets expected to be realized or consumed after one year or normal operating cycle, if longer.", "label": "Other Assets, Miscellaneous, Noncurrent", "terseLabel": "Other long-term assets" } } }, "localname": "OtherAssetsMiscellaneousNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsOtherLongTermAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r13" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 4.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncurrent assets classified as other.", "label": "Other Assets, Noncurrent", "totalLabel": "Other assets, noncurrent", "verboseLabel": "Other assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsOtherLongTermAssetsDetails", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r330", "r331", "r334" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent", "terseLabel": "Foreign currency translation adjustments, net" } } }, "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]", "verboseLabel": "Other comprehensive income (loss), net of tax:" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r49", "r52", "r330", "r331", "r334" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity.", "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent", "terseLabel": "Other comprehensive loss", "totalLabel": "Total other comprehensive income (loss), net of tax" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax": { "auth_ref": [ "r43", "r45" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after tax and before adjustment, of 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 unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale.", "label": "OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, after Tax", "terseLabel": "Unrealized loss on available-for-sale marketable securities, net" } } }, "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilities": { "auth_ref": [ "r423" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities classified as other.", "label": "Other Liabilities", "terseLabel": "Other Liabilities" } } }, "localname": "OtherLiabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r38" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 3.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.", "label": "Other Liabilities, Noncurrent", "verboseLabel": "Other long-term liabilities" } } }, "localname": "OtherLiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r65" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 3.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.", "label": "Other Nonoperating Income (Expense)", "verboseLabel": "Other income (expense), net" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireAvailableForSaleSecuritiesDebt": { "auth_ref": [ "r66", "r68", "r146" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow to acquire investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).", "label": "Payments to Acquire Debt Securities, Available-for-Sale", "negatedTerseLabel": "Purchases of marketable securities" } } }, "localname": "PaymentsToAcquireAvailableForSaleSecuritiesDebt", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r69" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchases of property and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_PlanNameAxis": { "auth_ref": [ "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293" ], "lang": { "en-us": { "role": { "documentation": "Information by plan name for share-based payment arrangement.", "label": "Plan Name [Axis]", "terseLabel": "Plan Name [Axis]" } } }, "localname": "PlanNameAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquity2019EquityIncentiveAwardPlanDetails", "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails", "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PlanNameDomain": { "auth_ref": [ "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293" ], "lang": { "en-us": { "role": { "documentation": "Plan name for share-based payment arrangement.", "label": "Plan Name [Domain]", "terseLabel": "Plan Name [Domain]" } } }, "localname": "PlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquity2019EquityIncentiveAwardPlanDetails", "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails", "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "auth_ref": [ "r17", "r224" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.", "label": "Preferred Stock, Par or Stated Value Per Share", "verboseLabel": "Preferred stock, par value (in dollars per share)" } } }, "localname": "PreferredStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_PreferredStockSharesAuthorized": { "auth_ref": [ "r17" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.", "label": "Preferred Stock, Shares Authorized", "verboseLabel": "Preferred stock, shares authorized (in shares)" } } }, "localname": "PreferredStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesIssued": { "auth_ref": [ "r17", "r224" ], "lang": { "en-us": { "role": { "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.", "label": "Preferred Stock, Shares Issued", "verboseLabel": "Preferred stock, shares issued (in shares)" } } }, "localname": "PreferredStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesOutstanding": { "auth_ref": [ "r17" ], "lang": { "en-us": { "role": { "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.", "label": "Preferred Stock, Shares Outstanding", "verboseLabel": "Preferred stock, shares outstanding (in shares)" } } }, "localname": "PreferredStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockValue": { "auth_ref": [ "r17", "r378" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 5.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Preferred Stock, Value, Issued", "terseLabel": "Preferred stock, $0.025 par value; 5,000 shares authorized; no shares issued and outstanding as of July 2, 2022 and December 31, 2021" } } }, "localname": "PreferredStockValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "auth_ref": [ "r33" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.", "label": "Prepaid Expense and Other Assets, Current", "verboseLabel": "Prepaid expenses and other current assets" } } }, "localname": "PrepaidExpenseAndOtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities": { "auth_ref": [ "r66", "r67", "r146" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from 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).", "label": "Proceeds from Maturities, Prepayments and Calls of Debt Securities, Available-for-Sale", "terseLabel": "Maturities of marketable securities" } } }, "localname": "ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromStockOptionsExercised": { "auth_ref": [ "r70", "r298" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement.", "label": "Proceeds from Stock Options Exercised", "verboseLabel": "Proceeds from common stock issuances related to employee benefit plans" } } }, "localname": "ProceedsFromStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductWarrantyAccrual": { "auth_ref": [ "r205", "r206", "r422" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers.", "label": "Standard and Extended Product Warranty Accrual", "periodEndLabel": "Balance at end of period", "periodStartLabel": "Balance at beginning of period" } } }, "localname": "ProductWarrantyAccrual", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsWarrantyReserveDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductWarrantyAccrualClassifiedCurrent": { "auth_ref": [ "r36", "r199", "r202" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": 4.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Product Warranty Accrual, Current", "terseLabel": "Current portion of warranty and retrofit" } } }, "localname": "ProductWarrantyAccrualClassifiedCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductWarrantyAccrualPayments": { "auth_ref": [ "r203" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty.", "label": "Standard and Extended Product Warranty Accrual, Decrease for Payments", "negatedTerseLabel": "Cost of warranty and retrofit claims" } } }, "localname": "ProductWarrantyAccrualPayments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsWarrantyReserveDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductWarrantyAccrualWarrantiesIssued": { "auth_ref": [ "r204" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in the standard and extended product warranty accrual from warranties issued.", "label": "Standard and Extended Product Warranty Accrual, Increase for Warranties Issued", "terseLabel": "Accruals for product warranty and retrofit" } } }, "localname": "ProductWarrantyAccrualWarrantiesIssued", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsWarrantyReserveDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "auth_ref": [ "r184" ], "lang": { "en-us": { "role": { "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.", "label": "Long-Lived Tangible Asset [Axis]", "terseLabel": "Property, Plant and Equipment, Type [Axis]" } } }, "localname": "PropertyPlantAndEquipmentByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentGross": { "auth_ref": [ "r10", "r182" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails": { "order": 2.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Gross", "verboseLabel": "Property and equipment, gross" } } }, "localname": "PropertyPlantAndEquipmentGross", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Property, Plant and Equipment [Line Items]", "terseLabel": "Property, Plant and Equipment [Line Items]" } } }, "localname": "PropertyPlantAndEquipmentLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r184", "r378", "r431", "r437" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Net", "totalLabel": "Property and equipment, net", "verboseLabel": "Property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Net, by Type [Abstract]", "verboseLabel": "Summary of property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentNetByTypeAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "auth_ref": [ "r184" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table Text Block]", "verboseLabel": "Summary of property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "auth_ref": [ "r182" ], "lang": { "en-us": { "role": { "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.", "label": "Long-Lived Tangible Asset [Domain]", "terseLabel": "Property, Plant and Equipment, Type [Domain]" } } }, "localname": "PropertyPlantAndEquipmentTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted": { "auth_ref": [ "r16", "r420", "r433" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Minimum amount to be expended to satisfy the terms of arrangements in which the entity has agreed to expend funds to procure goods or services, excluding long-term purchase commitments or unconditional purchase obligations.", "label": "Purchase Commitment, Remaining Minimum Amount Committed", "terseLabel": "Outstanding purchase commitments" } } }, "localname": "PurchaseCommitmentRemainingMinimumAmountCommitted", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CommitmentsandContingenciesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ResearchAndDevelopmentExpense": { "auth_ref": [ "r306", "r412", "r470" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 3.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.", "label": "Research and Development Expense", "verboseLabel": "Research and development" } } }, "localname": "ResearchAndDevelopmentExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_ResearchAndDevelopmentExpenseMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included.", "label": "Research and Development Expense [Member]", "terseLabel": "Research and development" } } }, "localname": "ResearchAndDevelopmentExpenseMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockBasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": { "auth_ref": [ "r9" ], "lang": { "en-us": { "role": { "documentation": "Type of cash and cash equivalent. Cash is currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash and Cash Equivalents [Domain]", "terseLabel": "Cash and Cash Equivalents [Domain]" } } }, "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails", "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RestructuringReserveCurrent": { "auth_ref": [ "r15", "r186", "r188" ], "calculation": { "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying amount as of the balance sheet date of known and estimated obligations associated with exit from or disposal of business activities or restructurings pursuant to a duly authorized plan, which are expected to be paid in the next twelve months or in the normal operating cycle if longer. Costs of such activities include those for one-time termination benefits, termination of an operating lease or other contract, consolidating or closing facilities, relocating employees, and costs associated with an ongoing benefit arrangement, but excludes costs associated with the retirement of a long-lived asset.", "label": "Restructuring Reserve, Current", "terseLabel": "Operations" } } }, "localname": "RestructuringReserveCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r21", "r227", "r378", "r435", "r451", "r453" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings (Accumulated Deficit)", "verboseLabel": "Accumulated deficit" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r0", "r87", "r88", "r89", "r91", "r97", "r99", "r155", "r299", "r300", "r301", "r317", "r318", "r342", "r448", "r450" ], "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings [Member]", "terseLabel": "Accumulated Deficit" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Abstract]", "terseLabel": "Revenue from Contract with Customer [Abstract]" } } }, "localname": "RevenueFromContractWithCustomerAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "auth_ref": [ "r122", "r123", "r126", "r131", "r132", "r136", "r137", "r140", "r242", "r243", "r413" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_GrossProfit", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "terseLabel": "Total revenues", "verboseLabel": "Revenue" } } }, "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME", "http://www.calix.com/role/RevenuefromContractswithCustomersRevenueDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r232", "r233", "r234", "r235", "r236", "r237", "r240", "r241", "r246", "r254" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.", "label": "Revenue from Contract with Customer [Text Block]", "terseLabel": "Revenue from Contracts with Customers" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomers" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock": { "auth_ref": [ "r139" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of revenue from external customers by geographic areas attributed to the entity's country of domicile and to foreign countries from which the entity derives revenue.", "label": "Revenue from External Customers by Geographic Areas [Table Text Block]", "terseLabel": "Revenue from external customers by geographic areas" } } }, "localname": "RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueRecognitionPolicyTextBlock": { "auth_ref": [ "r79", "r80" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.", "label": "Revenue [Policy Text Block]", "terseLabel": "Revenue Recognition" } } }, "localname": "RevenueRecognitionPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueRemainingPerformanceObligation": { "auth_ref": [ "r238" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.", "label": "Revenue, Remaining Performance Obligation, Amount", "terseLabel": "Remaining performance obligation, amount" } } }, "localname": "RevenueRemainingPerformanceObligation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersPerformanceObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersPerformanceObligationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "auth_ref": [ "r239" ], "lang": { "en-us": { "role": { "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "terseLabel": "Performance obligations expected to be satisfied, expected timing" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersPerformanceObligationsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "auth_ref": [ "r239" ], "lang": { "en-us": { "role": { "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersPerformanceObligationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersPerformanceObligationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationPercentage": { "auth_ref": [ "r239" ], "lang": { "en-us": { "role": { "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue.", "label": "Revenue, Remaining Performance Obligation, Percentage", "terseLabel": "Remaining performance obligation, percentage" } } }, "localname": "RevenueRemainingPerformanceObligationPercentage", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/RevenuefromContractswithCustomersPerformanceObligationsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_RevenuesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Revenues [Abstract]", "terseLabel": "Revenue:" } } }, "localname": "RevenuesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" }, "us-gaap_RoyaltyGuaranteesCommitmentsAmount": { "auth_ref": [ "r416" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The amount the entity has committed to make for future royalty guarantees.", "label": "Royalty Guarantees, Commitments, Amount", "terseLabel": "Royalty payment commitment" } } }, "localname": "RoyaltyGuaranteesCommitmentsAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "auth_ref": [ "r41" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]", "verboseLabel": "Summary of accounts receivable, net" } } }, "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the components of accrued liabilities.", "label": "Schedule of Accrued Liabilities [Table Text Block]", "verboseLabel": "Summary of accrued liabilities" } } }, "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Debt Securities, Available-for-Sale [Line Items]", "terseLabel": "Debt Securities, Available-for-sale [Line Items]" } } }, "localname": "ScheduleOfAvailableForSaleSecuritiesLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfCashAndCashEquivalentsTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Schedule of cash and cash equivalent balances. This table excludes restricted cash balances.", "label": "Schedule of Cash and Cash Equivalents [Table]", "terseLabel": "Schedule of Cash and Cash Equivalents [Table]" } } }, "localname": "ScheduleOfCashAndCashEquivalentsTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the components of cash and cash equivalents.", "label": "Schedule of Cash and Cash Equivalents [Table Text Block]", "verboseLabel": "Summary of cash and cash equivalents" } } }, "localname": "ScheduleOfCashAndCashEquivalentsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandRestrictedCashTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": { "auth_ref": [ "r316" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.", "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]", "terseLabel": "Schedule of income taxes" } } }, "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/IncomeTaxesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "auth_ref": [ "r109" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "verboseLabel": "Schedule of net income (loss) per share" } } }, "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/NetIncomePerCommonShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "auth_ref": [ "r175", "r178", "r414" ], "lang": { "en-us": { "role": { "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Schedule of Finite-Lived Intangible Assets [Table]", "terseLabel": "Schedule of Finite-Lived Intangible Assets [Table]" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "auth_ref": [ "r8", "r29", "r30", "r31" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.", "label": "Schedule of Inventory, Current [Table Text Block]", "verboseLabel": "Summary of inventory" } } }, "localname": "ScheduleOfInventoryCurrentTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfOtherAssetsNoncurrentTextBlock": { "auth_ref": [ "r13" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of noncurrent assets.", "label": "Schedule of Other Assets, Noncurrent [Table Text Block]", "terseLabel": "Schedule of other long-term assets" } } }, "localname": "ScheduleOfOtherAssetsNoncurrentTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": { "auth_ref": [ "r207" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Product Warranty Liability [Table Text Block]", "verboseLabel": "Product warranty activities" } } }, "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "auth_ref": [ "r184" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table]", "terseLabel": "Schedule of Property, Plant and Equipment [Table]" } } }, "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "auth_ref": [ "r263", "r265", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about share-based payment arrangement.", "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]", "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]" } } }, "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquity2019EquityIncentiveAwardPlanDetails", "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails", "http://www.calix.com/role/StockholdersEquityStockBasedCompensationExpenseDetails", "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SellingAndMarketingExpense": { "auth_ref": [], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services.", "label": "Selling and Marketing Expense", "verboseLabel": "Sales and marketing" } } }, "localname": "SellingAndMarketingExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_SellingAndMarketingExpenseMember": { "auth_ref": [ "r61" ], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing selling and marketing expense.", "label": "Selling and Marketing Expense [Member]", "terseLabel": "Sales and marketing" } } }, "localname": "SellingAndMarketingExpenseMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockBasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r73" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncash expense for share-based payment arrangement.", "label": "Share-Based Payment Arrangement, Noncash Expense", "verboseLabel": "Stock-based compensation" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWS", "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1": { "auth_ref": [ "r268" ], "lang": { "en-us": { "role": { "documentation": "Estimated period over which an employee is required to provide service in exchange for the equity-based payment award, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Requisite Service Period", "terseLabel": "Award performance period" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "auth_ref": [ "r268" ], "lang": { "en-us": { "role": { "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period", "terseLabel": "Award vesting period" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquity2019EquityIncentiveAwardPlanDetails", "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails", "http://www.calix.com/role/StockholdersEquityStockBasedCompensationExpenseDetails", "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate": { "auth_ref": [ "r297" ], "lang": { "en-us": { "role": { "documentation": "The highest percentage of annual salary that an employee is permitted to utilize with respect to the plan.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Maximum Employee Subscription Rate", "verboseLabel": "ESPP, maximum employee payroll deduction percentage" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee": { "auth_ref": [ "r297" ], "lang": { "en-us": { "role": { "documentation": "The highest quantity of shares an employee can purchase under the plan per period.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Maximum Number of Shares Per Employee", "terseLabel": "ESPP, maximum number of shares per employee (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of additional shares authorized for issuance under share-based payment arrangement.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Additional Shares Authorized", "terseLabel": "Number of additional shares authorized (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "auth_ref": [ "r270" ], "lang": { "en-us": { "role": { "documentation": "Number of shares authorized for issuance under share-based payment arrangement.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized", "terseLabel": "Number of shares authorized (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "auth_ref": [ "r297" ], "lang": { "en-us": { "role": { "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant", "terseLabel": "Shares available for future grant (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquity2019EquityIncentiveAwardPlanDetails", "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "auth_ref": [ "r275" ], "lang": { "en-us": { "role": { "documentation": "Gross number of share options (or share units) granted during the period.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross", "verboseLabel": "Stock options granted (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r285" ], "lang": { "en-us": { "role": { "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value", "terseLabel": "Weighted-average grant date fair value (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod": { "auth_ref": [ "r297" ], "lang": { "en-us": { "role": { "documentation": "Number of shares issued under share-based payment arrangement.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Shares Issued in Period", "terseLabel": "Number of shares issued (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesPurchasedForAward": { "auth_ref": [ "r296" ], "lang": { "en-us": { "role": { "documentation": "Number of shares purchased for issuance under share-based payment arrangement.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Shares Purchased for Award", "terseLabel": "Number of shares purchased (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesPurchasedForAward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293" ], "lang": { "en-us": { "role": { "documentation": "Award under share-based payment arrangement.", "label": "Award Type [Domain]", "terseLabel": "Award Type [Domain]" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails", "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "auth_ref": [ "r276" ], "lang": { "en-us": { "role": { "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.", "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price", "terseLabel": "Weighted-average exercise price per share, stock options (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationAwardTrancheOneMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "First portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.", "label": "Share-Based Payment Arrangement, Tranche One [Member]", "terseLabel": "Period One" } } }, "localname": "ShareBasedCompensationAwardTrancheOneMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationAwardTrancheTwoMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Second portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.", "label": "Share-Based Payment Arrangement, Tranche Two [Member]", "terseLabel": "Period Two" } } }, "localname": "ShareBasedCompensationAwardTrancheTwoMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": { "auth_ref": [ "r268" ], "lang": { "en-us": { "role": { "documentation": "Percentage of vesting of award under share-based payment arrangement.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage", "terseLabel": "Award vesting rights, percentage" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Purchase price of common stock expressed as a percentage of its fair value.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Purchase Price of Common Stock, Percent", "verboseLabel": "ESPP, discounted purchase price percentage" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock": { "auth_ref": [ "r228", "r305" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for shareholders' equity and share-based payment arrangement. Includes, but is not limited to, disclosure of policy and terms of share-based payment arrangement, deferred compensation arrangement, and employee stock purchase plan (ESPP).", "label": "Shareholders' Equity and Share-Based Payments [Text Block]", "verboseLabel": "Stockholders' Equity" } } }, "localname": "ShareholdersEquityAndShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquity" ], "xbrltype": "textBlockItemType" }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "auth_ref": [ "r78", "r86" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.", "label": "Significant Accounting Policies [Text Block]", "verboseLabel": "Significant Accounting Policies" } } }, "localname": "SignificantAccountingPoliciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/SignificantAccountingPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r0", "r40", "r54", "r55", "r56", "r87", "r88", "r89", "r91", "r97", "r99", "r116", "r155", "r226", "r227", "r299", "r300", "r301", "r317", "r318", "r342", "r357", "r358", "r359", "r360", "r361", "r362", "r374", "r448", "r449", "r450" ], "lang": { "en-us": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]", "terseLabel": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]", "terseLabel": "Statement [Line Items]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Cash Flows [Abstract]", "terseLabel": "Statement of Cash Flows [Abstract]" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Financial Position [Abstract]", "terseLabel": "Statement of Financial Position [Abstract]" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Stockholders' Equity [Abstract]", "terseLabel": "Statement of Stockholders' Equity [Abstract]" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r87", "r88", "r89", "r116", "r413" ], "lang": { "en-us": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement [Table]", "terseLabel": "Statement [Table]" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan": { "auth_ref": [ "r17", "r18", "r226", "r227", "r304" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of capital stock issued (purchased by employees) in connection with an employee stock ownership plan.", "label": "Stock Issued During Period, Shares, Employee Stock Ownership Plan", "terseLabel": "Shares purchased under ESPP (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "auth_ref": [ "r17", "r18", "r226", "r227" ], "lang": { "en-us": { "role": { "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).", "label": "Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture", "terseLabel": "Issuance of common stock under equity incentive plans, net of forfeitures (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "auth_ref": [ "r17", "r18", "r226", "r227", "r276" ], "lang": { "en-us": { "role": { "documentation": "Number of share options (or share units) exercised during the current period.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period", "terseLabel": "Stock options exercised (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "auth_ref": [ "r17", "r18", "r227", "r285" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).", "label": "Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture", "terseLabel": "Issuance of common stock under equity incentive plans, net of forfeitures" } } }, "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockRepurchaseProgramAuthorizedAmount1": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of stock repurchase plan authorized.", "label": "Stock Repurchase Program, Authorized Amount", "terseLabel": "Stock repurchase program, authorized amount" } } }, "localname": "StockRepurchaseProgramAuthorizedAmount1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/SubsequentEventsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockRepurchaseProgramPeriodInForce1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Period which shares may be purchased under a stock repurchase plan authorized by an entity's Board of Directors, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Stock Repurchase Program, Period in Force", "terseLabel": "Stock repurchase program, period authorized" } } }, "localname": "StockRepurchaseProgramPeriodInForce1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/SubsequentEventsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r18", "r23", "r24", "r81", "r145", "r154", "r355", "r378" ], "calculation": { "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.", "label": "Stockholders' Equity Attributable to Parent", "periodEndLabel": "Balance at end of period", "periodStartLabel": "Balance at beginning of period", "totalLabel": "Total stockholders\u2019 equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS", "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITY" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "verboseLabel": "Stockholders\u2019 equity:" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETS" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityNoteAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Note [Abstract]", "terseLabel": "Stockholders' Equity Note [Abstract]" } } }, "localname": "StockholdersEquityNoteAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.", "label": "Subsequent Event [Line Items]", "terseLabel": "Subsequent Event [Line Items]" } } }, "localname": "SubsequentEventLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/SubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventMember": { "auth_ref": [ "r363", "r380" ], "lang": { "en-us": { "role": { "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event [Member]", "terseLabel": "Subsequent Event" } } }, "localname": "SubsequentEventMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquity2019EquityIncentiveAwardPlanDetails", "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails", "http://www.calix.com/role/SubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SubsequentEventTable": { "auth_ref": [ "r363", "r380" ], "lang": { "en-us": { "role": { "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued.", "label": "Subsequent Event [Table]", "terseLabel": "Subsequent Event [Table]" } } }, "localname": "SubsequentEventTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/SubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventTypeAxis": { "auth_ref": [ "r363", "r380" ], "lang": { "en-us": { "role": { "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event Type [Axis]", "terseLabel": "Subsequent Event Type [Axis]" } } }, "localname": "SubsequentEventTypeAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquity2019EquityIncentiveAwardPlanDetails", "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails", "http://www.calix.com/role/SubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventTypeDomain": { "auth_ref": [ "r363", "r380" ], "lang": { "en-us": { "role": { "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event Type [Domain]", "terseLabel": "Subsequent Event Type [Domain]" } } }, "localname": "SubsequentEventTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquity2019EquityIncentiveAwardPlanDetails", "http://www.calix.com/role/StockholdersEquityEmployeeStockPurchasePlansDetails", "http://www.calix.com/role/SubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SubsequentEventsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Subsequent Events [Abstract]" } } }, "localname": "SubsequentEventsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventsTextBlock": { "auth_ref": [ "r379", "r381" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.", "label": "Subsequent Events [Text Block]", "terseLabel": "Subsequent Event" } } }, "localname": "SubsequentEventsTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/SubsequentEvent" ], "xbrltype": "textBlockItemType" }, "us-gaap_SupplementalBalanceSheetDisclosuresTextBlock": { "auth_ref": [ "r42" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for supplemental balance sheet disclosures, including descriptions and amounts for assets, liabilities, and equity.", "label": "Supplemental Balance Sheet Disclosures [Text Block]", "verboseLabel": "Balance Sheet Details" } } }, "localname": "SupplementalBalanceSheetDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/BalanceSheetDetails" ], "xbrltype": "textBlockItemType" }, "us-gaap_TechnologyServiceMember": { "auth_ref": [ "r247" ], "lang": { "en-us": { "role": { "documentation": "Technology assistance, including but not limited to, training, installation, engineering, and software design.", "label": "Technology Service [Member]", "terseLabel": "Services" } } }, "localname": "TechnologyServiceMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "domainItemType" }, "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": { "auth_ref": [ "r148", "r149", "r151", "r152", "r153", "r221", "r225", "r341", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r411", "r476", "r477", "r478", "r479", "r480", "r481", "r482" ], "lang": { "en-us": { "role": { "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.", "label": "Financial Instruments [Domain]", "terseLabel": "Financial Instruments [Domain]" } } }, "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails", "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_USGovernmentAgenciesDebtSecuritiesMember": { "auth_ref": [ "r85", "r255", "r430" ], "lang": { "en-us": { "role": { "documentation": "Debentures, notes, and other debt securities issued by US government agencies, for example, but not limited to, Government National Mortgage Association (GNMA or Ginnie Mae). Excludes US treasury securities and debt issued by government-sponsored Enterprises (GSEs), for example, but is not limited to, Federal Home Loan Mortgage Corporation (FHLMC or Freddie Mac), Federal National Mortgage Association (FNMA or Fannie Mae), and the Federal Home Loan Bank (FHLB).", "label": "US Government Agencies Debt Securities [Member]", "terseLabel": "U.S. government agency securities" } } }, "localname": "USGovernmentAgenciesDebtSecuritiesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails", "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_USGovernmentDebtSecuritiesMember": { "auth_ref": [ "r430" ], "lang": { "en-us": { "role": { "documentation": "Debt securities issued by the United States government.", "label": "US Government Debt Securities [Member]", "terseLabel": "U.S. government securities" } } }, "localname": "USGovernmentDebtSecuritiesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesScheduleofMarketableSecuritiesDetails", "http://www.calix.com/role/CashCashEquivalentsandMarketableSecuritiesSummaryofCashandCashEquivalentsDetails", "http://www.calix.com/role/FairValueMeasuresandDisclosuresDetails" ], "xbrltype": "domainItemType" }, "us-gaap_VestingAxis": { "auth_ref": [ "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293" ], "lang": { "en-us": { "role": { "documentation": "Information by vesting schedule of award under share-based payment arrangement.", "label": "Vesting [Axis]", "terseLabel": "Vesting [Axis]" } } }, "localname": "VestingAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VestingDomain": { "auth_ref": [ "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293" ], "lang": { "en-us": { "role": { "documentation": "Vesting schedule of award under share-based payment arrangement.", "label": "Vesting [Domain]", "terseLabel": "Vesting [Domain]" } } }, "localname": "VestingDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/StockholdersEquityStockOptionsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r101", "r109" ], "calculation": { "http://www.calix.com/role/NetIncomePerCommonShareDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "lang": { "en-us": { "role": { "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.", "label": "Weighted Average Number of Shares Outstanding, Diluted", "totalLabel": "Weighted-average common shares outstanding used to compute diluted net income (loss) per share (in shares)", "verboseLabel": "Diluted (in shares)" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME", "http://www.calix.com/role/NetIncomePerCommonShareDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r100", "r109" ], "calculation": { "http://www.calix.com/role/NetIncomePerCommonShareDetails": { "order": 1.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.", "label": "Weighted Average Number of Shares Outstanding, Basic", "terseLabel": "Basic (in shares)", "verboseLabel": "Weighted-average common shares outstanding used to compute basic net income (loss) per share (in shares)" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME", "http://www.calix.com/role/NetIncomePerCommonShareDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Basic [Abstract]", "verboseLabel": "Denominator:" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasicAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/NetIncomePerCommonShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding Reconciliation [Abstract]", "terseLabel": "Weighted-average number of shares used to compute net income per common share" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.calix.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" } }, "unitCount": 6 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(13))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1448-109256" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1505-109256" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1252-109256" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1707-109256" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1757-109256" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "28A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1500-109256" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1337-109256" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(14))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e3842-109258" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e4984-109258" }, "r115": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "https://asc.fasb.org/topic&trid=2144383" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6327-108592" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(15))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6442-108592" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(17))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9031-108599" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "a", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(18))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9054-108599" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=124260329&loc=d3e26853-111562" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=d3e27161-111563" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=d3e27232-111563" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "5A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "320", "URI": "https://asc.fasb.org/extlink&oid=126970911&loc=SL120269820-111563" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r150": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "320", "URI": "https://asc.fasb.org/topic&trid=2196928" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "321", "URI": "https://asc.fasb.org/extlink&oid=126980263&loc=SL75117539-209714" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "321", "URI": "https://asc.fasb.org/extlink&oid=126980263&loc=SL75117539-209714" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "321", "URI": "https://asc.fasb.org/extlink&oid=126980263&loc=SL75117539-209714" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919244-210447" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919253-210447" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(25))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919258-210447" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919230-210447" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124258926&loc=SL82898722-210454" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124269663&loc=SL82922888-210455" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124269663&loc=SL82922895-210455" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124269663&loc=SL82922900-210455" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=121590138&loc=SL82922954-210456" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.BB)", "Topic": "330", "URI": "https://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "340", "URI": "https://asc.fasb.org/extlink&oid=126905575&loc=SL49131252-203054" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "340", "URI": "https://asc.fasb.org/extlink&oid=126905575&loc=SL49131252-203054" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=122137925&loc=d3e14258-109268" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "((a)(1),(b))", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "420", "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "420", "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.P.4(b)(2))", "Topic": "420", "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "440", "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "440", "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308" }, "r191": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "https://asc.fasb.org/topic&trid=2144648" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14326-108349" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751" }, "r198": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "https://asc.fasb.org/topic&trid=2127136" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=126907644&loc=d3e11281-110244" }, "r2": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "205", "URI": "https://asc.fasb.org/topic&trid=2122149" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r200": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=124440162&loc=d3e12021-110248" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=124440162&loc=d3e12053-110248" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12524-110249" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "((c)(2))", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "((c)(3))", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(5)", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "12A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=99376301&loc=SL5988623-112600" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "69B", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "69C", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770" }, "r228": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "505", "URI": "https://asc.fasb.org/topic&trid=2208762" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130531-203044" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130532-203044" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130533-203044" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130558-203045" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130543-203045" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130550-203045" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r254": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "https://asc.fasb.org/topic&trid=49130388" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(ii)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(A)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(B)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(C)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(03)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=SL116886442-113899" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4534-113899" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4549-113899" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126962052&loc=d3e4991-113900" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5047-113901" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(01)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(02)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(03)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r278": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(04)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(01)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(02)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(03)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(v)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(l)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "2A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=SL79508275-113901" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(b))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11149-113907" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11178-113907" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "25", "SubTopic": "40", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=109244457&loc=d3e16649-113920" }, "r305": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "https://asc.fasb.org/topic&trid=2228938" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "730", "URI": "https://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(c))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.C)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "270", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331" }, "r328": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "https://asc.fasb.org/topic&trid=2144680" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "38", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5504-128473" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(9))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569616-111683" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569643-111683" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r334": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(3)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r338": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "810", "URI": "https://asc.fasb.org/topic&trid=2197479" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126731327&loc=d3e90205-114008" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(1)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258" }, "r348": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(2)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19279-110258" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "6A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=SL6742756-110258" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906" }, "r357": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r359": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32618-110901" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918631-209977" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(1)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(3)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(4)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "53", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864" }, "r376": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r378": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "855", "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.24)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r380": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "855", "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662" }, "r381": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "855", "URI": "https://asc.fasb.org/topic&trid=2122774" }, "r382": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)(i)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)(ii)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r388": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.25)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r395": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=66007379&loc=d3e113888-111728" }, "r396": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=109249958&loc=SL34722452-111729" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122625-111746" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122625-111746" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122625-111746" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(4)(i)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122625-111746" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746" }, "r402": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(4)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(5)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(6)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746" }, "r407": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(a)(7)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746" }, "r408": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(b)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746" }, "r409": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(e)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.3,4)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r410": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(e)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746" }, "r411": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "50", "Subparagraph": "(e)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=128311188&loc=d3e122739-111746" }, "r412": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "730", "Topic": "912", "URI": "https://asc.fasb.org/extlink&oid=6472174&loc=d3e58812-109433" }, "r413": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "https://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959" }, "r415": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "340", "Topic": "928", "URI": "https://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004" }, "r416": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "440", "Topic": "928", "URI": "https://asc.fasb.org/extlink&oid=6473578&loc=d3e63223-108013" }, "r417": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "https://asc.fasb.org/extlink&oid=126941158&loc=d3e41242-110953" }, "r418": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(10)(1))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r419": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r42": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "210", "URI": "https://asc.fasb.org/topic&trid=2122208" }, "r420": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(17))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r421": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r422": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.15(5))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r423": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.15)", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r424": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.17)", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r425": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r426": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r427": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(26))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r428": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(27))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r429": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.9-05(b)(2))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580" }, "r430": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "320", "Subparagraph": "(b)", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126980459&loc=d3e62557-112803" }, "r431": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630" }, "r432": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r433": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(19))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r434": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r435": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r436": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r437": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r438": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03.(a),19)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r439": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580" }, "r440": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(22))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r441": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(23))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r442": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(8))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r443": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r444": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438" }, "r445": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441" }, "r446": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441" }, "r447": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441" }, "r448": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r449": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580" }, "r450": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r451": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r452": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(ii)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r453": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r454": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(e)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124508989&loc=d3e19393-158473" }, "r455": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195" }, "r456": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org/extlink&oid=118262064&loc=SL116631418-115840" }, "r457": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org/extlink&oid=118262064&loc=SL116631419-115840" }, "r458": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "310", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Topic": "948", "URI": "https://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014" }, "r459": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Topic": "954", "URI": "https://asc.fasb.org/extlink&oid=126942805&loc=d3e3115-115594" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e681-108580" }, "r460": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "440", "Subparagraph": "(a)", "Topic": "954", "URI": "https://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629" }, "r461": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column B))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r462": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column C))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r463": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column D))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r464": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column E))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r465": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column F))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r466": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column G))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r467": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column H))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r468": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column I))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r469": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669686-108580" }, "r470": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "985", "URI": "https://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756" }, "r471": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b" }, "r472": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2" }, "r473": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1" }, "r474": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a" }, "r475": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1" }, "r476": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(a)", "Publisher": "SEC", "Section": "1402" }, "r477": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(b)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(1)" }, "r478": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(b)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(2)" }, "r479": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(b)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(3)" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580" }, "r480": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(2)(i)" }, "r481": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(2)(ii)" }, "r482": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(2)(iii)" }, "r483": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e557-108580" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(24))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(25))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(4))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1,2)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.9)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3151-108585" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3044-108585" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=SL98516268-108586" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18726-107790" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(2))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(m)(1)(ii)(A))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r86": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "235", "URI": "https://asc.fasb.org/topic&trid=2122369" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r94": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794" } }, "version": "2.1" } ZIP 69 0001406666-22-000031-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001406666-22-000031-xbrl.zip M4$L#!!0 ( /> ^E3]UXD(: " "88%@ 1 8V%L>"TR,#(R,#3O>]56N1..:!JJ(7!=B':DNR0=@7OGC%" (-' U, MO_[=D4*8R3;&0E**K,$&92HR,IX]/#MBQXX__^]%NU4Y"[U^L]OY:PFOH*7* M_UW[\__+LO_Y>^=]9;/KANW0&50V>L$,@J^<-P='E<\^]$\JL==M5SYW>R?- M,Y-E^77O>;AT:!"$"'W+O96*1?!"FLRQWC(6/ R,SBBS!NGA4#(.:V7 M#U>Y9)8(P^ V!+=%:3/CE,@P,0H;*2/A;MFO(BP#)A'1: 6SE"ON/%:.%-ZO+2] M]\;/A MW7MUUAYU![_+QFZ\OWO["G5Z;_2XC6'X/K=$=XR_ T)Q\Y^YTV9K^32>< M:=T=:OB@>;'BNNV\&T@B<@O;QQO^'K $98B <-\,U8/^W1G5=#6_=;5E.H=_ M+85.MK>[!*(>C%_[LQT&II*^FH7_#)MG?RUM=#L#4."L<7D*;^1&O_VU- @7 M@S7:G[YY5ND/+EOA MKR7?[)^VS.5JI]L)T('FQ6JZ,?1&/S:]#YW\1[A> RO2:[K1\R\&.R'^M=2, M)!#$/&;<22955%8X@30"U:<2&OJRF7<%(YQ]'>B.::='A^;J5@?Z=[D!K],S MK>V.#Q?_+UPN59H>FO;TTZ7=[)Z])SMG^[0Z],=;9P?O]'']>/VB1O8NJNW] M\RHY:-:.=YK5JSU6^UP[J3:.CFN-/7K0_J=5^_R1O:>UUOY5][S:\*UJXY]V M=;/6WC_>1_O'55S?_'1\L+G%]J_V< W:.6A\.JF_5>@].;C<_^Q$]=VG9GUS M_6*_O0?W.%K;7$?5XT-2?_?I>+_]J;G?V#D^>/<1/CLY\^_>-NV[/9'Z46T? MM&I7'\\/-O>N:IL[1_7-%O2IU:Z1G9,JV2<'FP>MZM7^]7<^P;-XYZ#1O:HU M#B\/VGOPG+]/:HTJJKW;8O7/T,_/^Q2>- M;5;?W&9?F&$J,B$SH:C-&"(A4X[@3/.@E4.&:J>7UA"H*D,"_OGSS1U07Q+C M=7 ^/CF@MRUS6&+[(VRO'F KM"/">IT)0QGXTJ S*Q+ 2)NH%+-,L*6U:%K] M,$58Q[3B;;,/)F<_F-Y;^*1? OPC@-$#@"U1B"LL,H2,S@ +G2D.RAL,D"KN MB"7.+*TE$&:&[P=HO^M+A)^$,'Z L.*:XJ!8)H1W&>-1 ,("V#'A/C@FA-%X M:>WC-/'=&/9Z=]1WJ^,W(3Y8JHR(#3SA8K#JX9.L#8\] H9?>N8?0D\>0,\= MH\@REA''0;D]! "&&9=9XR3RC DBXM(:)F\H_AGT#?;>:TDU]YKI(#6)3CIL ML-0L:".^;-\'_3I&6JV?AA[PUL[A^P ,^7W3V&8KD;"1/.P. /&D]_7XMMD! M(M\$Y>_VFXGH;ET \>PW;0N^U1_,6!AJ3=UV[;>=^C&T_6[OHK9Y>%4[KE[N MPW/VCT]X;?,C",A!&P2%[!]OX^KQ%GU/=X[VVQ>M^O'V>773']>NUNG!\3]- M$(;C_:N#HX/CH^/ZNWVZ?_7IJ :@5J'_X^_ LX8'! 3I>/V\1JH4OM^NMK=! M&&K'M?;;=OU=E1T<0YN?MTBM#4+1>!M!$,ZO!>*ROGEX65__HB4)RLF001!, M0!RHRBQ!%N+DX"/'BC(EE]:^%]_^:]VYWC#X,7+-T+_&[F?D1T?E* @BD@(S MS1#P0Z1%" H3)96EWY:?G7 6.L.P \%>LP-B!*XAMQ@0\]5MJWEH1J)R&MP@ M^$:S#;?4XRY\VH_&I6LC7X+O&)H43J_Z8>\2#-%L!0O7-\:"M4?JF_!_8QTL MPT=6;7S$2:-!:'#MRIW7-M^V:XV/I$H^M6X+5NWJJ%7?=*S>. 0A^'AQT/!' M^U=;&*P56*BW("Q;K/;NZW=N"1:MOX/WN#KD]=Q/DA1)8]C5P<0E?ZUU&^V3ULIWLX_.^HE(;L3 MBJY<]#TT\>9N&Z/G?WWH=1_ZW6$O_RV?Q%F]EMR17#S'[XT;"GF\.?ZMZ=/O ML1EZE;Q#X=$)G8WM_W<0'G_O MZ[6;;OI;M\HL!?)WKXQ_'S_DS9V!>G3<.",62\Z#E! I:J$\111\AI-&81?U M6..QFH/A<B#6Y& *N;AJZO/&T$AIWFZ/7[1P;$ZN;-VN#[AKVP=@U ?G'< MQ/C:^/?4QJ,C^A,^>/Y&]*M,/7-$A[D^WQVRZUFZU;W=S9\>S6BBAI&$8 ?\ M$N-!"6JH0T1%ZI@*+!]-C G%\S6:.,,DH_C71Q/\XFX2Q)O7\\TSZ-;M6W.K M;0;=WC,'_L'WTX>;H=,%+_U8LT]5CSM-O+G;^Q]J41 F2L*-%I$%B6RP'',/ MJF3A%\:O[3E#=&KV_/JUPV$BPJ-?/3SLXK35=,U!-;0M/,(WVXD-IR67?F^P M^J'7]4,WJ/=V0^^LZ<+Z11/,37*!J[N7?>#4_>L[1E__\\VCK=X,U\W#G^%; M6(;H='T+1+?4($=LB!9\"]*4:RQI)$X0Q83+,<2 ($S3 ,P.*8DY M,TX9(ZAVS/!H*)%.7>OA-8:E'OY8#Y^*X>3T4&&,"(J>:P%Z:+6B5@+/M)XK MKP'?0OO#\21"([BC3K?5/;R\OKR(7A'KH!'3V"LIF4M81H$(-9%+8+8*%]HK MS@K)F?A&1I2ETII !6.,,BZP MXJ"(.A:QU=8:S;S'C@2:!".8C,AHJ1EEPEA#K2'^>I:4S9_+')O3FS71K?\,TTII MMWW:[<"O_;M6%SYO=SN[@ZX[F;R]O3M]RYX]?7L'&AE%M-8J:;AB!@=M1? H M:B^5Q3S:A8%FW?M\!=NT/IBFW^YLF-/FP+0* I.&4! 12[%FBCDG#"IM;.PW7'=]@LPF1>!3%EB I;<>(&8 M5%P;R;6G\)L*H&MQ82#;"0/3[ 2_97HI&:!?$'QD- R+*&2:*./>6Q>MX380 MPRB60DP/GUF- '=2BT@4\L$RE!(_ @D!2>8$E1R,ROQ/,\VK$Y@]QP]16"N= MP!P%Y@E5"G,: P/_KH1Q?O' ?5'R-7M -6 GD8_, *!)=;WAE& I%5+$"KEX M@+Z\8YD]JC08YI5B09G(&)::*!QYX)8'DZSQXJ$Z$X8W>Z"1,!09$;VEG!EJ M%"*,I+\9$Q&HX?0RA8ILAB>5PG0OG9"#&:72."-9 '(.C0>!M*6$6D;IPD S MHQAX0C 1$ADVC,40/(O. &=U5A#$N=2&<+%*63VEAD$>,"@Z*Q2P)AEA-/&@5LW8T,9L6 N9N M!6Q.G1*^2RU^ 1KG G(Z6,N]90HX(N,*(-%:!88P#@L#S2R5$C+Q8%IQDYIA2 FS&73_ (&1 VV-J@?1%V/LR=8YD]JFFF70%H)J2L,N84BTXC M13@5CI(0%P_5V4_,S@1HBUPT5D,4#(00&V$YLF"(22!4@&D>!UK%QW>*,;"< M4 P<..#A@Y">,JN9%19"7PB'5422.+TPT,PH!IX03#Y&%XE'R%K 1GOK%#$4 M8N(88TIY61R89A\#3P@R)9V$@)>32'"JNJFU($H3R;0"VJ+4PD V[1AX0O@$ MX241 <<0,-/1:&F% +"8$4X'PZ>'SZQ& (31(Q6$<)@PR9B&@!@%)*(2C'BL MIE<+8&'<\B\4*;@+#>/&2RPHCY)%*@$J$ZQ01B(@3QXM##2S<%$+PY,,W?+DX*,I(6X(*E$6# +%D\(S15RH'#8<>46 M!K(IN^5)X2-D8,!VK742:),D*C@*,,F(,/P91 $V@LP>4)$@"A#9$*89ME$Y#AY0"6N-] $OH+9. M/V-V!@5.B O""N\I,LQ88P+CE!/B%!$":;9XJ,Y^8G8V]AA!K*L@Q-54@27V M1AN-E&?&:QH-'<7 : '(T+0B0#0Y'H0$1PRYM'64:8@LC&%>&BLL-A@+OS#0 MS"("G!Q,&EFIN?!*!,P8#LHK*ZA46@=E(89?')AF' %.#K)HA3&$<\8=9I@P MA7U /&()=C!$O3A&;ZH1X 3Q\8808R0Q$ I2&I11QC+G ")D@V;3PV=FMI]0 M:2E())&,"<55,$)&@05RUB"I"U ^9UZ=P.PK=> 0HO5IC14B8(N9Y=(*$JGP MB&BKV.*!.]7DI.D#"D;*.\F5-X"><59C"A\(%;Q03&FQ>(!./SEI^J@B#B$1 M)]1C3QG%2BL;K 77)#V@2_GBH3K[&'@F0#/-M&286\P5(&7*URWA@< MIEA?_KGX;IC^T7K'I[\2PF>F]8@-AHL%V3&%!$7.F:@T98P1I(4T@48'/)TE M3.9_A68N )G0H&HR9 T,&+H8) MQ[WUS'J'%D-OJL E+JNF=Q(&;X<=7Y1]N5CX=.R)I8$;9B)3+%J"!2:*1@2? M+H;B3!6U/LVJ]TVX/:.MFL(/= MX(:]_)RY@BB0%FECIZ2>BL"<8=9YZFSDG#*M4Z76A5"@66 T0>8F'>=14DLL M8,29?CVZ.Q]R&4>CE9^7>!6AO]UWW+/0ZZ?'V61E'W=Z@$7KMD9DUMA4*I\O&!6LA"'8T2L:!X0?, M/:,FH@@!L;?SK\NEG$S%+TM@2HYB)*QCV)HT8>*ML#;-EA!/%L">%#0,C!', M/*8QI=5QIX#*2DZL4O"42)5< 4N: P8L6 4FG12,,&\E9I)S[DFT4:""U!1 MZZ<=J!_'$92J.B]04PO@%X5.SPT4FB'D%/*>D:X-$IHJHTUWF!C>0'" MP[D$:'(:1*V .# 0$SAA"$MM!3BDH*+!,MHBK'O]$*#JL ,MG)I6K3LHC.)H M@P0A.")#$"-4:2EHP!3B=1Z)95,\H7D1<)F1Y?*H7D5MU&0J3 0^$_0R!'E]_H MR:U;^SM)GGO-SF%!A)<0XXV@UB.-F3=2<:NPI32=VHH+D3L["0$BDQ*@.=&D M5R*\DD:52LFFD\E98.FT#$LD9C35 3.DM+REO-R= #+:IG)IB@;&4O9,,,@' M0;%/)U2;15AR>/DDB=)ASS9($-ASJH.20@#;]/"3LXAC811BT2_"+$,Q9'AB MG.'UR3 C1*;C>:SRE($%-D0%*GD,6#*L0VF'2[%YU'T[')&B)CIGTY$?Q@6J M@K2I\%\(PA1 ;.;*=\YH,>GU"2Z1)#*P8;7SBKJ?3E,Q5@K*SB)IU6IX"%6J(CUE1*C2ER$8LB M\-*Y(A0=XUQ:8@0E&%$I#&*\""2S%)4IK:FD=11. M;;2(,>V5]9+*Z(G@'CN0E0*(RERYYEJ M7$TN!>@'SDI&&G4$7(UDC'B=2MUSQAAW41@O"R5 KP0SP"E*09@DX",H=8H) MR3UG1#NN(BM 99LY274O/=;T"R\81+S7BN=3L!$I+8'I^'S+JV!:%Z#$]5QY MK#G1I%/Z%MY27J1H[IBQCGH.4)!'! M*EI->%22T. ($_,O+_.5W%XZ[!G4YJ.,":1P3&=BT(,Z7,ER*S2-B0YW&7/E@%.&, M:J^]80Y9[,"/VQB*4+QOKGQGF7\_)<$51"+-B')@[1A%3DFF(B7$<>=-" 6( M4^;+89:".R7!U20*&Z70QGHFK;0*,Q\TL]PBJT4!SG$J965J1@Y#0"UM5)Y[ M9N$GR8BG6&@0F'3:ZP+(2K$V9I1!]O,#%(BPK3("@^,>Y8P@Q# /T09)I"@" MTUPL62Z#[>=/>G)J)'(>2*AG CD='$40/;'H'#&H".1S+F7YE8B/I-P(K;17 MW#(%XH,I]9PBD4JA!H460'S*34:++,!*&66L)5I(Q8) 0$:=MX:FHVV$U;$ M CQ7#G1^M.F5"' D.IU4X@W#E'D30*"93PN9U# :["*0T5)F)BPS02+A@M5< M1LJX<\HC%%,)8281^/,BR,Q<>\ M"!D:A7+6I=Q.*,@.F@I"2-0I\TQP+3CG,6J+C'.4%\'>EJ(RI345I9A4R$;/ M(_ W;:5U4@>F(%N'P MS[GRD:].@*A+AS!0JS $E*G4L]36@SQQ"C%F,8YB?G68I0DK3I2'N X(!O>& M^, X)<9(R0,JP-;4#[TNO._@\D,+AF"]XU.^^VEJX^_+QN5IN(O9S<47A6=R M>\ XU2X8J[W0G 4OM;=>,0?A#-)"ZP*HU!S",SGM<Q9XR%JC6BL80G>/&$!$*]VS$>LNB!:%R*W1))7R8PQ%;S"B%BG)K0X,N0*DO. MCF:HT3PC];8)8Q_>-\^"W^[ ,!PV;2NL]_MAT/_[LFJ.N[V-ENGW'Z?C8UYQ M[YLO"AZ:G$%T*I6=0N"T()+B@!V*0AJC$NM@/@?FVLT(^UNWWH9\?.4YD LN< Q81YU.OE7&,"6#%E33M(6F&$7\"X#TBW : MS55,6]ACB#"P1MF /8(PVVKPEJX@Q1B*!=XDJ\%HBWVPV 7+*/%*$>^)I\+Q MH R=X]"AWQNL[@[ X*3[WX7N8<^<'C6=:=V>'3&=?[K]L&%:S=@%*FKF5Z6& M(((Y))UAZLO-:+='ZW5KUVW C^,&QE?&OZ<6'L68>&NB(M*Y &H*L))@TH%1 MP3GLM2S LMG[;N>P$7KM#\.>.X(X/>U7;0Y&4<<&B,!AMW=9C]L@"^,[_%UE MW>Z?%JGIFT\8DSXCA3.)@(IJ%X*\P>7VQV7'G$6UL'C M^71O0;3)6::T(AQB",X(\\9*KZQQX/Z( E5+,04 @Q'.BHD0P1]"#WQ+)/1@U^W %OGW:ZEZ&L#OHNI/Z:>K RT9'22(Q_/>$Z.B^\/Y"=$2]H:E M*148LY2D1(&8F>B9(0QQI4KAG;SP-LZ[I?!.0G@-E2:M\F'A,',8620%1UYS M:IDGCEP++QD++YG?V9SI"^\]T>MIN03?DI]??FZ*J1K-02L +^OXYEG3 M#\?Q5+JT=1'<,+G_>HQ-]\,Z,1.05_)T>263F8JBB".#E(_">D8=-R@JJ208 M7V\,-:Z4UR(QA5)C7EYC< ^XJVR&@4(6K5E-BC!'4^JA+PO-:9(]*34F"EH M#(Z"$,P5PIS!_];Z-*L3#/S/B*/7&L,0+0E]*:_WY95EB$Z7PV,FC#=@RZ,4 M#&NCF04Q2KE\R!@C31F EO(ZXYCS9OGD% !^L'B2#WJZ\M-K)]:90!5EEDK) ME"+6>0OJ@ R7*?4@S/^,[E.F'PHRBQL)Q2SE"KM(&";$&HTH2[N()3-$\P+9 MH=F@,F/5S&_[AG+FUWY:/8$QX8 CB 70)0X"01SG7C,::#"&CQ=<%.8++ A/ M?M;NT/;SW:&#K;2R]O"I]VYX:;.@,LPG818\X5%KBZV6C'%O$4B$)13,!<64 MCM>W66D-O@<&F]#F&TP#5TP+\)5IKMV_C-,R4#-X._ .,Y *-"2-G@U MS:DS- GMJ!&BM1.DT@,BLUXIYHC06V@&VC/("8;O=<=UVN$G"?-]U MHXGJKU!O=/N#>MP)P":'X4.OZX?N)7;5S1Y5)H/W@BIA'(+0U&A,I?68.X4L MI5KFJ&) E67Y#R ):H_@RK.465/017GJ-()H"IQ!,9C1;2 *B% 82DV&CQL M3*>LJB)-?,XGJK-)23$&PD5N*2&"8:9-X$AZ+&+ R 3#KG7U&M525Y^CJT]% M=7*Z&IFP@5$;./5,ID-NO4U_F1"9X6B!_>INZ)TUW4LD2<^!7R5.2$FTCL0R MZH62S!BJ,8M8"(34XOK5*:$Z$[^*%,:!T#0?%)GWJ7:.T<0[%"6U2*/%]:O3 MT]7I^U504<188,ZG^F]"&ZDHG[52*=LAQ;A)AAD3(5 MTLE)W$4POXY9LRA^]68-)+1:*2.KXZNF=Q)2=M;614K">H$:2W/@7P-64:>Z MI\ZG_9\622Z%LQ;^DY::1?&O,T=W)GX6!^# UBK$!6>*RI1HABV68)X9A#IB M4?SLS-&=B;]%0A.)/0M*.L:8U)QK1UF(VAKCD5P4?SMS=&?B=YU(DXG<:.P< M8!M,Q(HS!&IK-:4D+)K?W0G]D&J? [R;J;9Y-Z\JM<"N5V&I4CI\Y#*5L,=& M2,;3.D! W+CKO/D%QL,2E6I$LU2 MAC#N$)ALS1DQ:F'FE,0DN4GQ6,GF/?!"L>]]PJGDP$T+X+GG#UR,W&(F% ?/08Z MRQDS%MMH*.?2IF/3'=*N YQ]LC-)H\):6V9\PYL)I 7KC6R$DL?$$NG!J % M\'-Y$G@;AL29_M;%WNXBQI6&6(U3S &TE&%P=@Z1=)8WIA9+H8LPNSMG,,[$ M T8C/3)!$T]6\&^THY%I2H8+V/3"%MM/#IW'//L<2:^.*[P6GJW_3]GXB2 M1R20#-(R8:7%5 K&561& 4LM0G&%I]"8:M/[5M@R_73 W'I,E&81O2'$],*9 MJ 4P&<8U-@ACS;PD/$I"2!'VMLPGFK/9TT*($]YA:R-CB$?KE ;CFLX-],JX M(F3[S">:,_&4'@6EE4+,.08!(]9"&0C_M8#AEESRXGO*V>GF]/VF\BZE15/B M@V?.8P.0*N50@'"$"[T ?C-=7N\WS0?CX %N$=VEE0(C'J+4"-32!@,A8Z0F MJ)!7:$VZTU,7WDE/7Q.D[1^D4 M6$VNF-*6>:ZML"HJ1HG@47A+_CK3;CKO9[I'.: WB^W/"I[ 13GY3;JOLRQ90PI\'C,*H&8 M\,1RPAW!! OD=91H_@\!G%>,)G?F'THU1E,=?^\)BT8KZ9VB5KA@@R.B &<7 M/QFCK8L!&)S@/YMTR^"R(%H44) \<$<=N"NBL2(N2AJ5$:Z0?"-9AMNJ<==^+0?C4O7=L<>?P3EGR_3\(KOIG:^*A?0B)=] MTHW@W1K ^;$+X%LY2)V@WFL&]D$Y*16G$04'%L/?G^.99P.QTG[_5W@@O-,V-; MOWP 6&+LHZ/:K]^R?\LLUCMA_/$\4?D[YO-7EF4ED=*H2//5(..MX1A[K;!6 MB%$]#JKE35!-Q+P*\NQ+U-\/K^7/A-=$3 #.(%&:Z:*4F)C/5D(80*TC-)6S M$P2/O6&)XM,=QE=@GNHPWC0O5GNAWQWV(!89_7H4C,_[XYMG:W_"']=^!,N M240T6L$LY8H#:,IQ+J,-W*LOR6U\_4Y_<-D"1,"%9D>A>7@T6&7\=/#'>=,/ MCE8Q0O]GZ>Y]IG<(MPZZIZOB= #7^J>F,[[HNJUN;_5?@"**\8\(?<^B:3=; MEZO_#4XZ]"NU<%[9 6?<^>_EONGTLSZ\[?6-_>95@.?!H_-?SZ_[@M ?K68G MC/N&"?H_?Z01R7QPW9%I7QT"Q^RENZ [9F[Z4CGJA?C7TK]^#(A<6FLDI_/G M&P/(I &=\+#J^1G57^S*3PUJI1LK&TF!P+7?'MN1\#]4@:^B3:&7>2<,D,W. M:J(1H?=M88=W>(Z J7MC(1\9BZ6UO=IV8VNSLMM8;VSMWGV%6YV?E][N;FWL M[6PWMK=V*^NUS[WV;JNR4:]6MW=WM^NU&;X">=(K?#;](P@H!MW. M:/+7TWV"AJ9[0$XAX$?/_GZ\DI^ MZO DA4 M^MU6TU?&>)X:[V'45U$%YZU\?JE3_!(W>ZG=HP3WJN7#ON MG62MFI&D7?P>,^XDDRH";W(":212_CXX\<>6F2H=DYB2#\W5S:X;CF=7EJX3 M NBG2[O9/7M/=L[V:77HC[?.#M[IX_KQ^D6-[%U4V_OG57+0K!WO-*M7>ZSV MN792;1P=UQI[]*#]3ZOV^2-[3VNM_:ON>;7A6]7&/^WJ9JV]?[R/]H^KN+[Y MZ?A@OZR]JY[7 MR#:KO]MIU4CUHDJV+VKMZA7\?.;??6+^W_^T#DCKS!Z?'L,SK@Z.MUB-?"2U MXVVT?[5.]X\/V<&[/;I_M76U?[Q%]J^J=!^KR^KF_N47[/(:4SA3AJN,.2,R M':B L%MCA81WG.JE-8RRCSDO^HK"6JFVK0,3] M^Q-E8>K(:[VB.'T.\&Q%[ =B\*:>C?-NV[/5&[VCFN'J]?'AQOX^KF(:]M^N;!YZV+_<;>5>WSV];! MYD=>O3J$-K>OO_,)GL4[!XTNA?;!Z$,?C_?.ZYLGJ$;^:>TWWA[5&E6\__G3 M26WSY*H._:VVU/G[QOJ@NHLNWC>@/YO;[(LSVD?A34:9T!GS7F26,9E%012R M01@>Q-+:?_U+2R;^^*:ON);Z7Q=HL"C3I["Y-'_<6]]I;.V\WZ_L;'VH[S0J M'_9V=O?6:XU*HUX!BMX 'E[!M%+?J6#^F_^]4G];:?Q[JW*+O=\P]_6-1KJ, M-65WAFC6W.R^7G^#FW5[E<%1J/QGK'R5T0Q+)5^8F@9K^Y _;VLT 7='Z5<] M?)*UX9E'Z6N9-Y?993"]+'0*J?W/IGD7U:OJET""$U+)S!H6$\LSF9%49\)S M1Y%AGGBWM/;/L'7Y7__" OU!EBMIV)]#^:83WC]-0.L[/YCR>=[3GS+/DDQA M&LFG#)F:"Y9<A?,U^X6W"R= #/J)%$<&K'U<_[%[7-HU9M\_ " M"!28Q3UTT#X 0[K-J^_V[Y&ETQ:\#]W_O(6KT#:86E1_MX> ' &!VKJJ-7;: M!VUH\_CD_. QLB0",41@DBD69<9H()D%F#*K$7-"8!98N"9+;*')4F-GO;:[ MG5.BDBV-V-+@1OW&="GVNNV1M_CU/RN#;F52;17-W6]TV^UF/ZU/5MXVP7." M0MG06WU)(KJ5+TRFIXT>5DAC^4M3B%=?O#22*(\S1U7(&%8T4U*)#$6$"+!. MRI5(R\\XA8Z2/8=48CP7%.D53"1.S6H2]B2=?G'=W0F'>4W-SB"=7?SZ]!=] ML8I02@D" #'HKZ LTYK13!I.F(W.A!#!N((P7"Q7MCONO@*OS'#5\6F.X;>M M"^,&E01P6K?^"GG%]"N[I\'E9U-7FIW*]J!?V3C*IS.>-*FM2[LTK06.PD3# M:H53^JQP^'O7R I7S_OF=SLK5IAZ6NS^_"![I!73"$I^: Y>.L8>^914V+EW M>IUAD^\]VQB5L-SH^O PW.ZG.TY[W;/43D'G)Z\#[G8-GM,ZJ7[^Y[C:_GA9 MVX0@F6SC6J-Z>7!\>+E_M=.J;IX0N'8_X&[OPSO5/W^\V&_#O9O;" )O\%5[ MN'KU3[N^^<]Q[=W>>;VQ?WGP]I& &V-AB<GL@USL7V=#CNJPE[@>&[:NKA] M5Q<-Y31HHC,2MJ#H]"K_#/L-?N^F6^J 5[ZI^V]6;OC.O);>X>FT[S*?_^]-%0% M0'E[96=E=Z6RU3YM=2]#;P3K'=M2J757?B_@%.:+6^%U[WNAW[_^ZSUT !?2 M O]21(Z_$,:1Y@[4!/]9[C>YY,?GK+R%&OC!J$/*19U0JGS$+WL\0'C,;"0V8 M*(,"6UK;!97]I]M_P#^GAU+N@>J]#Q!L-#ON]4UW[?$O$L'X.0ZD)&4S,19] MIJC6&1="^Y . T-F:6UC_3Y(4\/H0Q<"PM9!\W04+;XFA*YJF]4OQGJ$!;99 MT(YG+%J5&658IH.C06+E<;1+:YIC^O2UA!?WH$_+9O_M&N(T"_FA!QK8/#6M MRM9%<,-TIE.E'F.JA_%[Y3> OY+P_Z59R)G,M;Z@FB0?L]X+YA4J1KUQ\B4J M(:BF(@,-#U0*E#&B] N':<\2* M\A4NG[?B\_UKBCY-6'^FLUBO(/F\'-#O/Y*1R7>6ZA6&GK9"]T*9I=_3QC^> ML'_N1=7U&YE\S4$K7SW?,NZHLM$R_?Z]/=\_GK^[8Z3F>JKOB6/2,[G#V[UL MVV[K)R8R%VT@QID5N6QL7;BC5+2L J;[\U$3/MFYL>\_,[=_;9MS8_Y-O[=0 MFC?UE/!K'WR)B#N5[7-K8OJU2&&9USL'T/[ MC4^M6OMMJ_KYX<:X@\__M.N-*G#^HW:U4475QM95ZF.M\;8)[\)KG_?(_F=H MIP5]O+_T'#RBP@2?26UMQ@(#[B\(SABA1+O((30@H]Q4T(?=0=>=+%=.3:]R M9EK#4/G?0#L)3YG E?[1]Y:F)VACGZM8L[0[4U>-:]L^,NVE7CQ!+^XM Z50@O!8DVX(PS#NX!W$6FM$*9)!81*8D"P(!*@:CL=WLG(U=Q M0Z9^G"3Q_=7C9B>M0*^2M%=O5A'_=L>G!?!0L9<5=Q3@[5*YR,KY40+@U[W##5-?=(%U..XLJ'JX"IT^WGO:""SG#QZ22[R7N M5WZ#]D O*OTA$-O^43>E"H\W\@R.S.#>:U3.S=VNIGZ.OGS](K\O5TS'5WXC MM][6@HK!3?88WB5]*;\?OIFZ^N9_GI1>P M-H:]'G1KM*TP.<^!&0S[A;05OS0A3+]89Q3SQF0H1)HQ(T1F%4,9MT[$B-)! M&'%I;3_T[^OUZF,;L)ZHJY]AR).T]G])2R]FOF?ZX9^U[NS'I?N46459'? Y+2;@P%8JM "T]/K=A+U:5U6 M"@R\IV8D2I"/19J&R:@1EML[MG MB+^V<7LN=V<(=S+$K_=?#%NC1*C=K%'Y+8$J_X!P:>7ZAL%1LP\]-J=I&\9+ M&^11?V],;.C_/CL#>FN T_A>V]/79T OOC#/"+;.98:E%35!<::Y=%EP"D95 M>**9+0UH:4#GR(""S3*5%KQ*J!CGP(#V3+*"R:;T$L=[]-,*B&[VZ(5^&RPO M/*4W9E-@;]HP!I?+B=)"_N2Z,K1$]^ M$]WSA^ '>#%$BM+9%4;YPE35F?G$V=<"$+T-L)6'W=YE(>G:]9ZAXY,K>.YY M;=.AVO$_1[5W6^C@'?2EL7Z^WSBYJC8.VO5-QZN;[L&>H7JCB@\VUU'MZB.I MMK?0?F/G9+^]AZN;?Q_!-7C6/JM=G9S7\"/[]Z3E7-M40X+#'XQCDRD991:5 MB9%9P(2ZI;7WN>M:O^69\H%_V?GCN9#S)U:/NBF_^!(#4)2Q>II->$2*7K74 ML#\>6YN_EZE&OY.I]L/!T4^_54SLUL5Q8K7' H52:$M3]\.AVAU%:J/HZF9R M?O3KQB@0>[UR].+<,!_]OX=]>'*_O\"U%J=#'2_?-]R]957!@HB49LJD[>9" M\4Q9HC+)+/=24@ZH/:W6X@OXO/+6']RZ./YY:SS%]6XTQ55:UI>VK.,1'PWX M]7B7%O87+2QZD,GE'8L".99Y0WC&)'>9H3(%Y]HSY$.@7$ZBFNU\6::?-6(% MR+^)WUDV6*XT'U_M:,;'5HKS]6&(0CK=?'EWV!\M.83K4ZD?JW+;[>7/:EVF MAY\WX='PV$H'7JV;5A'.FOT\JNF8CFN:5EJA2$6STLWI&$=O>KY?256RFOY; M^X3H;^;W1Q<.*O#/G*UYW3X0\K0[&JK57DCKXF?AFT=$7B] H*]?,;;?;0T' M#[\R>M.UO/S(8Z?SC?X\ZGV5[,.0V5XP)YF)@]!;-:US<]E?>E.>95F>95F> M9;F0J]7]H]!JC3U Y3>PZ_F:\:@6Z@]69$>7P+I^.U]F/_1_)>U@@OHWC3@_ MC>4"D]#GGT!3;^RA+Y(;'E7@F4,835Z(RAY614>J%RGOZX5M*W>0X<,+IAISE2T7QO M5'_IKMIR1BR6G R::[9-J__7TG;M[2.9 MR_GVK#SE?C=_5'TXR%DG('7W7*G.L)WY;NYV4H,0&$"X#6VA5Z?4A_0+BA9A M:V(F1, 9HX)DRF&1.8@449"!*PU*+?@R86B98S'6ZS' :Z--;_VQ;WFDT(0; M;9SK?V/C7/'?I83?3Q] .59I*J M*E>$>%[M([)"\?/R-+_7+%]A2LZX0,O47>+(1T_3\:%';#2PLY\QSQ@MK7U8 MWVE4MJ]G =YNU]9K&]OK[\'P)3.RGI_P]HC9GOPBU^,^H)?>=?H$I[!HLF]@ M-?W5\9ZG]A<'VU^B_0#Z;'2E&Y+2HB%35*$XMIV19^R@NKY)FI?YL6&(-0 MV3T*X=&(K53]^<2S5/U25)XB*OJ;JG_+^^>3-NW37CB"^U+%@%RX"OBJZ4B> M=BC-6&$ XZ49*T7EQZ)"R!/-6+XL>-1M^=#K_W=EZS_#YN"R- >%P5B4YJ 4 ME2>("G\JJS']H\K;5O>\#&V*@ZPLC4 I*D\0%94VV@Z@.X-NY1O6X+&YSM(2 M% 9>]5HM0;F^\60Y$?+V^@99J51-QQSFJGZ3F+;9[+MAOY_2%%.AJ_6.:5WV MFSE#^&HAD@D9[8))]^R$_K U(A'UTS#J6FDZBB,2^-7:CI)%_%3.&EI:J\,0 MGS7#>:G>A8&L5.]25IXD*^G'%"Q+@U *2M/D!6QM%9R^6+C1U"IZZ6L/$%6]-+:^^9_ADV(XR]SS[YA M3IL#\/Q@ ;K#GBL]?(&0).2U:GTY^_=D05'D]NP?7:E\3)5F0.?S@T^2"8 / M6N/?TSQ@J]L?IFVLZ[8['%2JIG<2!I6=9O^D- V%09R\VNS'TC0\75#X;=/ M5O)]J3V *#<+'WI=%WRR!*7>%P9.\G/I@KJ0>E^*PY/$08TW,XYW,]8;_][: MN;V3L53LPB!)7FWB7^G0GRPH&M_;R?@^'$)LGWOR_*3!TI47 \A2XTM!>9K& MLSL:O[Z2!^J5M\8-NKU2VXL#8JGMI:#\6%#N9_+M=49%4$,Z_G?7M$;%YT:; M>FZ?#9_B^;U^2!>OR4!I&XH#.7NUJWNE;?B):C?HWD3_9H@F7]7?.TV'DX=. ML]N[911* U <7$L+4$K*$R2%WIO/K\(3@!;$ &S@ULI>J?G%P;/4_%)2GB I MXK;F\Y5*/3\E8;LS*O8-398Z7QPD2YTO)>4)DJ)OZ[Q8J6Q='#5ML]R^6R0 M&7X%JE[*PY/D 9.EM=WM=[7UQM[.UFZIQ<5!C7TW$?>;9RF^^$D>CV#[,@7M MGW9J#IW$:2*IJG-YG,B<]*4\3J0\3N191UM<5]FO/%I@?\Z/N7BBG:)+CXS_ MG6B'WC]Q,:/?M3&KXP&X]%B[,\&13P&RIP> M__*31^Z(>>IZO;:Y5=O=VDQ'U^S6WV]OKC?@E[_7WX.V;U5V_[VU]Q$U4_]R#+D4IU. M_JR0Y?R(Q'0LYXT>OKZAV PNM&WH52B^&0]\9SQ>:&+I1=_U\T9W(F!? MV^)DJ>'>2EZ9L3)^DT))PIT35X-*_K>><[E(!;A3?JY+/X3_ M#)L07(QFZ\EU=QKIH/4)#KIL,%2LZ"-&)\=C\CML^,S.CXZ?MC/#HTY74VRN-[Q MZ:^MKX*X/M@PO=XEC-JG%/8^[01Y.N,3Y&M-W7;MMYUZNWI5;>^AZN8^W[^J M\NKFSE%]L\KK[]Z>'&SZYL&[[:N#XW54:QPN7;-5)KU][5CJOOMAGT^:1&/K6K[]ZV#CY7X;T/8FT#7;YO; VJN^BROGEX M65__8J0-2OJ8<>QYQK3WF4'P:V"$^J ]IX(LK7'\Z/GSC]/3YQC-G]",TCR5 MYND'YBF:J,$T6>*H88P'):BA#A$5J6,JL-P\84PH+LW3?)DG=,\\.2TE-9AD M5 >:,2QQIK2T68Q:>!81(SSDYHE2.D?F:4+A12'XY*A>TVBV]]9>CQ>,-LC/ M#>2CAKO(YFU2[&LSV,'7[3GK9Z;92C"^[?;2SKZM"]<:ID%<=ZXW#'X[A?6A M/[B.*TNS-S&SM_N E06/N8B<9RHR ZP,Q\P&K#*"5/2$6LE8JK@MZ3(5^E?M MWG=LSTO1LE+3ITMD2DV?%TV_3W"XEP"A1AD2/F1,*)G9Z$(F%$=8$^J(\:#I MG"XC1.9(TU_3C-EUD?I^I1=<@"@ -&>YT@F#EY@P>Y+I>VIT6F33-RF2,P9O MYP:[6B@MV\0M6_,!A^'@K@(Q.N,F@&4CV&;&>)(19RBV1-GH]=*:$LN8J#D* MW4H]GD\*4^KQE/3X/D.A1@-PDD $8GS&E!&9<9AE1$DPR,9S82+H,5\F^)=# MD7(*YEGJN-TY RWH]B[+:9<",)(;M," E99K8I;K\@$#$3C8W'(% "MC2,1, M!Z2 @7"%A6;&!;2TIM4R3=7+YR:T*O5V/AE(J;S64]![ ,L29L\.H/DW!D4"[]EPG.(,0*DF:* MLY!%Q)@SC#,I^"@)!_$Y"K%*=9Y/HE*J\W35^0%_T9@+BF@F%.894XAG.EJ< M%G,5)]@$@]S2&D7+"N,Y4N=)SIA0.=_\I=%-9Q!.@*I,, A[\JZ3A3-\$UOK M*4WU2+4F] M3-@OARG3TOG7-6G3/87>C,YA3AN_3E-QDS*5I2CT9HS?AY;I#""LVQI#6$Y( M3]#R51OK@VH37>36[_B0P?]?%&<"!QZR@""L8R[EXT9-,^DX=]ARZ].,-"'+ MB,S3&GBIR//)64I%GI8BUS;N*C+VF'))@+30J$9):9H)DW&GA7*(>Y9.OR!X M6:IR/]%L]'$G_9QU8S9,YT>!GI@!O$*E%4R_W%=4")Y2'X/V/F&6XUF/>_V0 MAVJE?9N3Z)2JG)4]/D^TQ%HX HDBI+%CACWD/(@0C/0,$]9\9X:35H,EG&:IXT^37- MIVR&&'KI(,R!N2C378K#3\:X;7=KN=3C:>CQ?6K"+=%.$90A MRE6B)B0S.N#,&NNQUA@Q&9,>JTE$&>4LRK/4\5VWZ\^;K58Y85( 0C(&JS1; MDS-;U0?T0R.-G<'/?':8*LTF5?S%I?M[(T]-+=D]XL" 9]VDG(SXAA3,D39H 8RPS5IB,>.$5]382 M#H&C9&09T04QF:_C6+KWV^M_;[_?;FQO[5;6:YN5W49]X__]N_Y^L[P\O^Y[;;RFR>:;:MRGYC*5@2V/K2O/ MA9I13?$/(PDL-Y]/G 8=/DP>Y%ASA56&./S!J'&9EDYF BG!E4::1I)OP=1\ MGHKJE :I-$C3*XY>&J27,T@/MY(2KZ3UF66"9(Q)GFEE6$8CY1R$U7BDP"#I M923FR2"]IB3(Z_.,;L<193YD,?A5PNW]5]A*BS9QBW;R<'(^"H585)G6Z2Q@ M9 78-JLRR;B/*C)/>)J<9\MRKK:@SA0C+.*** M$\JE"FG%G"W#Y3D*]TJ=GD\64^KT#'3ZP11.D%PS)C,JD<\8HCPS0L54?U@Y MJ9C Q(Q.1L#SM*W]%231U\O2Z<7C*7<++I?6[$6MV2,EPK3!1GH$X1D.&5/& M919YG44DL"4X<)2VIV*TS-6D9F@*.@FST-K\,N732VU^86V^STTD0I*[$#/E MTY:!O.0.IR*+,AC%K?"6C4JHTU\ON3-_F3!SS4WR@F&MF^F57UU7*D.O&=0/ MNS6+7%JTE[!H#XN(824UB*G(&"5I+[C'F=%&9L(*8QFS#%NQM*:7,9NG8*O4 MXCFE)Z463T6+[_,2(I$1PO$,Z[0<1(7-#$E%U"FG.C"*6:2II.DRFJM2@*\O M[:5,=YD#:_<"Z2ZE>9N<>7M8XPLI[I'E)L-* TF)+&1&.)D%IJP35!MP7&#> M)%\6OW[(9IGGLH J_P)Y+J7*3U+E[S,:91Q7AO,L<@+!B9(L4PS^T,Y@9Z(R M/J3BQI(N"U28U+97, ^ST6VWFX-T\G2_8CH^UT+H>N@X4)G*;[LA5&K=0:B( MWU]T6N8);3P)[?$#7H9<7/2;JYUFZZ^E06\8'BY&WXSD>L=OW!['TKK\E'79 M?T@H''66"IIQ@4S&I R9#3)F7&M-D$(&19'$ZIY96319_1FO6,KJE&3UOB>D MGDAO1 #A##CE0X1,,Z8SH:5%4A)K4I+W-V3U%60E[ ZZ[N2HVP(%Z8^+'(;_ M#)N#R[+"W_?:F#89\USS NQY].JE?;Z*#]\7+_^ 37CM=A MK+;YP?'1277SJ 7O?%G]^(5:2IGF(9,2N8PQ LP!F9@9D7RGEZ$6LI10>4H4*V--"PS6LI4@YED.N4%<:8$R!*60?"E-;2"R,.3/QY\4#DU MO/RC=%KY]@[T_'>N4BUE\?#HZZ/;#'OIPKF5-1O*I]_ +F!D=F0F:( MX!G#$!9IH42FG5:6N\AX6CSZ.;EZ(6M6RE6!Y,H9HYQ'"'RCAR#;.9-!>(TS M;S0)@AD'<1%\=A5ZW5(29R>) MN';^!3DE6#IG*T!4DS%!P+CA&#,D!$.2T!BYGBL+5Q\.^@/324%2*5/S*5/" M _9$BXS3=(@&4CJS$>,L!@1A@+=I>^[/RM2+FJA2IN9>IBQ!7!%-,X)L!(]) MSL^:N43D2W_=KP:G8OIIH_L_P]9EA2Q7DA7+;]D,+K1MZ%4HSC_% M-S.VOGE6YGK.=?;377N03RZ5AF!2AN#^415&\7P[+(E29$R#)EN!P3'H&(A M2"LME];RU0_RQQPE>):Z.Y]I3*7NOISN/EB_E<$3ATP6% %29W'(M$&@NRHD M/L<5 P8UA[H[[:7C^5L?3%D-W-&KQ? M*S'JD_W/6ZC^_[/WKDUM),O:Z%]1\+X19ZT(%5.7K-MX!1%>QC/;@P7=ZJZN[.>IS*R\_/S[Q]?O MWAR_/BQC?$OS?.7G>V__! C"QU3:XAF:7T9J"%*(>9EMM@-CUFG"G7DWZTNUF2^5\Q&B#IYXK_*Z M*)PGQJ,@1E-F@LRVK'*E%@KM]I;@577#YE[(J_RB]67LS,O(]A__20,+4B 2 M$T1FN(2:(&I.)+<^RUY&#&X]#'>#]^G:O9OZ4G7JI>)"Q:RG)>*0ZE)2 8@M MG9+ )F.2#<"2W-I1LL]AL9_([7WJ_>:<=:AZE0,W_77]L'?X[$^;&$A& _6$,,2RQ8$!AI] M?J]LRBP(?:X74S>_CP7;W$BL->W674G[$]"OV(FHX+XEN.<+4OH@T3M- L32 M\HQ28J)*1#&6DM(B,2B)U7TE;MWQK-:C["QV5[!(5^RVCMWYK424W#F97$9L M!G!6TARQX!/QSAJ5F5>"" UV:>W#>D?]X?.0RW3C<>\]#@(9#'L>WP^F>%RK M4&Z *O)9?+]EZ3T;/IG)[A++58)KC> ^7M&/E>J81 "":+-R8D*F.ILHL,KHM>*Z'F5Q2O/P5%!,!E& !EFE44Q M8HP!JKVU6+IY6*O[1BYN:6]\]--F*"W>GYZ<'I=@D-ZHJ:/M1R?OQ_$H#B># MOV/O>#2Y\VJ5FT=V_UJ+_C+)CYD_+=#>9Y$V-7F?7!;HLV&6;_PU2W4_3@_2 M(7ZH'-@>!RZV:05(1B(DHJFBLVI32+TC6=X40E14EJX!O,_5HLMEH4Q:];9L M(+Z_7YMI"]\5PDM!>$&-"=R"Y)HH+PR!F("8Y 01A@*:J'UT;FM'\,6PE3L! M\(-RN5S27D), S^85E_+1BDK+^(4\XC"4QP/\[1-+DET=R;0JI^T1VZ+752Y M3(%R3TF1(@&K*<',;D0SBLJZ@#:HK1U@LD^OV+"].<%5=TMW0=VZAE)!O5Y0 MSVLLD2?)HH_$.R,) #CB# ^$Q:!H$LQ(13.H!>UKUA%0/[QV()-K:Y?>M;_E MX;8*:&LOZ7)=VJ>-3"OAM4=X5W1:3:"#UI#?GU)1401+,*]'X89N"V8/\*/*3A]&I.X[-Q%P_9=]FE:YI M;_]W6?6XE9FY+SR[@OYKCX>ALNXJ67>Q=MR5$MD( M)/]*"9,^>:>%XRQKKAIXB7B\!QS:*+4_3#'?[B(UZU+9IQ,.QI_+AKV-Q(TC_D4PY>?[$8__P;/)U@]?OF7Y M%;N8<[I=9OVZ";OT/JJOU2!+:65OWPP$F6Y'8VRDG/$&:H1_L[S[=?_ETMY<_O3SX M]=GNX\/\R\O#_,_>T_W#E[V#G_*AO=]>//V??-ZS/YZ6QSS8>WKM@W;ER?[U M;-B;'HU.\S7"I-^+'WS,Z_W[.)ZE8O?R*H?_[OY3_#[$TS#("_+U8[WT:LF& MX1O5Y/,:V^A"><#'^'X2?[SX\"@,)N^/\>S'P;"Y;?.E1^?7.E^8R[HRIPHU M$S,[_'G)V::S9>?LCX3>WOYO*-)[VE6<\(#GHR7@P_73\4-W_X;;/$LLQNTQ(Y6 MM^?VO"36?]SXAYVRDW"36)IE&FP_G$D4GR:1M8'5>SM/]65;XG13G M;AG"J\'TZ,GI)$]''#_]X(]/RS0^GDQB_O^P,:G+X\X;MBWR_QWSOU5-Y M\.HYW?OX'/9.GL/^QSS2P]]A;_?-\9O=/XY>\S_^FM^P??/S'^_V=E]_R/>2 M;W:??]S??7OV9O>MV/OXYGC_\.T_^R=__+7_ZJ=W;UZ]2'MG]*S9K'U)SP[R M>0>/_TS<\QAIJ6S)%0$6+#&"42*82U):2,F6 ER6]9F]=36+[B5T5]JZE[1E M!1-(/7NJA6I:U*6^O1MC3U3C$5I=40(G4FO].6 MHD:("<]IBU-&6=6V-H*V^!QM 7 PR!(Q-(9,6Y@(TDQ@FB&-J!-U-&WM""7[ MBM_#8L65MNXE;8$5T2I#C682T!M$):S/"W%"P;4WY]K6.6U5;:OSM 5SM.4E M*)>T(0D\(R %$K1.$ U G=#4&!8S;3'>1LG#6C3H^WQ[LPOS^PARXR>JK MPR@4 B)TDL/FB7#. _*57_+AL%\WM\2@LDD+AG1+G("(6CB5$1B301$!B)K MA-$" 5,S*OZ]2KJ")CB87JH-@PG,\[*#*6 M+6/*D2S6C'-E\G*N.2=,\E(TT >>>O45HE*[E.X=0V&6C?P/E*$,QP-!DN%A\2<=0YM5I^9 MEU$IRJO_8\,H8M[_$6R2PCM&A/2*@/&.H'.2@&144ALU92XK3,KTE5[L %$I MHE)$XC'K"(&!]!JT2<8IKZBE"D%H#+'Z3C:,(N9])TDQ&IGCQ#I9J@]C))9R M2R %Y2UUFA7?B3"J;VVEB$H15^RBH.4"$D3!=0D@L+*T' H\Z?P'3GUUNVP8 M19T,# J&E8J9 89TN%%$Z,L!B1X:.4L0#2,Y\,II, M2WFE<4W2K(/J:88"KF^42:%1!;W!C>$RT8BT%+T-YL[5CH [35)F%#K9![#>?6T_TJG-<" MYWFOI$<(*6DDEK-$0.I$'$=&) O2.M#9:(Q;.YKWE;Z'27T5SJM*@ZMP7@N< MYSV(T2>EN4W%'Z (!,X)8I2$)IHT36B"*L'4AO;%%7WB*Y[O"YY;SP^K>%X+ MGN?=?1I0V& UT1I$R5XM#5A-)));S"NS5-E^RG@&WA="=0C/-0VLQI-V.PVL M$MKJ">W@BFPOH5"*K* P(6BV-QP0*P4G8 +UTD!>K$2V-_IP13_I&AU^7]#< M>K)71?-:T#SO/0#K@(5 "7J.!)(1Q H5B3:81& ,G>5;.ZHO]*U]@17-G45S MZSE=% \HQ8;1UA)EN.:((S@1=CHZ]D3=&\OW!N M/76KPGDM<)[W'1AGHC;)D\0Q*]@8D#CN ]&<\82)+@!E*UG:E7R6P/Y+29D&1&=]%P2E"D0@$R#R++0)$:7O/$<>"I5 M95C?J)J059E@#0E9E0G6P@0+>5=:A0 &B,J<0,"@)D:+1+QT:)Q3'H+>VM&V M3V5;.Z*5".X3$;2>=E6)8"U$,._>$%P&)G7,4HJ.@'>66"D94=Y;RIP7"ECI MNR#[E+45NEB9X#XQ0>O9594)UL($\YX1(4#XX"U)P#(3Q!2)82B(&^MZ]A?S?GU0) U%G4T@Y76IV6>(8CT3ZP+2G'IR.Q2E"^\S< M.K]\69QLT/;/ \9^VTZ1BOT587__R9?8CSIIJZ@F'*DA@*6V1**!6!'Q)[W*W(G>&9D1@ <$M :"%I+"05MM(,80LP&!K=]S=K:4JAX M[AZ>6_<.5CRO"<_S>X0,#+="$DMU*0@%EC@?D3 EO.=:HV=^:T?K/N==ZNM3 M\=QQCU_%\WKP/.\ 3#R+31A+%&0H@Z.8]>U@B&.HO/;9@F)\:T?JOF[-_]Q$G$L3]JW DA_AV/1^]/XO#[0IQJA:P[:\DUDV)FN-W/,JP]MR&EK1TN^YIUJ>Y=A73'W0H5 MTNN#]-PJG?(J#3K0O$I+0R &($9X1E!&,(9GF7*QM:-HG]^^'D6%=&3:8DL^OO[BLQ4_^E=)4G-Y)A)[O$74JP\USK//5]P M,!AA\DKE TG6-W4N#3$I*S&::JZ-$P%MB:(T?HV@7HA< M ,#$L]XBF0@$/"KB' 02(1-TU%I@*MF0HJ]4K45]?T'=?EY3!?4:0;T07FAI M7IH9,8XF I9)@B =R2MT%%;+2$O12P%]"VVE.E50=P_4[2."Q* 9U"7Z&'C="222F$Y*@PZ@YJKOC)=BDGZAILA#";OC_&L##9^G0?J MF=][9A7!G9_Y(.LYCQ;2]VHPSR9YVSZE7YZO[Y.ZP+>WP/L%_UHPU%&F!1&" MJVR*!TF<8(Y8Q*S%45#>X-:.I7W0MU[@Z]9@=V'V2]N!%<8=]ZA5&*\6QO.[7<&@HU9E M^]I% BI)@M8$(GU^P[BTR=I2+TCS/K16*+GBN'LX;MV)5G&\4AS/N\V\=(!& M&\(4,P2$, 2]T(0GY2DKK.R@;'!!7W8J+OX!5#+^7-YG,/2CDSN/Q7FXIA\H JV& !;\##RB9"T0U?@?I'7$&$U'HJ> ^<%9:/'':EZW5 M+*@4<)\H8'4>BTH!*Z* .27 !18S14OB,/(2S"=)YG5*M&!4U+ MV58P7Z6 ^T0!JW-V5 I8#04LN#L2LQJD*E%_E@ 81HQ.0! T QLU9EDVE06% MV!A#X %4.GZ603B.DVF3H32:'L7QN4^D]Z_SV(E_]WO#.*WUC^L@NSW(AY16 M^ FU5V+UKMV9]UI3:=UC>2'+F:)ROC>S/QI^"F+;C].JG2RCG;Q;[+T6A>+, M.DI2R&8)&&^)"U80QH2-7@ $CEL['&J1U U#[K_6ZVJ3^C M$Y)!BHYP(3P!'3A!3QV),D!&L=>> M3L$9U)Q(32/)JK(E1JM$E+12>%W,H%B4YT77_ITLO ^I>/'!]1Z[FO*T4EOB M]FZ :RBM$>EE"ON"VRJ9+45F3Q<\ 2)2*2TU1#I'LQ7A''&**8)):LYCX Y+ M-O,5K5AO3F8UJKJS5D3[X485KFW"==[HM]EVH"B0>&>1 & DJ% 3&J35@6?> M=:Q4(KZU_5 QV]W%M@73ORZV:T'O?'"P--YKG]&+I>BPQ$"L!$FR*4BE#5FN M(I5Z0(MN][K8=A6X=QK54^':)ESG#7W#,*K2#C0;_"S#54=B5$PD9O4H!*=% M-FP*7$6'%MLVM_TWIL#)X(91.W<="7#/ AKOUD&0Y^##)X?GXV%HR/!:QV!@J MWE>*]WE/@^;69("7#F8(^8)]WMDAD1KAM"76R%@2EES^Q"*AF*SV,OG\IZT=NS$IRP\B6:GQ<;B81N-X MX?&8XH>[K^_Z<.EO!?D0%PF;/XU')T_RO0;#TSQ]YQF=H^'DOXW\9^<=%ND_ M_3 =8Y; 8(CCLV?3>#+)3%E&.1XU;>\O2+5F@+9'J(M]H*W!%#AS1*K2T25X M6<+$),F*E512RX002B48I=JJ(ML91:HR29<<)Y5)-HQ)%MI/<^$LRZ98!&Q, M,4<I0P881TT@I*?5-11EUACE4JJ52R@ER12B6;027SNS@>C 3'B<<@"'"1 MB,GJ*O% DXC&RE"L/&;[Y:I+O%KMLA>*%#-,1S630GJ8DS67,*B0< %XT4)7.WS^#670AJ[FYW ML;P:I\P56*YP70JN\SZ3H*23G"FB.#<$,(;2;H 3%S@$JH4-JJG"JRM8[RU8 M5^3VJ OO:I$\M_ "M=IGPB7)EF*Z( VQP61,,V-5X"H+N23-] UTJ=UNQ?)& M^!WJPGM;N"[$D7#MLHA4QY?I.R24M$ M"$# &DF,B9:XA$EKU,PGNK6C^]F\VA2_;J6Y2G,;X0ZJ-+Z)ZWRW.IX;L%_AEH+ MQ@C*4NL=#!!'=2)2*>F"%XYIN;7#9%_=OMQ[Y;G*38E'ZC(K?79,]M['<7[* MDY.,TW:][+3QH4K1K4#30HO^#X M=\G8F% 1*JTGX'T@R+DFUB8,"GU43&_MT&VV6.1KXZL+5P*ZWP1T.T=]):"5 M$-"\2SYF(0F:+(%D819CW1 0L&2Y]@$CEX6 KJ@R6 FH$E"7">B6'O1*0*LA MH#D-*+-/]%)3$EPI>B:%)PZX(D9YZH!9Z:,H!,07>SM5 JH$U&4"NJ5KNQ+0 M2@AHWHG-F'8A6UY$)R>S&B2:3DR9BI0**8O%)JD* ;56Z*-#7NJ-\(#M#HY/ MIS&LPC/=CF_R'M+S\L]_W\A[U?ZS\[>ZTO=2]/UVP8-F,E?SI#3)VF*F;]"2 M.%]"+ZC23B=NE&OT1W;KR-FE,7''B4R5W"JYW9%OKI+;]Y';0D< I QC5,0R MP0EP3_,GS8@2W)@(UFH,C7?NUF%DE=PJN=T32VT(?9"DRN5G" MHDPEZ2D0:S&1J&4VR16C(D'C^;MU[%@EMTIN]X3<5NU3K.3V?>2VX%7D+HO& M2Q*XS9J;3)Q8JC7)C*? .ZX5SKR*FV.6/H"4_5?-+Z5P41X4OHV]X>F)B^/> M*,W"8R>]TTD,O>FH!,V^ST!9:=>'&UQCA2&>=93W992M;A;PSC>H'78XO+U> M8X.N4$:YZ%.XAP'3%>4K MK,]147YW*!_,;[LZEW$N""9+"60:)^BE(\YHX$@#&,.;M5RIBO)[C?+6JU-4 ME-\9RN==]-P+!5DS(TE2/VO,Y:3@1" Z[2W&D%1&.>]K6T-_[UWH[XU8KIW] MU@WGP'5Y+SU\TBG(E(C/"C !*AE!Y2/A,8$&81SH MXO70?25NG:59.>*^Z!$"VNI5M+:PR(N1G+_\HB& .X@/JY%P=92;%%789??C+3MXW3++X_[G M<=R/3(W:AVM#%93%CN.:,DLE#811X4H+8T4L]YXH+9#Y)#TJVU(?KNXU/JU\ M=#_YJ#;,VA@^FG>\ M6*&YDR"[E(P 0)[PFTJ"C(@DM:6RK858EI$I(M;-5 M):0O"6D^REUYR2DRPGBB) N1$BL!B;(VI)!_1C1M=;:JA%0)J;:@JH3T!2'- MNY2ID$)1(8C(NA*!$L."8&R>7\ZS MQ>%D\'>\2,O]UW'&Q;_[O9*I.TJ]*7[XOL3R?Y>?.G>1VBH<\GE]ESIE)\?A_^9W1<9O9G' R+GG$P?/E)\H_' M@TD^M)M_';[]+<_"*&2=Y" =XH>J<2RE<;Q>+#AK@@Q.&A*I]P2,Y,1)F4@6 M?7 \0.(E!5#0Q2S??V^PZ7._(7^7[M35 ?VRW9$&'V(@'^-X5 E@20*8=\J* M%$&BCD2G& D$T,1H'XAVF?X]1A\TV\JVA>&,/^J0S5&9H.7%OP5'YMH7_^J+ M:)$8YC0#ZU (,(K0J"4!YAEQ7#@B@ 5C>*D.8+=V6!_48G1;U0VZR@AWZ4BL MND''*6#>':FDL-XX36A E2D@SZLQ21 FGED>A*'TUNX3QYT@85NNT_.A?_D7/:'1?2S<3X> MAL//+\+C3^_!!6?^-AHW!Z;3\<"=-KZVP]%OF"\SK;2Y%&TNML&V/KCH%9"D M>"G%X( X'9&$TMF'*T^9E5L[^36XA=Y4"ZUT5F]:FT^EHK\+Z)]WJ%CI,7"% M!)%; A$M<8$#$3))I;5-TI8]W'O8 /9^,T"W?2F5"SK!!?-IQ$9(ISW-#."S M 15$(A8#$*,C=0A9\%)D+M"+9% U@:[R0!<]*!7]74#_0M<4HQD'3,0PQ0CD M)8 X"Y1$=&AT0JLT;NW]T;+A';==0#*I=36,M&3 MT?$@;' ]A6Z[5XH/NA)EVT2YV/4X4%24I4 <=X$ TY2@Y)DR?29.#OE_QF_M M:+I(E4MO--T8/QNT"W7/.*&+KI;*!*MA@GGG259\9))>D*P: B"2X,11+)$J MTI!,')IHSCU"-KZT4R52Q<)BG8.J0-P_RNBBAZ8J$*OA@L\^EQD7 #A#M;&$ MF:A+2J\E")R3R(--63/$5.+95U#[>35D\ RZYY:Y9E6C0H8J&E*?DE:B;42:R76#2M65HEU7<0ZI[#RK)!:L(88 MFG^ 3IP8 $J8LN"53PZLV]IAHJ]L6P$FE5@KL59B79,?N1+KFHAU(6A/ZXBA MU*?U7!.@/&NL5@7"( L.:#(QB5D)-G-_--9ON)G#8/+^&,_*H\:O^<_^ M^I*2@L.SK-SWAJ-IOOIT5*S.D(W"6&9QV!@".,V_I,$0AWZ QWFD^0]-Q8_M M:Y_ZZ.+>VR5!Y_UH,BC6RX_C6++$_HZ/_AF$Z=&%$7SI>^<6"OW\%71Y#*?3 MZ[^R\AG]IBG?3*C\?;NDS[=3-VZ954 MC=OJFNE*:64OX P'(?K1N$D;_#';K'%FMGI.W<$VS>LNA+#6I)2GN2? JY/+?S^%H7&2R\4?I*-GCR M^-=G_]OO/=M_/G_])X^__W9X>MK'[0K3_:O9\/>]&AT MFJ\1)OW>Z1!/PR"O;?]>>N1+K/G7+?KGQ<76@M M@V'S.,V7'IU?_GRM+$P_YWIK[C<[_'D1V*:SA>!;0G#MQ=DRH M;:WDM8?I-KOVV-94=]UU:\?L\JV/E:U+>2FC%5O2_Y]TEK_6!G++\'U MA[LU6+LM-=^8L1I]L_%EQ8R'/&OA\F6Q0DG+J5"U,U6Y, S^X2;'0AS SLR(A#>\\<3=+RB ITHFBU!0$*'0J'//SY[#S5ZML!JUF- M;-A\QD$'I]/)%(=E\C8BL.IL;W 16/7\;'_W*=]_]]-?KP__>_SZ\#D_V-V# M-^_RWUX].\O7@8/=O^#UX6OX'%CUG.Y_W#M[??@7?_WJC[_V/CX7!S\_E?FN M]L[V3-WD\__WKX.<_!@N!5;O/Q=['7XX.#M\5<"LWX_ M>W/RQ[N]GY_#FU>_I$_I52_IV<'NV[.#QW\:*Q5*&PEG)A%PVA#'52+"@==@ MH@*CMW84]-7M4ZPV+%5_M<"_.W9LJ4MOYZ-);\EWB]&D;9'=9:5UIJQ6BFN1 MXC[.41Q#E+Y4?F:FQ(]*90G:2#//H3$\.6-B*G5(%%OLIE<9KC+< V(XG51R MSAF-T@"R:)V*@28;M'%,)E<9KA,,Q^88CAH9("I!DH](@%$@""D2S;P!YC@U M: K#409](2K+59:[?RRW3$$Z*ZVBW EFP8#WV0#B+M%@G%'<)(;7T]PU=>@J MWZV4[\0>$8-2$S"6$0?@"6K-HN9.>=?PG92+-NN]K2Q7::[2W'R] M#HZ1:8E!4=!&6M32!I%_,S'K=ZG27+=H3L[17%:YFPI61,10&A4P16S^6%H6 M)>\4]3[PK1W@O"^MK$17B>X^$=U25BL"4TGEU5^"#,'YY%"ZR!$$TTI5J[43 M]/8A4]N7/>Z%E0RH)*6; (&43%;CK,^?M*7&"8RE0+"TK&_H(K]UU&A==VG0 M2Q&TYY<@Y?P2)OBYS\N@9*=,?R10,DON!L\-N(C#68[,R?LXG#0Q[G.QZFU5XH:&Z(#&:%CD,5(-7@DM&2Y=%_9S MW[;)X>ASV&>)^GPV/(_Y;,(9&MI[^/A;?O91>!'] MZ.VPN'P:J_K1FOIQMN T%Y0SC>")9UP1,#(1%$83$PS3!C2U3F[M,-JG M5'>H%UPEA4K=54I52EU<8%LOO%X7V U:8!?L>XE*4D1!;!8V >T]01KS#P"A MO9,^+\ =7&';[+;*^-7=5A>M\BY!_MEDDF.^])A^]%QO? M6.D)DH=?$G;>'^=[?6K'FB&5XF!Z^K5,@AO$5=\CIKPR=#HFY9SVBDD:(7!A M#),B17 J&H4^+$V6C8>EB"Z&W=-QGKH9Y\WBJ9N?_YUGR4IQ2U#$00L2P"1-@_? W-:.Z8.E%>6;A?+O.2J:"L$3QK L#98D8(11AAD%^Y:U3(,J2*5L+SNE0 M_,T&>^_VX_1;_7KOY49%W4ZJ4JI2JE*J4JI2ZI*4EDE,C. T#0F0QM(,T@:4 M@C.M#37<*;VT3IUU@5F7LE)3KZK+K:G++Q>2=9*.D4DI"#JP!*),Q+J42'#: MFJ2# 6:V=G1?X*X(X;Q17 JP+P@KUKO:-1&I6M7"=(AJO(",Z ]@Y9 MR!\@>M\]!-=HE5D)6?]%"=GCKY60O9>>N^I?K5*J4JI2>CA26J84@H@(P1B( M!A, TY8;EF243D8L&_TWT,NNJ8G0K#Y7M(4N^MI%:^C?1N,RP,?3Z7C@3IM^ M)(>CWW"9,R][^<'I_=JLK]^02VK9?#7PF-G"XD<+KG$G3,DJY*< !A& M7#89B(@Z)<<3#4B*E"9&E(F. '.:N.2+;4ZS82XB:2ONBDF@ET4JBJR71Q"73 M6FCTJ"%&F4F41T6M$UPX$**2:"=(=*&8?X*HM=0D,5%RBH%GI91+HIWB7 I% M@V%-,7_!^T:(2J252"N1KM9]R7D"A@ IQ@#)HP/J,QJIE-IF:/KKF;06TKX+ M2IW?)&+1<@4N$J=*?Q0E'7':!1*=%MYG84(I-,O[7"WJI3=W4U8FK4Q:F?3K M3)H54DP^RF X@C+),I8O*F4"CQ9DK$S:+2:=CW*F29I@&9 8E"$@;;;P ]?$ M*#0,;)1.ZZT=8+)/-50NK5Q:N715YCVR$(+5PLI@,_*T+1OLGB'3%J)%5*Z3Z[?=VPSO!HL_'^0Q-[ M<5'K_U+G@A,?HZY28S".S]&X\Q\W_F'GRY8!5U]&77.59@2?YFOV MU'FNCO'])/YX\>%1&$S>'^/9CX-A ]'F2X_.KWX^B5<$P3?WFQU^],\@3(\* MJ+?I#-CG00?G=SX_O-TEOS[I+7^L3*67X+K#W=KL'9;:KXQ8S7Z9N,YCT.Z..%"!Y@I MC5?KG-^,,K0+IUZA"J=F,: M^,&TSDPS,X>C#*C>9?.G"3S7CWHS,^B+:5H%85_R)RRA?G=[4F=ABS=XPV[T MR ]JZAZ?9,NM+7"N_]26$I&[X;:Z26CUX_?CP7%/-+'5[#;)Q@\Z=#H9JY & M"D))@ 2.1^3.\L"I!.="X\9B)36DADY_S:'UYFC_YZ?R]>$O@S?O\MAVGY\= MO'H-^3IB_]W;#_N'^?QW/QWO__P,%AQ:)T_IZ\/CH[V37T[V3Y[1_=UG\LV[ MMW3OT.?[/F4'AT>#O5>_Y[$?-6T\Y[8$%"H5A4&2Q20(Q,0(HH^$(E+EI59. MB%(#OV_DK:/^:J?B3K!C[53\O2%Y+9'=P_39KXWBYN.:9;)(DU7$614)>&,) M6FI(X'F"?0 I62PA>5+SRG"5X1XRP^4'I]Y&YV1P8" 8D"8SF[4F F4L5H;K M!,/-!QV#$,8IZXFUP62&XY:4BE=$9YT.=%(T,KJU8Q7K&U"5XRK'W3N.6R:* MS8%GX%UPUB307KBLP/&HE:"8#+7Z>I);(HJM$MHRA#8?\ANR3>H46L($:@*" MD]J8RA8&Q*6SN<+Y+9TG4)*H]5'NO.= MDJUM8:R\&SPVXB"L]OIIBSA=-OKZ,]GT8%>=K8X\JI2JEM>L)7$L6!>JF?;MG MT489-:)520 *3YH+^E,#P.[TXGTY-,K9/#T>>HSA+4^6QX'M+9 M1"NX^=:&+V+6+R:#:7P9QW\/?)SU0GP1_>CML+E*TQ:QJA^MJ1^+A3@BI\GP M8$ET"0@DYPDFHP@&$*"E=RA\MJ[ZG+=5A*-R0F7N*J4JI8V2TC)EH)WA:#!8 M*CPDYJQS:"$$YF54BO*ZOM[G]77!O#>>4Z,M)\X87C:=2^LEY8BB,0FD#*T3 MW5M@:\.ETJ.[B8,>I6*IE^RM23'>,_1#'/=BXQDK+8CS\$LVSOOC?*]^;QBG MY1L942D.IJ=?2Q.XEP7SEXN+ENB#UM$KJ1UX]"YZQQ1FEF39*DEB::Z\IKWZ M+%CZNO[JE>%NS'"EA?J=>&XT5-93 M3 7QO05QZX[![P%Q-45:0_B\JX\!C8%&1[24CD!(BCC&$T&3I!42,V?;K1WH M,TLKRC<+Y;696)52E=+FN_KJBGFWINV\\PX4=UIG?;@D]Q!0HBEC!\19QD%[ M!ZKDQ)4ELTN*<4O!-QOLO-N/T^*:&YW$V[2#VSSNJIM)54I52E5*54I52EV2 MTA(Z=?11L11HM-: ;YKC*1TI0^9!SM^2J+K>F+K]1H?1T*T=3OL@;ZTN5P1W%L&M6\45P:M"\(+!6ZA6 M:NV(D\H1,)!*L01)N//&26Z21]E!"-=PE5F!6/]%@=CCKQ6(O9>^N^IAK5*J M4JI2>CA26J;?>$A@LMJ5U? %GQ>W+VEIK1;]8+'M+1>UJPY7]0D_ZRF99WM M(!WBA]]&XS*NQ]/I>.!.FQXCAZ/?<)Q7T:JL+:.L+59_B=Z@L5P0[7S9G(B4 M&&;S*XV:6D&-"2QM[N5#1NXM*J-]DM%K8?BU<=K:0O<%0L*2T+$EI MB@!&3A E(SX 4B<%HQ*V=I3H472U M)3ZM1;Q6RJ+SR3.& 47&+3$^:0()\B=*)=&>(ZY_+^] RO-%II=(T3LTSE[)"23SQ0ZEPF3QN<-QR%"RY/F+1! M7,^CM0/ BCAS?@\H:91!>%-9,9A9;-MV\,':E MRDJ5E2J_L<6CO3:229XX R>DM8H;RS58DU488UJARJI[ML:C\Z'+GEHK3;;= MHW/9@&H(XXZ&I.R0K)0^GN:/F6+NF?ETLJEE4O;2@!107,568J1@4UH MM5,J\RJ@\C:BK-9[)QAT85,\@LQ2BY$H'6@)1]+9.&"OS*DB%\I&6.F"R MKT1;L>-WSZ/-OOH/37C%1?7^2[T(3G#\=C"\N/WE2Y>R@7%\#L:=_[CQ#SM? M]@"XYBK77:89P:?YFCUUGJMC?#^)/UY\>!0&D_?'>/;C8-A M/G2H_/+GT_B M%7'MS?UFAQ_],PC3HP+J;3H#]GE,P?F=SP]O-X?FI#@[)M2V5O+:PW2;77OL M:Y>5V\RH[[KJUX]995L?J]H6,[#C"Y.N- !9DKCU3KG-\,'[<*I5VB",R)30;#WGG]ZCI!LPGR_O3D]!BG,?1F&5U? M1'GV?OU:1M?#G:K=F 9^,*TST\S,X2@#JG?9_&DBRO6CWLP,^F*:KB%L?AO" MON1/6$+][O:DSJ(2;_"&W>B1']34/3[)EEM;X%S_J2WE%G?#;763R.G=Z..) MRVN/8+<(GVZE#>GF^+&NC(ZV7 =JHE*^E(L#L%$@C50EHX '=KXKP+A@-3KZ M*TZM=V\_[GW'/RT]&;5R_R.'[_9Z^<_^KYQ[U7>W3>J96O MG;_[G.^]>L[W/QX-]G=_.7G]ZJ?C-S__D9_I\3\'AT=';W;W/KS^^*)ISOEI M6^#P\E%P930B8-2>C,>!B=,JBIDS30RG"=8#@VQW#!,N=9"$0% M&PA(&HES68D+I;>ZL8HY+K=VK-5](S>FP7KEN,IQ*XEDLRD3&(U6L^B :6=M ML#)B8HP%E-Q>3W(/+.AW?80FY@A-L$"=B)KXI"4!5(DX9*9$6J#+$L?D^-:. MX(NY9CJUM8:RYR?I;RDJ<,$"L M04V"<<(;D,+;L+4CE>D#;ZNYT'JB8==89>I2D.SY)4@YOT0"?J[A_$7-YKO! M96B>'H\^1G26P\]GP/*RSB59P M\ST+7\2L7TP&T_@RCO\>^#AK2)U1P38KYGK$?XK@7&]]8Z2Z\,X+=_( MD$IQ,#W]6K+ PZJ'?V5D-!IO@'/%F C@0%@-UB83'=BH.5V>+*_IG#X+E[ZN M=7JEN!M37.F./K]#DVPTZ++E($ 28%$3YX(B2G%@F T+JW!KQZJVX@8[M OS M0*&\J/2L"\>-PE)AW :,YP. O=7,<>L(E983H/F3"YH1C,DSE,43X+.BTJ5F M%A7%'?<-?@^*JS'2&L07(F %LSSP2"0UQ=N7!+'&>R(-1L#@E# EQA_ZDHH* M\\V">>T65J54I;3YWKZZ9-ZM<3OOOS-4,D !A H(Q;IU!+F*)"CDTH!UAM+9 MFLF[9."V%(&SP?Z[_3@MWKG12;Q-V[?-(Z^ZH52E5*54I52E5*74)2DMXX3]4U@4^=T:N^G)K^O++A70=19U5P"F1% 0! MI9"X&%56G(U)UC"%)F1U6?85M-4"KR*X>PANW2RN"%X5@A%+6MO!^D0 M/_PV&I)1&,9 6,LL5XS MDA4]ZQ2GP@I?BOME:_OV)10J[BL[5RE]%SNW8#97=NX\.R]:W!8%N" (,R9F MBSLSL\O2)4)0Q9U2UH'H%#VON[[#2F%[DUKXOYP>G_5X4P:?WV8[><5],#M' M?LME@V2>RVJI2L$)"2C04 Z\_ N@$NI9R\<;. MKG?RU,-G9Y520I[#W]D\I M(08N'(D,%($ B1BC#$&O@BG5"GFI2*ADGU_!9)O:^K&EO8,[IH[-+?G5_OQL M)J4NJI-M\6FM";92%OTXQZ+&:"&*>>Z310(*+'&16Z)ETAR$I<')IA2_J"1: M2;22Z*JWLB73.IO?'C7$*$WI]Y.-RH@-"5!+M!(FR.1+-K[@)4GCBL!17 M!$V)8S01+B'8(*VFR N)4L'[1MPZW:D2:272ATBD2Y7BY@D8 J08LV7HT0'U M9?=!2FV12W\]D]92W'=!J6*.4JF00;DHB1>494I%1XQ/2/++FC#8%+TKQ>+Z M7-W&35F9M#)I9=*O,VE62#'Y*(/A",HDRUB^J)0)/%J0L3)IMYA4SBNGR;-L MQ3-BG10$+)/$!::(1QFB$BD(H%L[P&2?7M%0M')IY=+*I6U5+F(A!*N%E<&6 M8D66)Z\]0Z8M1(NJFO>=8-"%/?.@7;8A'))L02 !"B';]P))%%Q$:52"X+9V M%--]QNV]L>Z;C?+#X_"8/+^&,]^' P;B#9?>G1^]?-) MO"*$OKG?[/"C?P9A>E1 O4UGP#X/.CB_\_GA[>;0G!1GQX3:UDI>>YANLVN/ M?>VRG![C-(;>+'GL MBPC1WJ]?2QY[N%.U&]/ #Z9U9IJ9.1QE0/4NFS]-7+I^U)N905],TRH(^Y(_ M80GUN]N3.@M;O,$;=J-'?E!3]_@D6VYM@7/]I[:4QMP-M]5-0JMWHX\G+J\] M@C7QU?0VZ5S/ M1;[/N[W#_/W\W\'A?P<'KWX9[+UZRO+=Y>M7S_]Y\^X9GW=JY7N=O=GU^9GV M/NSO/F/Y/[GW\S/Y^N39A]>'O_,W[XZ/WNS^]V3OW9NF&>A""6Z+ :@@CF(D M$)0AQC!&N)>@8Y9M*K4&%>^SDH6P&:U 6\H16RWP-]>Q_V#[';=%=@_3;[\V MBIOO,B B96B<(XEK)&!E)):'1+R6G!M((4DH87E2ME6!O#)<9;CN//=25?"4 MI$!]0TRH1''8R1&8P(: M56:YS' 63)_*6W=\JQQ7.:YS'+=,))NE3ENI@E&1 ;!H@G%*:&-M-$[B5TAN MB4BV2FC+$-I\\1@CJ7(!@7B*EH#PFAB51+9*:3(*G X.L\IF6ZA-4'FL\EAW MGGNIRBU.(7(I07H&C(-A(5*9F,X6:DSV*^9HC*M%5HMM@HEN&YP)RCJ@YZ@A"1(,&'7B? MJ8ZZ:*$:I9V@M[EPV>=_>N%$@ORD/?#9X;%Q M>'I2*K5YRN";% M?,_8#W'?BU9X%Y6U5\N,IKE MIW2!,0?@P#%P4CO%DU"!OAO]*F?<[ H#*B-9Z2 ML@"2S'A '%6)) LFF: IEFH K$^UZ5"3]MH_HV6=:$TP;_29ZU!>@;P,D.?C M@QE%6;Q$1&O!LAYC';'4)N(%SUC.&@X'N;7#=47QO45QZZ[#[T%Q7:M;@_B\ M,[!PLM,9V#)AR :*C\0);8C(9FMBAKH .J_5O&_8K?O+5IAO@INI2JE*J4JI M2\[ NF3>K7D[[][3@@87N21:Z+QF6F>)-9J3;/0&(:RVTH39FBFZI!JW%*"S MP>Z]_3@MSKO12;Q-V[C-(Z^ZWU2E5*54I52E5*74)2DMH51'$,'KK%BA,X#> M62;R'Y2)01DP5BVM5&==X'/3Y:HOMZ8OOUS(YHDZ><]4(AR#(9 4)49&2SS/ MTO3&*.UCJ:_?I[JMSD\5P=U#<.MF<47PJA"\8/$J:R1C$HCP)8S%@R#.9T3' MY*)FUHA@1 %9(^_5DCV7CKOJHNU2JE*J4KIX4AIF;[D4AB0 M7 06! AFK''1N8!)(>CWW"<5]&JK"VCK"U6B/$F,*90D6PG:P*<)8+&(-&!4N^X%2FRK9U; M=^&IB*Z\6Z74)7NX\NY:>7?!2 [<11N\)0IXR:MTF7A99$1$Y,5N3IF%NT6\ MZR[9L%) WJ2\_2^GQV<]T52V9[?9 EYQ:\O-H;4K$SP<]0F=I8%F@F.HG*0N MRL@C%RIZ-VN(>P-"JZ7OUT)E9Y<3.)["_N,_P5/GI%1$@PT$A$."R/*OC$GN M:. @Q=:.$GU.;QT4VCJB[MC??\?4L;E5O-J?G\VDU$5-L2T^K66^5LJB'^=8 M-*OTFOHH"0=(F44U)X8J08Q04D97BD^'IKJ^J21:2;22Z&I)- ,Q,V>(2@V0DD\\4%H:H1@;G#<7(:A K&<)X53W.;TMF5*BM55JK\.E4:[;61 M3/+$&3@AK+7MQ4:I$M Q9]T2J,X\*332E MD4J)POI0.H":/F6+NF?ETLJEE4O;2O]007,568J1@4UHM5,J\RJ@\C:BK-9[ M)QAT<4_<)?3($XG4(H$0!#$,%4G,"2,M2S+1K1T!LJ_$K8N!=89'FWWU'YKH MBHOZ_I>Z%9S@^.U@>''[RY_UF*,@KP&C<%-/XL2G^6<[*P\'.C*5W-"Y+X__YMMCTULYAX:+_ M_("?F*#5:;W)*[BF6;WE4)::U!)1]*1H*9EL+L_M/+C6Q00+;]1"2%1#!4\> M__KL?_N]9_M/KF?(.U\7KAGZ059(]E\^W>WE3R\/?GVV^_@P__+R,/^S]W3_ M\&7OX*?>D\^WA=>9Y_/1OVID>CTWR-,.EG!1A/PR"O9_^^ MB6!F'8T:+>/S^M1H-GGXQ_A^$G^\^/ H#";OC_'LQ\&P&43SI4?GUSI?U*[( M7&NF:7;X,V%OTQEIG\<-GM_Y_/!V5ZF^7,YTI#NQK\T-(^.OLA*^\GS7AJ3;ZZ9BD0#O M9@*NCG%].?C0V\MG'4UZ3_-*%KZ8BAO*_-HY^:Y3E[&PNCVW3<0P[S=6%*>< MW^ UN]'#/[Q)%)\FD2WS@MXT /YN&&I>W;SZ^0_>QZ)I9CNV.#;^SI9CG/QX MDS?INY-K;G"-UE[3;@VRU2IWMBOOU7?7LUNA&[]#COAOV]+?YXGO@B_]AL^V M3-M@'CF%P$!Z#=HDXY17U%*%(#2&V&2>\8O,,TXUY?>N$LO^RPN'^EO8/]P3 M![M//Q[L/I>OW[TX/CCT\.;GW_-WWOSUYMU?']Z\"\?['W]Z]\FA?O(<#@[? MTM>'>6R'1X/]PQ=';][]V^_7B0KS'O4'^S^U8>[+XX MVL_/=_#S,[;_\T\G>R=//^Z?_#0X>/6/DZ/>^_'H[T&(H>?.>J,N&BZ=OD:;YH?0W7ZS MOMG9OI91;'^Q;%UYW^0. INP:NZ_7-#BO6198HF3Q((DP&(@S@E!LG9/HZ0V MKZ-L:X?3/FC9H56S0KGC>F^%\LJA/*\ .\$YBSYFC5>X#&4:B:/&9E680> R M42G@GK?Z[;J:LAO?9Z5WT&"AA\/0PY-2!>GC]^LJ][3$5?=UEV0UGWM9(4Q^,8/KG@\$.\ MOBQ[-;*^H#.>V!R5/,D9.6 )# M@ 4DZ+PECB>7_YPE2$L-8-K7L+C3?R>@;E.EW0#MY-GP[SB3__J0,N/7.907%4P(2%;$.,5.<-QR$7IQYHF?.ME'3UWGF?:N.E W77,XE?+'W M<+[E\'@8FHY^_S][[]K41K*LC?X5!?L];\R*4#%UOWA6$,$8V]MS1F)LX^4# M7QQU1<)"8NEB&W[]R>J60$A@@Q'0@MZQQPN0NKNZ*O/))[.R,K>+1:Y!<'4@ M^&J)TA!FKJ,Q#[A7=&)/ MRXJ%=5"FTM3FFD+UU\>=_RD7MH:YU<':PO O,U1&:YY,752OT@RKT(F^)G($3HAT"6 ;>PC3P%A,8\L0S M+HP@C()"4](TY,Y5U.M(S1W8RW 2+V5"U;&9=4KHOA+E\I+^?;&B-="M#NA: MRWM+PBAM*$4&ZX!X"@!T@7.DO<)$<)9$\%J36*3$$+U\=*,.PCS@R;1A M_!K[DSH(L^8<9K:>[\OEK-%M=>CV;HG !$P\P8X@RZ0!=+,YPJPXBM$DRX/! MU.&-+=U4],Z5?>KX2V6U^@'B+[56WZ-6+^T;62LCBP*1*"3BRDAD I'(*DV2 MH]QC17- E<@[GS:MPR^_JI_%+FJC-^@?HG$<'M=AF*>XCU0LV:%/QY?#KVH=F ME*D\Q6G?M$CW8\=L[M;!O7(X^+7F/C MZK!Q?XD!16YEB,0@ \0'<>F+DHBPBH0I(52@CN;6*[S)5N8$WGNC\AH9UCDH M5"/#XR##(FM2)EF#24 DYXO_Z,CSK(Y]1ZYY_)T'=L M/K,W2)FR S"/3XOS>_&_D^Y)[LGSV$1]_2SNHQ[>^\>>%IV4]@;;'I9P&/^9 MKNH_/=L?;_?#J]G"UB9W=2;W<)F,AWPP3P3$A=2(LQR.C%8CYAFCED03<-S8 M$DTM99WA_B15>^5LNE;MQU'M138-;K8F5!#$&,_Y84$B@[%%P@M%J&2"6Y5W M&@Q]@O4(UHK1'-OAESC.IS\:H^@GPWJK]0D0FNVOMMO+:_IZ,/P 0/;A?&5W MHJNA;X70]V4Y>)Z^PH]&8X@&D+H]?#P?'%XA:%6$I4!+_NI>WU1KOI M>EBL(7%ED'BT7$[2,1QX8+EOIG2(1^R1QHXBKCFSVG$7G-W8TJ3)Q9W/_-4! MGN*EBPE3M;$E=9/B%309J5[JV=74KAJ4:BGK MK-#?U]V^[?O+#.K1F^9=N["5::=WRQ$^JXW9J;?;2.#NPML>'P_R$ ;^2Z,[ M&DU VF+NP->S8^#PXT$C'I_T!J\U+LG M>0RC5]_CT'?!%M=F=W5F=[E66=#):.4%TD!^$->*("?!]C(9/2PM(5X5>SE- M0>^<]EWOV%96K>\U<%FK];VK]5*M#R5BY 8CYQ.P::\T*#B)2%L6@$L31RPX MVX0V-:N26C^G;=I92L,\H4D7E'HXS)VJBV_4N[45CSR6T >O_OT\4>7U8'CN M'VW/K66-;+="MN7:9)1:X:D+*!'@*CP%CS03&"FP51%SR0CF&UN2W>5L?[W# M6EUU71E3J=7U/M1UZ5BI,E[&0'-G/@Q$)$2@)$X@YAS&QF G>2[&02JBKL]U M5W2^%$>Z(J[WV#&5)[;U4<%2'!?P5V]XW ,R7E&,+"41@R H4LJ R*2(C"0) M42.#8L+$XO0?84UM[EQEM=X4?8+(\%"E.&IDN&=D6#H\R',S8R&03B8W\G0$ MZ8@=\L9H:56TD>DB>"/O7G^YW@]=F>J^ @CWXYQS'[_[3G8A&D,[CHWRYU$# MM+G@6KET0O%#KI_P%32E B&>)X:BU<@\*P5B-[V:BL-[D(;=?H;8_-^KB]5_ M'T?C8=>/8\@?;/?#Y3_,?;/&UEMAZW(!-$L8+L TJ9"+8%N";'(2B9 X=M%K MG/+!;+6"B@N585LU3E21;=7H\/CHL-36)R;,K:,H@@>&>' :&1\\"M1KCG40 M\'\;6\O84-<_>\P(5G=:>KGQ6Y@67_Y7SO!?+=FJ,PD>*5YU)T3\!UYW$)9K M<_O>)"_!//:6>%Q#Z*T@U%_1MIE*,(X&L9 /AT<3D0%1 %\VABBU2F SP7G5 MK$)I!S4&5&^3[AJ?ZJ'1H(YSK0XJ%ME6 #$A,E%$N<.(6Z&14PZ@(BK)G..& M*O#%*&U2\K3*2%294+V\CC4U[+CAXF&WW\];@[D6:*%-CQVY6C\@O0V9LLD8 M$1SUS'(NHI;,,H^I3LQS'?GGMQD^"67D'CE4#8*K \'E(J Z&0:1 M[LYY(OS];FSG)V[C#?=FRPEZP6 9PV"2ZWG-YN5N0?FJ+<;_^<6]ZU7,SU.Q M)I:$$(QBP!T--U$9FKSRQ!)E>#16%M;DOF-OM359G359+K.J.(M!"8FBL#:? M\#'(,@SD,85HI!+"25?P1D'NO%^QA.M*#WUG^\*UXA;&<1=+GNK96!2(!]"1)SH (@K-?*46>*L(D3F M=AVZ*MRQVI;G^7E2D_P3_3?IJU_T.,#>O]X!B>?9ICGOW!&.X^'F3-#[&?"\G! M3\6<%PF-V46X$3>QB1&T;[!1QJ>+\7MO?-GHXV?K\L92!B M\W-^W73-2:,L6,,UJ0* VX/< Q'6&) A#O.W8#BV,F-I=(;9]OW/ MSY=-;6SM90CY]^_V' 96.JTW$<$'FM4[#N56DYH#$R\S#2FR6NS652KVF$BP M5#BJ0(*7VW^__?^:C;?ME]>CXV4MO'^;<+.1MW?W7GUH[.TV7NZV=UZU/[S: MR3]]V/W[[<[V'OSR^FU[N_WR[?;?C0][\(?6J_;>AVM?L2+O]-O'OIV$+ABP M?RT/]6:HS,C&CY>0T!\AZ8JL^-6O1S8;C2F/;T^.X1Y^!?E*ESG[[O#0]KMG MA2:_/"<$\ MP]7^&<02+6_RZFU[/&,*']W]O7:G15_!,]Z27?B]_:F%@6OWXO^^ M/SWX%$X@#%\%+N?WI+]L_<) M/N/M=Y\9UD*"^X2(@!8^(($Z73U>U/8MC.7HZWS,FH$OPO MYMP1IX.)PC"C>,0,RXU&!*?G)"O;< (P_[(D/Q,A?PLM\!\/1]YN- MW\:#PSCNQ&'C6W?<:73'H\9HXD;=T+7#;APU&__W?S2HZQ_%-<7/Y(_&8-B M2\X_*M]Y^N&_&M_L*.>2#H8GV2R79:*W)X>3T;A!C#&%U(#(V,8.L/1O=A@; ML^^",&PV]N#.,P&#K^4']:+-'ECCL#=PX!9,3UD/L]2!TD]"<(;#IY0,.'B42&"&0*B',OA%W40B@_^ M.X%I')_FFUX>C@=,7LGC]W.I-YEO+C#H>#;\N/&G>&@\EAYSQI.LS=$N3I MOY-NZ5U-6_T.X]<(J%M(V#"ZT]GE6;BSI'RUO4F6CEMW*!QQQ2 W7=7 +:>[37!?+OIFWP[2<9S0__ 8OM3\M_G[,5;GW[ M3#B/S@6PO43F!D\A(2>%!#RWF+FH- UBT:JN@WV[QMI7V=KM=1;B3Y,94;]- M *J95;7,;YV9C"SUQ5S,V],"P>#/WSJ#7N\4#;[UI]!P85$[]FLNM1K[ ,WQ MQ Y+"YEO. RY-FMIB0O#$8LF;65]LZDA^KCY8;-QT92D>. LXS:C\'%W-,IV M:P;V'UZ]/,=Z@%!X%-BF[C'6=#WW$J7H?+1G)R!200V,N-B?MZWFEGOV42^G%>$/\M[-SYT M8H37+61P!][R&(Q<&8EGI-G(.S+PL%'Y+)@+L+^AM-Z%IDR5[DR7+>,T_7*DY\E]&N6A3 IA"=:W\GT;S@N>6N^_#3:83'_PP@2 M4[*"\T>4RQG[(4MF_J2@**7N7CF5Q_8TA]:S7N3[C,!6YR4K-?E<(B<@/_FY M66.R^*3)>))Y9)&6,^5R\ZH\U8I0#@*P_UWY#J"X[PL$R1SZ=>:%!*-WC5%G M,.F%/ :@-3-I.YKTRXV_RU'*37&3,.SRODN>/L2*JQ?W MQ8 LE\'BT?A>QGS#*2X4K% OF,69D#18/8^WG,?-.428HDAA&%WA%&5#UN"( M(]'(N^;]8(<7*)"ZP]'X'!3AP^)$1*GT'W*7M@"0EJ-Z$;X&[D[+#@%$ZR6Z M_1)MYW!+:5F:\Y@*9CNO48ZPC$:-/-U3S!V!TWT,-^Z,IC#ZUZ1W6D(H+1"4 M9KO=/P?<'WR?31&W,"TEXSWG0M?@?S8:V03E4$DA+9G\76*O%Q>>\]@9QQS- MT;TL-]\(*W<)7*)^Q MM.4-R^#'DV+(I8GWA:T,W1STF?&E;*S/![M@I1:#JFO@+[[OCKZ4\_&Q/W4C M+M5!K+KUS1%(\-Z."ND8-(;GKS.9?YW,LV;Z=!@0/TGH^G#(*!3'5]'@T,&G0N=#TH M/FC>./_59JR&(0,_[=HYUQ(9QNS8VF0)L??3$[Y:O.QIC_ @]XV0%@+<&Y\&-[9=P8GMX# M&I'K@,&7?CIQF^"Z HK;PXO@L#V=EHHO(CF#*Z7BVG4HA@(_P$#LI)#F\O/3 M2_I2?-:\4,)N.=K"+,UM8YQ/?//"=R]$':03+'HYF- M793]=*$KI_K MW6KKF_]LZUL_VM8WO?^M[P] %[L@+(#&"^%TD)VJA-+;+V>A]%=B_ZASM/_I MXVD[A\_WWIWNGW4Z[>-7N'WV_KA]=D@/CK;YP5[H+(;2]_=ZW=TW[<[!WEO2 MHJ^^MW?^.MI]\XKN[[UC[3?[;'?G ,;2Z;7IZ]0^\^QSL$)1'"F2W%O$;1+( M&.-1(B'8:&BTQB]N9UOKE(Y<&Q$$Q\([H2R/2@C&@_?*+0;>YV:_<3']C=G\ M_W@SNVKDY>K=]9]/R>4IQ(089AGS3BLNK+)6B>0XP=HP([B[.D0QFIO(^6CN M="(+HQ_*1(UI]^#Q->&5 M/HQMCNV&:G.C^<#.S.[;_#+%5E@?'C+'$$;35QK=CA.4/FM.=+I$/2Y[FM=O M/]WR[$]5!.-]S*.]Q)XO(4.C#5.]'\R?YT!5" 7_RED!\WD* MEUXR>\[3*N73C(ZKOW<[@;)E0,).4^?*3>)BNG_PA%CFHMWK)FKS(@UB7M3A M\I-!-FS=(K_CQEJPY&;=)9Z@JAM/8/Y ]5QDR? MSDZS;N.#G79G=^_+Z>[.EV_MLW??]_?:W?99#[[[NK-_W/J^N^=9ZZQ%%\UT M:^?]%S#/8G?O+=_=VV;MG=>=%GW+=C_]U6M]>MW=/WLEP#R?M)V"A'=.!L1,*Q>2 MPD9&JQ7QQ-!?\ZL>S':7.PI?XZC8G\LIN]^+!.YI#ZY9\#G'7 ?]>-HX+J:Y MD29YNS_/^W33I->%]0C3CXM5&%TDUHTFOC/%WN/<;#H18-:- MYZYI-G(BKN^>Y.W RREZ9=);D3=>;$Q>?'PYXWV63S8J\M#*ERPAO=@(/<[; MXN5=BTV;88PS\P&P6^SB%CLH)Y,A6*)1:3%RIMQ"19[->=&;&^HP3M/5KGCM MQ5< W[WO3R^]_FIG9NF5#X#\X9UD4*6MV*+XD+3M]XLM>U2!:)L MI,;%EFTV6=--WM)^G8#Q_%[LN)89>V46]GD"PW\G@WS95(A O(HMDJOG+S]F MF)W#4#ZHS-"^N.L/#C)70LNN?JL?KD-.'RBH0I$.V;.C$5C[_/:@.I/A,"^I MB^6&PMS&_&4YOUH#2]&].&21BN?YX.FW,, MW&D3!'] (Q#LS<:'#%+SMUL4P#F!+K>M\XD+&#Y@X*!7'JJQ.96LW DL MCQH4MYAF/Q0[VZ,R:2->;(P5QT:\GQQ/RJ;+939P_G@8 7]&W;QE-QB-SO-) MDT%.HYSCO7XVZO,1O6)E#2Z0"7!@:ZF-]Z5*;T7B$QS48W95>N M64::9Z=PPFSW=W02?::B8#0S/)GZ2GV!^<3L/S:,SY>HGUY1.?G3D/_BAR< MO(6=YR"'G'N+]/N>=[A\)X9)+^ZF:?65!7I:!!F?,1DE[VA%,5=8 )Z]F047\Q^^"-T1R<]>_JBVR]> MH[CHC^F]IALO5V3U%1&:\N.+G8A-7.Y&3 L\3I\\_7BS^&BA6$WYF>*;C.EK M/\:;Y)<^(YL<_]I=?S18LRD47:.Q\AO=]2>%.7]:#7)J/YUS;_L4-)./7:UO?X!XW MJN-UEP<\SB!7V4Z=T$U:\7;J6;X>HT+PTZ\X^21K1G+#C>)$."(T]\1I:H4% MKT?[8"V)MZK2NQ:E'W_5/RE+/QY]9*VC%FO1CZ=YK_I@[WVG?9P/Q._3_:-> MI_WF%=RCQ=I[^TNE']M[_K0%/LO!WEO6/COHM?,>>#X0?W30W?WT"N_#,^%S MTC[JI%87GQ9E'S]@&-OAZ>[VYXAMD-;B'&PG"%Q'B6SR$267HN,V&B_UQA;E M34*>8%NK&GV>)/I@R;#W-FG#. >?W4AE(P-'G@2> >@VO65J]%DA^N!%]+&. M22HB(H89Q$D@R H<4,">.::E$SP ^L@FK&*%T&=%_L3:<+^%;:>Z+]8]8I=S M'L-+8@Q Q0W!.@D>C>"8&"GA]6_#G.93#<8O[7"8#S[^)V\\U*BV,E0[7>)4 M-G 3#-8HP((A+G%"SC"%K.1&B!@!['C!J>3=^Q?4?:\JJ\DR"J:8#L!%(G>$ M&$5B"LDDJFWNCG0;%E)K\H-H\B(_4=%K28Q&E!+09"$MLMY14&=A8](X!I- MDTE3Z#OSDX?K:S7;8X'!QA\K?_6^6;]:=0:\LE=[:L'2UE*&VWV$3F]D:->V M)_4N5J&MKU,F5F()K!DD6.* F5V M.1"0 MA=^#\=J !3"H:VJ?2=^T=6+PI9*_)4D8D,N0.T8U%8;A/7/#E*)*&: M)0Q_K1ESY11YD3%SK;SW4B#L.4%<18*,D!3!DE*KP15R5&1%9G15C:3J@-XO M!/2N20FO(WOWN2#&MAN M 6R[+Y<8BO84&&;P*#+,$7=0HIB;!13-G( MB*/FOY1H5A K<6KU6(C M<716L%ME M>_7E$R6U)W9?$/AAB; DYFTD-.3^)D!8DC1(LVB1=3)@0$2EE+V?+NH_T9DU MBK8\4Q!(-AD $<]LYR+J"6S+$=F0*:XCOPV'*<&@8<$@44>)(U6E(/7HB06 MP(.$0%H)C2S%A+F@:$JQ '&5I7>>;\@\ R.:HB]QS[PC%5EAP2"TQ5NF;\NF=Z,87Y6BV9V4'7@^& M'\ ^OOH^[8.V[?UP$L/;?$8OCL8OR\H,M8E=68Y0-J]=_+TPLT>''/[[G!08 MV80-"CP9Q(/ 2 M::OV'/VT3G%B6=)<4&P MCD0$SFS"*3=.=C4Z--":WZP9ZKU= MXC>6)JYQC(CA *BGL$ &NPBHEX)Q02N9'* >:V)^YYR.>N.SLIHNP1PI1E@* MW''AM:-$">JT!@5/3*N:WZR=IB_R&Z>EM@#=R!@*FIZ,R3]AQ$WB$;@L$!R\ ML:5Q4Y,U.N[PU",Y2S4_ZX#.?2:;)R(Y ZCS2G+)0_;R51#"T.02);XF/&L& M@ZWE@(ZCVH9\ZBM)CWCT%+G ,5)42@=LQPNB-[9,$],ZGO-T%9UA:9FPR3 5 MN!=2"_#].34ZW! MW%&AK):&&>MLL,0Z<>.$]9K'5$;-%WD,P\* 2B>4HM2(\URDW!J.B,!>T61B M\G9CBS6%JE*]F6<6MFE=T6RECM3Z4F=51W7JY&Q(LBXOT2 MF";>P%(BX7! W$6!M&8H=MCX0[-/&%E&LR>2JXCC5.,A7PT-5#O+5\% 9 M>%@B3L8J&ZQ&QN4]+.8MTBPPA#%C6'HJ4@+B1 1K8KRJI)V*'?&[J1MUCXTB MIC,R[5#'X,W#8)(9T@P-[@! 56.!M^XQL:K)>2JH?%?2!B_\_1;MY&O\71W^ M^B5ZYDW2,0F"2''ZBT6%C&8")94T4UP "D=P7"EO:BU6>\3ZK@I5\>8[-:;6 MF/I@3+?&U$?$U$5.:X+&T3F)<,A-R92(R&"ND5:.$N&TY#XW)<.\R=@3P=2" M]/Y>2-G6M)GR[Y>Z?U_77%D]6E?IO4YL^&DEEX8]ACDMNZSG?M$O!\-9.&?K[DFS*@1)C$W;R\_Z-OQ9!B; M\,>R?7O9<+TS&([AEN.I2BZT3L^SEQ&BVY\4UUR:O^E[\!QO/1F,NOD++X:Q M9W,7]HL.TAF"YJZ:R@:^N,0Z$(/)^/I+EAKG/CB0%DME%N9F[M_.<#:6$WL8 MD1M&^P79!$-]87O?[.EHX_?+H@=R-S]]U[WY31N?IW1O(EJJ((#RH!2;%R!W M<9B_!<.QE1E+HS/,)NQ_NIBH2&C"+#G)'1-:^$"T%R)O5XN@/RM0NHP0__[= M;LU6=*73>A-I>J!9O>-0;C6I&;5>9C91U!V\F-MY/5F D]*P"Z]3D!'>T1 N MP#R%I+"1T6I%/#'TG,),07R!L] (-BS E5YQI9-VTDMLL+2<*1OBYYW"#R1@ M R\.?^E15^)W;VW?'=O MF[5W@$C0MVSWTU^]UJ?7W?VS5P+(REGK[ "(Q1?C#>/MZ >/4E=[^]CF^O01\>^QZ M=VLU=6^&@]&H\;$/Y+U7S.#?\/L])V4\M3E\G6UI49'TTK2M*$NYRL''ART- M>,- S'..ZCZ7H.W#%$<\MRO9K%R7J["=(Q[;F0G;OL]7OAS&T!UG''T^:0S' MKSMM^I:T/KWZOOOIG=C=>=\Y^/2?3GMOG[:./\(]#L\.=@[A[U_P8LAW_],K MMG_T$9[Q2ASL?.'M-Z][!Y]>D?;1_ND!>&J[.^TO]3:[E8>4@2_#"F M4?XW'T_C2%-A$&/,60JNM#5D8PL\X2:]>\^&6RG; VV2W;Z\;HVC3QM'?WL$ M(%V$S@5@]7YR/.G9<0P%X;S@FQDF_XR CW'/?J^!

U$F M<<0L(J6,!?B+ 5GK' MZV289YCC7 WA#KY?KB?Q.$Q]RYB+30N6^QDR=R4@AGJHY2Y.#C6Y@90FQB,:243<"(\T+"42F'*B693:1& ]=_%J:EU^YK:]]FH> M3K\7O1KF'2@Q%\@;%A#'TB 7O ;!DY0X2B(VMGH--9[%UDQ=6_\1.JG%$'(3 M-47!K:<)@ \[8H"[RFA '5S%G)D:^VZ,?>V72_Z*E@Y3(R7R+DK$$V'@KYA< MJ2E@EI3UEKO<4XU5*)Q3*_R*O955:7SMK3R"1B]Z*S2Z()T3"/1:($Y\0"9X ME[T5PSV65!NSL;5@JFJ*E?.=C^+HO(/I\&+_H@R@5K/'%(Z^R->>V0) MEH@)S6+DTCHLJ]86YQELL=0=,AX8S #$E"11J<0,EXK8:&2,-+' <:2:U8[( MVH+>\A$K2@7@'J>(I&3S.2N+7, 464Z]AUNHZ(JO2^-H1 M>02-7DH&\Q$3IAD*0&$0%YQE958H-_W2T3+AA-C86B[Z7.^:5%65*V>[:T=D MI1J\E.Y%L8Z8,D2U2&"3G48Z\HB(E3X$P0UUN&K-K>J>-_>Y2?*SZ^JBR \P M.4_%1DAJ3!16*2,=9Q$H/W"<8ZN0-^"I<6E29$6A#LF73U_>>J>PAMH::I\#U%:. M^]99I0^'L(O!$VNP)$)Y %>?_XD<.88ETD12ZV"E>=[0($8US=T[+U4#:->P M2\A<4=I#V^V/BKKEO:(\;5F"/,3&<;??/>[.2I7O1!^/71R6*\1(4:^*;C7MN&9#KW!9E;G>Z(P\+,0&\JDB/ M -QZ.4.B/X_V/WWD@ QD]\U!=__H?6]_[Z]N^\U!IWW68@='+?CL_9>#3^WN M4H^ -^W.P5ZGT]K[R&$L<,U_.JWCM_C@^!4@5SANG74Z[3=P/_I7;JCYK;W] MF6NGA%$"41DUXI:#=XP512Y^P? MZH14G'$E*5_L*7!17KC1BC;/^G'9;F)!?R])^=5-)W[VY(KV+YCV!&HY_Y"SH^YHL_'ZX@L93_J- M^+T[;IS S,8F?/L$'AOS?!X678K*ID7P(]SZVV#2"PT7\SUC]RO U7@ 3^_U M\ETLP-6X,1@V3FRW^& \A,E(<0ACZ'6MZ_:ZX]-&-S;\V^7!3[^-X-5@-,<70E,.>-29C3A$ M(!V H?"M\KN#8L23XY/\\%'Y]2L>/7WGR2CFH>=)*CHYS;WN^;MM-N97<#+N M9D0?%9-8]H\HIW08(X*UFKU%!WZT0]\Y;3:^=;J^DY\QR*LYN[;;/YG ."9Y MT#"$\AWSK2ZFXD:-*+)DSPPLRE3^!?MATZ%[E?6_X]?8:Y!&T?R*_-'8=7"C MKX4T3]^W6)!A3+WHQXW_3@;@IY+$/UMI,&/W!A U 6(9YVOH+T]7M9_Y=2L]LWO.LC8!/ M]"S,7G\$\%L@[?),-1=N=GFZK[_+]/)R&2U0F/Y@/+UUL\2O08@]%(;PAWXA MQ;941+BVU ,+L#(">M=-\"A0Z.EK%FW-YOY<:E%QG^&H>-)@?FJ>R,*S\X7_ MV!\LZTK1!.YB%@'MA@4\I^'@^ (GRL_&T7?ZW?].XMQ<#_HQK^7Q *;OBCDO MEOE'4SZ9&U0)@W,X?8YPL*2C >@T6++A%-QF: EO<&R_@RB=%8WN"KP%FKOT MJADD05[LS,4L92E?7=#CRU=/KIBJXO*9,<@H.B=6\W^^&/^RR)2"L/5O-_Q] MF8L\!"O=+E!N2I'";O_]S,3_F2W\LR:JAY]Q- 2\6X*8$A)QFA1R@5*$C6\DK_>ENE'MS6;0M&5-WO"FYJR9S_6FZW63W)P M*I'S?\.F3^?=Z1K3QG0WR*I9J[Y"4UIZB]>Z0<]FNLXQX3+B2BD2>;-06&Y5/RW/&163DIMMU+^VH ML]T/^7]>7405KXAYK\76W*_Z&=.M.;CWV<%1^^P+W=UY_V5WYQW;/WK=V=W[ M\\O^7C@Z^/2?H];1-H'_SA:WY@Z.WA^UCUML=V^?M]^\X^V=T&U]>B5:;]YW MVK3=._C4.FWM?(3_VKE,__?%LT:)*5C$B(*+ ?%H-3),1N2C"-'E8OV>;VS1 MIM)W+M)V*W59CP2'&N^>/MY1:H.5S 5L" ]6:>$T<8P90<'%CSO6+>)>Z MWT$QS^)P4$/=[:#N; 'JG'QYY-9PX:@BG#DIJ:4UN:LTXI'%0VO8FQ0X0@32)AT&VNZM7"=R]PPJ:_Q"A^?G?KY66^.PCE*SR'EN'A@K;FOD(U=:*LD2X8%HS0@C7+@D'$]2X5K1 MUTW1%UT.['D*)$1$(N:(ZWP W8-Q]X0[0:G-)3@KJ.C/<+_CYLU:GWN@Q$>- MF8U>:\EYU-QQDX17PBF>N_'IV@=9%\!JOUSR03S8(P^2AK@/#'&G%3)*1R1, M,HP*S0EU=33TZ2NY).!Z*FLD 5.56RYR%Z24V DI.'./L>514Y,[:?JB#Y(W MKT2B&%'G+>(12Y2WK9$RP1HO,1:A@AT7:SU?<4"11DP,"HR 8JWG=]+S11?$>^>$$@H)I@+B+'GD.#6(*,,46'O QAKAU/*!("V\T]%+Q&*(X'E@ MAQSV'AGCA. X CZ1>O?CZ2LYT4X+ZZ*(FG+MJ$DD&RI#&/:)R(<*+]3*?!ME M7MK@$%X%C"-21%#$N8D(F(9#FD06'7.*F<4)5LFB(_ M@]V+6_5!?>XQ#NJ,4L+@9*3GD0E'@_:$V:"-(R;1VFU8&X!:/J)!%<9,BXAL MS$T4@@K(2LJ0<)$&1IDFWM0;%D]?R:4QRLK@L52*QZ U.)#@+X">IQB%K]E& M%95YT6WP 7,3=$!"XH2X] D!4@>$:<1)*A& ;U2MV6&MR*M59.RCDC$ K"?/ MA5".6LDHP4Q)B[FH_?\J*O*BVT"M8\)8C:SS#G',.+(J"!0UB*Z*SA 1JZ;( M=]URJ'L5U;V*[B]5-*>'"N:2PSR;2!<44RE0*0+Q (LW[@I7E,RMZV'<)QPN MG^PP^2 YUR9WU 0X%#8B30U'02=OD^39(]W8(I@VA7DB?8AJ$*U!M&H@&@U6 M@H0 _J#CA!#+#,$A&>J9%E[?^&!-#:(/ :)+SB&GD0>-D=02G$.N,-(X'Y\A M-G FA) T)[+H)E$KKBI48VB-H36&3MUSE5@RB6-I%>ZX MKK=-W>WCZ7306*>Q/L]N'[,&KXU9;]>ZY<=3:WA1M_RH6W[4+3_JJM _3"', M_>LDY8IZS!GSFN=-8,&I\4(G7F[JDUS7JZX*?5/GX^C/SOX9.!%OWA_OTW9V M/O#!T4&G15_W#H[?GK;.WGV'WV%L^WC1^6B]>0W7M?#!FX.C?9J=C_?'[>-7 M9_N?_@-C?GO6WGD-OW\DX*1(F"]5)@1953*E>% M9A2O157HN@I^C7,QD)K<51GQ%B/+/'!I?>X[#20=R)VDR'$34+1<2\P,9UZL$[E[!H=( MZI8?MR=H7#L.G@L@588IHI,S5"2M*(N>A5U;1">-<8DV2C(0+:VQT7%F3C/#> M.J8>0=%K[^Q7=7S1.XO>$>F<0HDIC[C4 AF&&4K:1)8,UQJOKM1$K>2557*A M,=5"Z4BMX3(H9X@S06#LL9'4A]J:KYNF+WHE3CE"L5'($AP0QRXB+1)%,9'@ M =EQXKB"UOP9[ /6+3]N"%+,&R)TB%93P9D))ECNL2,>? \'1+5F(FN#3\L' M0VARW.#HD17"YR*.!9:,Y&J:/JBSY$$,R8XA@2)%G&O&'(X&? ^6&3&4^-L*H^ L;N? MBJTUO;*:;FB2+BEIK M< =9KPD,TW F'G9&QUO1UT_1%GT,E&1.H,PHD-S_7 MA"&M!4%4.B*<5\1R7D5-?X8['G73CYOW V!$*Y=T$"%WA7"*T\"(-(!=3$_/ MG]=>R!H@UA5-/RSAPAL/B"4-0QPKB5SD\ _X'XPK[SROXZ'/0,F%Q-II*PEX M(V7I'8PY$3&YJ*B2CQ%JJ+G)G31]J>F'TI(+(Y!T/""NA 8OQ$4$*H^C-4%1 M'#>V1%/0.Q^AKO6\LGIN!;,*^R"I"EQB;Z)GF)G D_?4XCK:L'9ZONB#1&VX MQEB!'0\&+#IVR'KG$$_<1**DB!Y73\^?Q;9'W?3CMFFBPDJC3=#"@4Q[0Q@+ M@F&IC'11X]KS6!N<6CX21)A7,O?2F50SDG73]$7/ ];7>TV C'BG$.>>(2,Y M04$(DHMT1VSLQA9O"KFJ GBUGE=/SQ,UE.F&!QW BL+*N>GC^#O8^Z9"11[<3,W! M)%%:;W<\ R5W!DM'O.$<9Z9(89'9G@^E*IQE7H?UWJ^XNV.:)BDE":3#Y9+8:00(B7C,+BD M3-1.Q]KI^9+3 6OJO+0(W$C0\T (,LPQI)E+Q,E@.*N@GM<-1ZI7?*.N\SS+ M4P4JK#1V*8C$631..:],Y*9PXV^^[?*;J4MD MC-#(A&A=U%8ZG?LOY7XCJ^K<6M?*KS&TQM#+2;-!)XF3L6QU^# M: VB-8@NG']V4E+F-"&,D^A )5T 3!4L6&[PC6L UR#Z$""ZZ)D;I;E13"-- M(P<0E1YIIQ@*AOB$;7 X40!1I9K:L*;C*^_9*DX M_H-C Z8T,('HKT0*KDH@O[,V<;LHL[P MHAW 841N&.T79!.\X O;^V9/1QN_7^[GTNVC^4F_;K[F^K[(\UXQ5TQ62K\R M603?8+9*401LRCFD>9%!^N,P?PN&8RLSED9GF+'[?WZ^;&IC:R]KRK]_M^<- M=U8ZK3>1P0>:U3L.Y5:3FINHO,QFM#\>S<_MHG(MBS;1/Y+M7P.")7E::HA1 M(('8;#3^?0DJ%[.'(L4\Y--JBBN=M)->8H,ED'%E0_R\4_0>(YB@BR9DEUG MA\G)22_FPY^V]Z?MV;Z/'SHQCB_HP&@/GO=G;^"_/+;%/YU9_(,O[:/0W?_T MZAM88+#P[^"Z/[N[.^&HM;,-U[=.VWM_=<"2$[#>O?B_[T\//H431[EL'[^C M;?I79W_O3WA&. ;KW6V]>DM;Q:QC+?U)K[\MI^]WG&!VU M0EHD4CXP@"-&-MMN(23X.EC1Q%A)T9/!7E+CC6$L<&&L#=II%[31 M<*.D8!4BT*B3;'.&$U"JZQ,]W8ICTXF[:]AZHRWC4'HSCZ.\!:,UV M/[SN]F%>@("\CSYVOV9@?,;22';??9;1A$SN$?!$A6"-/3*">@23JSRVR00X7K")]'J#;R C=^Z M??C+8 +/#:-_O7B"S>@4WV1,K[P5&]GD^-?N^O!MX^YOK'R5;>-NT7CKJ?7H M^FO2.VW09M$0,H/Z,VY7-M^3;S8?EQO8/8/S>U= ^0U$XN':9#RK&.D-7O^I M1$$M"2$8Q8P(AINH#$U>>6*),CP:*V_<=GDJOQ<$\\UP,!JM5Y+2KU'1:>_E M=VS_T_ON/MT_VRWZ)[_C^T>''*X7K:.WWUJ?\CW>G;9V6FRI]_).Z!R\^>LH MAU@/=@YQ>Z<#S^K &+^K(>&T8UW#T7N$LV&8 Z1SVSG(NH);/, M8ZH3\US?O.AM#7T<@"B")UW& *FZH19P$!;R."F1D9,@FY03F(7"M-[:D7.Y[ M]J_Z=,D34-J5<95::>]/:1?9B61)).$=BBH7R I,(1UP1(11^,5@"^[8QI:B MRX?4'T5I5WU4I-I9?L_*JUO%_%0:2RL1Y6K'-3N(MPZP>KK$A:*51!-P]:+2 M%'&5)-)<,"0\)LX;AB5518R+T!7'N%:@1NL1!*OQM,;3QP^CU7AZ+WBZ2%,Y M98))FI"/0$ZY2089$PVBT?&DP>]DD15!-$H>_QS?2J-L/TZ@?J@LK;?]KR#B M@^'I5-CWGGE*%LLRZ:G".B5D=$@@DY0@C:T'E7=@^8F56MD;IF2I1TO).E_8 M.@>KSL&J<[ JG7A4YV#5.5CSD_#>?FL X81K;>_7-J3J=(0Z'>$QXE+GK -$ MN#638'"E=M/[""_Q-8Z>AL-T](X>9$)Y=$B!4,+_OCL%0BE:>W_V=M_L\]U/ MK\X.]EZ=M8[:O46'J;UST&N]:1_O[NSC-OPO.$=L_^S+]]:;CQSN)_;WVO . MK=,6_<]525:Y6#A6RN>*CA1QFP2R1G-$DHU6PS^1JXTMJ=8FY:"&M!K2JAP: MJB%MU9"V& .BEIC<"P%132SB(6EDO$X(01?6Z MV^^..C$T#@>#4"=-K14WFZW=F[QT"TCVY$/=#P5SRVE4%N?>+XPC%7+C@! # MLM$9%&B4@H [K!G>V#*J*<6=D:Y.IZJL.J^O1;F>L:\:/VO\?#266N/G:O%S MD8[":D7-N4?9SN6&V!$91P0BL'( GH:ZW/@>Z*C6*XZC/>=$JG^&@Q,8X.D_ M/=L?;_?#J_].NB>Y^-JS3J%Z]]E*+J21&$63(N(QY1IKF"$E $42DR!N2S73 M*I="-5OV][QSL>7+PZ?V7]J?7G?U/[UC[:)\LG4\Y:GT[V'MWMKO78JT] M(+(['[^WW[SNM<_^TSMX\X[LP[4'.YZVCZY,MXK>.Y^<1((GAK@-#FGE(XJ1 M)JMU,"+79>>D2+4:1$/%.*6Q15!+BCC"/CA"HC*]Y7<6 ;CD92S$9 MG"41.1XBXKDRCM-$(AHLT1Q[S&7(O>^:6-WYW'&=C%5=3>98,"VNI MG&[4UURD.@BVG/HDA.>>"X&4-B3'F!BRD1 D S;>8.Y%D?K4E'15#20K%$6J M%7D6/>$\4:L]IS)P9;2CU%@@H\2:!)_45*1ZBKQ(143D"4N*D4Y*(^YB0 [H M):)<6"%,"(#369'![QR7#PM>B/6)]:N]<$0N>" MY.!0!9ZX\]P(E33P$48DI>+F"=@UG#T,G+5?+O$2XZFV6K#,2P#.A"3(N*00 M(44 M>:E3B;;":$IR6G! G%*/;/(&):6$]"R7N;-9D9D@%5+D9Q A>3T9@N)-AK%( M,4T@^KD_4!F\2TS%AY^N]F\K!V7).CA Z\DQ) M&,,4<1T=,C(8%&W0S!-,8RQX"5Y9$:0Z7E(]1;8,D\0)T9RYO(MC)7C8"C,3 MJ W*V)J75$Z1EPK_&"J8]QZ9F/NF<:<0K)Y'*03EC.>"F[QUT]2$5DB15Q0O M*?715)N@[ W&MO?8<9*[)1*N-<:MZ!1[C7$/A''+B28.8P70DT$M2<2]\,AQ M!60E6&T5F*>H<$*7'4D2+/ M3GLVG?$,\&8(R MV$);<[#&'@]@H&?%'^J S6VG]E%ZQEXLY\[<:L+/O9A_ $S5R+HS6/D@'3"FZB!%/&.>\/H=4$(J18(@,0) MM;Y73=\7J5&4T7AL/*(<_N'>:F0%Q4BFX+2ASB0;B_.5^$Z=:BL4_OFE HH_ MN<<-V6!= .S^YZ?2,%RET-/S* CV0,BZ>T7V#@_*)JF1 O<2G$XID,:8H!B5 MC53HY'+@B5) UE6=<'K\@F UGM9X6DT\O?=:G?'G3C<'HWB>-0>]/VT M7>WS+;.(VX>?+57&A620 G@!&Z\C BB)* JAA,SM:KFZ89E%\FAE%HN%;?0& M_4,TCL/CABW6^!85%AO3_[M)I45R9;&VNOAB77RQ+KY8%U^LBR_>$U%^VQ_; M_F$W0VP![T41W;H&8UV4;&WB6!<2/.6@<_"_#CKM MHT/1/NI\.3B"9^V]X\!5X6__.6I]>G\$U^#6WK[8!7ZZY'\=OZ*[.U_H[IOW MQ_!>G?9.YTN;OJ+M3ZWO!V]:P&_??6\??8%KWU]5B5'G@F+=<4$!2%ZU"/F&! MN/0:V: -\C11DPB%1>8;6[*I]?+F:$4Q[QE4&[@ZH/'86?3KES3R""QO+LC8 MZHY\[/5L/PXFMDD6" T8HRA94HR NN M^^/6_1WK_H[K3IAJ6+T'6%W.D' MU*LNT;\&>5TUD-9 NO9DM0;2>P'217ZJ'1.&:XV$"@"DWBED.=;(8,>XHT+2 M% %(65.N.KI6[82N1VC#6MSQ17<,(_8WR!B:VTTN-*:Q[?\[Z8ZZE\YB_B ) M2#Y:KM/;?J-EA[[3H)CH9GF0=-0 (.B'&!K=?N,\6P!0 S>+O*?1 &"_<=36NQ M-TZ&@S#QX^+1PU@>;HW]CNW[LBAJXV0R'$TLW!7N\ZW3A;'.#Z([:@PM.NX/F]>"WS<9>9TX4LEPX.\H9@2#]"P(S MS))D3TYZW5(PIY\VTG!P7,C@5"=B0/,JD#_Q S"VHY-!/Z-K ^X6"DT9P0*. MX L Y(>=<[6E?+/QMDQ(/.[VN\>3X^LD-__2'\!C?*<+WP@-=UI,$8&00 @:.3D334YFES?RWEK#P; GL9R&F09V+$ W#YUAZ-Q,\US.PX_MV%6;MB#[+6O*M3@K?/VMN? MH[.8 /0A10+H7B(!.6"F2&JIC!1*RX@SJ]F\KJ365/<:18YMA/^ZP]#X+^!@ M[B\&\I!7L)2PWBBKF1\<]DMA:O2ZUG5[W?'I8\E-0:+_GHZB&V]8U>3Y2 #*FL<0O\ MT<5"/,JC][#NDU'^/6,-$$([19G\ZS"?R\^_3+UA^'PP&EU8]L$YN%(*6)D7)W9_<;?K[:#RTF<"C3.8;QW'<&81-<#OR M W*6+'S!WH'%C\ H?P,%N U( GI+DB(Q MR43.C;:6@[H:R0Q33G%W3)=WGU42SBG-4(S) 4@ W7:>L%R0VD6),<42 MY$3=A')/96,QA>P*&9GR<[ KI6.7CD5 +CTP-L2U5LA2:9$!J^8""!.:_ZL6;$5K7ENPVRX^:V]_ MQA9C(ZU'*7&,N(\".>(T8A9X/08O"J>PL<5_:L&RIM^S";LG;*A-V,\$Q7_? M??>9@ROMC4C( (_((=N$; H6!4:I(T1@8]W&EMZ\;B=LSH0-"MOUSG0OA>#V]\V> MCC9^O[S_U>VC^?F[[M5OND^6TKWMDY5[FJ"9@R($T']1["3E;\%P;&7&TN@, M,W3]3Q<3%0E-F"4GN6-""Q\(>(A")1=%T)_5QM9>WG+]]^]V:[:B*YW6FXC3 M \WJ'8=RJTG-E.1EMB)%-\>+N9W7DP4\*=$]1:LI9O\_>V_:U$:2M8'^%07O MK"H)(;$($"!,S;1M MD$JEK,QSGK.?HU,0(!@%=SA'I1(+DLI B5M[OKXF\XI-02ION+,):WW>A^T- M0?F$ D@7,*E80EH2AT1D*C!/"+-FT_/YVUCO_3:7W\/7T];[WX[@ M&8[W+K8$Z+K7=C$AQ'*B,\Y$6^VS *+9!V6''FBP)(G#",+6XM84(I@1QR1 A"/K<._ MKP7QWD 3DZST]KHY?2JG]'6'O?YYXS!VBBSFP:C(L^[7/4U66>&#!SX;ATVW MSWP<#+:Z82='/N(P?AH?ZM8P.U#S*L/>LPD,<=7"J#MA; M@,(CP-BS&%.4FU?:1 *G&A0>M2YS='=EV/LM^/&J?/"3G'D.S)GSF6P_U_>= M5VZ]8;^7VD_2EW@AV'NUX_U>9JY4SM/_NSK @AMY_>.'0S:J1U#;=HM&^GF M6Y%@[&4T."%">4+<"H6LL0Q^:CN,JY1P@H7K>7_7F9>"F.EYJ)GXN)YR:&8R'@_#"R7BO$74C(.LU1 MI((E39A4"9B8KRM6NU>>E05!?T\1=/5>UW8*?TK.=!UUBF80*<8GR9*JC; E MNU4JA_+T67Z(=:!\^< VGQID&*(%I%J1&P ,X-PCK1,& 7,G06"B";$K*%H MLJQ)9;4392$V_- O?JM=)"NLB$R'M:OSJL%J:6 UGXQB@Q3.)X,2,]FIX MFAG$)S&WUND>-#K1#AZH>]36TS,/TQL?VK_SF8WK%,]KG^V2@6QG/C6$A@@2 MR LDL08U)/&(M',>,8N9XAPL*D>S0:7IHX&L=H.L+",O;9A;S:09G*SU,B5?,+(PC\Y@K3TC]V'#77L&]SJQYV4CQ-H5 MLK+J2&%,%OEFY2<_7+29M\YJ! CL_@BAF"* M)(V4&IL#.6)MDZQK5OM+7B*"TWN@!E*;5<\;NP',&O9'N;T2;%4-8$\%8-MS M2@@GRKO@)&*21["CB$ FR8@<""'F4M1"Y@F=ZVII[25K[\CJL?&R(C+DQSI$%AA<]50#/:K1//1&>9#=F*7KB1_+VI^?!6"7W.:DQM:GQ-;F MG)9D(Q;4&89\I("MT6ADE8O(L22M2IPXFM8V%5]7>EGU LMCHM9XSO>54=W/-[E[IF'U),W_K<_OQLW/^S'/P! FHLA5!-HT FC3 M&.2\C-$1A977"\[OEB\VOOOW0]L]@-L58[EC(X_$LMWS__TOL G5KX.&K:9[ M7SM$8C+S^[QQ&ONQ80?5H._!&QCSS_O5JCLPG9D,34BZT7*^EB"UIP MA/HKT**OUP)N>:8;_43F=0XXWSWLQ]AHPG6'@\9V-\3PAC?CK_;9S5NQ(-$O MX$B\C\_Q'NKD:N_M'Z/.>8.N_\OU?]G,JN4B$=5%'O[M;2*;;")9!J_^M/M4 M$]L3$ML;2$#]S79R![.&'39T>?+[Z] M][QU])4UZ39\IO-]Y_W61>OOK^=SWLG=[[SU_ANL>P^N.VRWWK>^MRX.:&O7 M7^SM?N4[\#S-]TWR;?>/ZX8<:X95)$DBY[-S,K" +*,214M%)#R9Z'T>V8V!KEEHAR= ;E MDM7)>I++0TU.;I8,::<5DC%@!J>IJ52%+F<>7>==HUR-M#G$C-=+)^US'$92E+ 4F M,\I1O*Q.Y,^3+/.,Y6E3R0O5+5"^_IW<4&+Y61R+,6_%.CG]HM\XJ7K[7)NR M<341HRZ0672'_W$/?-0VJIRSG4NB.#RI#MPH6G;Z!\/)50E88.NBFS*Y!_"\ M\--BB%G]VHZ#3X/!*(8:).\#DO/C&K"52C/*$8"A1CQAC@SH@$A+&ZW5N?DJ M7MMDUU2Y_;,N<%M1_KT/^SI-0:,)<.:>)^*,<];P$(@744I,"_;-KBJ.BA_4 MPWQ6\UQ;ZSU+8^E9'U9@+M=E)$0IH\#25B*M&/S%M7,B-RF4/%?>8[Q*!6\U M9R_9<'E(9O0R.+MFWOLP[ZQKAH,\EM%GKXS"",Z/( =\BZP.!HZ(QA 5,*]: MI3%P->LNEW6)-93ED16,*E# DA'4([ MMGT\>(2GX4TW!'MF3\,BJ/BG/3^.W>&@!KQ[ %YK?@"33HP)@RDR7H,5(D) M)L@(5H@"]<9&QH)8D4YB("V#)&<>[D,-_&H6;7GX%=G\E=<,FNM:VQ-%Z>\R%PJP!0 M#0(+TB$>N$/6.8J(D2K&X'4"8V^3K!,R[T6HN?EGX.9G\B#4W/P$W#R7QA ) MH0H+%$!91MR%A SW"ADA>8K Z ^LJ'7OD& MVAA/5;/%;GAD'=L=GNF[/O?P+CH_<\[@DC=GI87S"[0\K#,*GU@4S]? $6DD M=7FP7W"@6 L=D#::H22\UXX)8CR(8KTNQ;+F8RV)>5XXLE?C9XV?2\//*(.B M,I(\)Y>;9(UR4M)$N97>1"NJZKH'FC0U?BX1/^O8C2(Y1H- R9&$>' ,69$B MTEA$XFF*FM?Z9XV?-7[6^F>-GZWYBD#J-0>\] C.S"*>E$;:\8B8WHM>SW&@TGKAS^.^]X^/VL(B ;77#[\4F'L2N;\?!^_; M=WJ#47]E^H:WVA.6;;<^?CUKO3^X:!TUS_?@>_: )5OO/Y_M'7\[!M:C>T>? M2/-HF\WW#?^$O^UN8V!KVKSX ^[S1QM8$K?>?VA_.]X#UOO6;AY]/8=UI>;% MWFEK:U]I%QQV A'A/+!I:D+@$6"#"&K0Q\7 4I)).8PM$ MU0'3"F&XYZ"E.H+E;)_QJ7,HDC.OG,0\P4^G:LX0?WE$=W__S'JC5/?(X3=8I6Z[UR!G?WH/K(1N-W M@$_;[N;XT74MX6<_4)Q\OKX?N_'4=N""8J1WE13<'>8F\K%33?K.V<&CXFN> M&(G^'0>#&'?&BRV.-9_&EW@,,CFC*V#C MHOVQZ]90=6NHE7"DWZJ\C?E]0N([Z4,[>X'VHNV_#F?1 U6]REGTH=/\^ZMH M[6ZQO>,_#IL7GUF3M@ZSLV?O[R_'K8N#T];[+X<[NY_HK+,(/G?V;?<[:;X/ M[;WC[8O6>W^Q1S\>(@6P+DY_"=1[/XHM^.;= MT]CY$!.5BDGN>V M[9Q0I$6R2$AMM%7.TD SGN''XUFMG=T3SV2MG?UD>/:A-^K7B'4?Q)KWH5GM M),61(:NH0IQAC"RA$HE B$@&X,S:W 1HOG)Y9?6O5U;"6R(!W:!BM2%TMS>T MG4:Z&CHOPN&3 /I+:XR/2 *NL7=Q[*U5R*4!\KQ)S .#DR(!*1(UXM$:I(T0 MR"8,^.F)EE:L;1*Y7EAHRTR!?U"SJ A[V%<]T^\W#IUG'^K0;#98'ASKP]S2(1.(-A2#I'.P+@ MH!(1):PCUL9S3%GNK".)>16==1ZN_:QD;=5/GC>S_/U9:D!!P.HE(RQ#&+R%%O$68L4B?A- 68N(2O,BF:LJ MNBE!_L4J7K:N3_U?+RH$9FH(&IWQ\=]63/"/=K=QI5Y@X?J UY/G;S:X$$O/ MR&<;A)GEY_GS#8+E,O+\5]9+^?J".U>^$^[A4?L,';9#B-UWKPU'*^W@TRE( M]Z/6Q1;[=@3X^?[+T=[%M\-O1X='.R#A]R[^<]@Z^O:]">N?TPZ.MDY;M,G@ M\\=-P.'6Q]91Z_C#\<[')O]V!/?\>YNVCC]??-O]D'-J3V>T Z-HU%Y%L+,4 M13PP#3B,'?(\AB2(9ERK:L(GX-48P]IPEJCA1_VBP.ZDUR\42$"SV<*I"8 ] M?_;_3VRH7/>$M:FQD*GQ>TFS;\'B>#9,F;4X?/(DGR%RG.:F.-HCZUU"QAM# MF#0L&;NVR=8U?451QE)$.H\D6.Z()ZV09DXB$SP3+IGH9%K;)'A=Z'NVY5J% -F#?,;+*:6L?<9/ MOS\UE-8^X^<%T/FD!)D\UR(C)L])"2%HI&D4B OC<92)66Z6Y3->.@<]86NN M5]!RIST<- ZC#?\WLOUA[,_TX&EW&W_!,O_H#>)ZXW?8!6"B;MM6G5!LY:JT M!_T8<_9/8WB8ISF=>S)E"FAW?6<4BH29@C9* MY[5UO1]Q8_6;7)47P.HMX(D]B(UQID@#B"M[\_N+=:ZZJ7/0*;QQ(XL 20+_ M+476WB%J_ZX>+D,FU,(W%F[NP0G(%-+-#_ET8]<^+=AAOC"J^XWVBF4\L=U6,5.>*;8L0W8GO4$[7_"N'SMPY8]X M&:G[GZNATTK%PIO]N>O1%I4Y*3R9U2CT6<+M7-C%\5RA5^2I8 MCEV9M30.^QEW_NON+K4*Y&B6^/_ZQ4Y"0TO=UD7(Z9EV]9%+N=>F9CF16ZV6 MM1F7>SO-)]?W5WUHO]274\0^5%K6,!>Y%HKEH'W6."XZDN3YQT#1-JHL6'5@A(,5J@,WBA++,6E=E"G',KA_3 M.V>I7!6^O_<&"_J*WYQ-LOM9M& -.["6YOM/8M\'X9D3NAB^D-M#8>023D@( M3YA-5N&8O;[7J&,ED4P;*?>A@,<.:JXI8"D4\/EB/R7%)91*H<9I:;8,! M:Z?(5P3VE(([2O;!U9/P:>(%+<8@=",R!@? M0,?71&%' _RVMHDWYJL4'@Z"/G$:^?Q6ZO1.!X6':6*Q=;])Y&^-GG9V]]@^Y: W\A20M33G0"N'7(@622V5Q)QSXG&FH?EN MEHT5!9#ZT&\_=(_W%1RS\LHB9V,"+=4"A)CDD$A$)\8H-[FA']VXJ6',^.3' M7N:[K9Z"2*Y14*X@ST*9YJLT'.//4=\?OM;Y&).8P&!T#C0-4,PXZ$Q M@DNN#7&X4;L3\OTB2*MA$3$LO@.482"W,(([7*ZNDEVA,2QV.3\*:,DYE@C2 MY_]&.91RN9IBH\Y+M_GDU4$13!KE);GS>8KI/4RC3@+^+RXJF!X6EMK=]N 0GJ=ZPJF# MZ\,VMOM%)'=F!>VS.[R'08@Z:7WW&J:^ 1=GY)>2/YWT: MS&_4Y-J#7B\,+N^TT?A4?GW,+Q17Q_XQT/4XM1RX[D<[;UNQ37:&D$YL?PC? MM'[%P(+-G6QR6"]6=6S/&RZ.=R;D]4^.H2*(,J"]/F&):N&7L9FIL[[M[HC8:#(2PCWZ4Z=/CVP;!:&;BC M%I/ J15%/I,(=D$0/W4V+>L5(S1,9<+96$#G/ S"4*][D&6./,D6(Z]N3;&?0H@/HC= M-T=>S3RYBPKJA28"*>-S,U]ID781@_+L, >[TJ8DUS:'I[TRL#T;[GX%B3[3 M>D3J]XX+3;40U/!OJ4\,1NX(&"._>*E" UL4,^@RW[2/'4AX(/CQVQ.*+_7N M:W2J,3\-QCI9^XJB 8MQ,18#[T+!2K%H3Y.U@EX.Y,#W4:?P+A7/75D6Y37P6%=O5:0_3844 1XF MVO8\FQ>XD+U9Y?/UXYS*YL?H/O74'5 +.X,R'_&@'^T0E)7\W*72F8\ ?@H@ M++JAU'3C8%@H-9/M*4RE:G^F;SQ5TEBD3I1*8:%JW6?'BMO#D_0;^1.]_*2G MAVVXR6R^F[VFEK+2/.&MZ6Q-J?LSEHN7P^ ]*3T26M2"7LL^M/9AH!N7P5.#L#A!$5G3R ML;H17%#(W$Q8A8B;<3^5KK2J%A)$N2T<.*4[J:AEF/W2+/C!1$@ 3*5?*&?- M!C E!MEM4?E.JMMG4R++;GM04-I4 C;8D-F:R2+Y\KMS=-Y78K\-JMN/=A@5 M+K]24RD$\P'H' ?9(WEH@5"S\PE6T88U5FMHQ)2R&GBC7[3$YB+'BQ=^RGW X]R'(M=.=O[?/=]ZW MCO:.#DZ_?=SC^7Y[](_4VO6BN;4O"2/,6H,X\=F/Q!726@MD#5=8."] C,S. M92;, !>D0#E)'$?N7"!42&T-$ U38;:ATU]#V-[J)"I>:90GTGC D/B[O_WJ M:HWFFE,?@]&>4\5<9$EQ;;$B(B3Q0DF/]Q0^0.IFO&<@/X%PLR3=.K7]T/@3 M#(C5%DG;8)_VSF,5_7/@S?=M4'%*4RU+A-AI'[1S'5(1K/(Q;Z3-&SE=Q7;7 M?D_B;9.+\ZOCP%LI!2RED02W8&EY[2)7>VLUAD&,P M@(N(2;4M%6*4ZLOT*V4P(RLPL+>P4?TX%=8I"Z>*FV2L+\@C>QIZW>J!VH/! MJ*A#FSGMXJ3<^7]9EWB@)XA@F3R1O(\I#T #+GD*:?4P6T7LKXOI5+> M'U"3BX/;ZO>SYR%+J=_.YP1708NMXF%W4O'N8.N';1>#[3_T^A\SA6V%4LNP MG;^JM;\"Z^S9)6%S=TOL[,+S[.Y=M'8/>//S/H\).T_ 8)<.(RZ%039%AJ)7 M5&''$K,JYQC?U*I];*F5)'-C!*\@[7XL?3[/2W=7M*0G(+V:U*Y7N@[.][65 M(EKK$;6:@MXE [*Y?$Q* 8I8S(E#,6O(=Z4&5?AFQUM?QF(RNF5_XC7H]OJR M?PK-L;%3"K?5UG'>E][CRP3RNVI4I@7W6*[&L]CW[<'D-$N?)@R*C.L<"'P:=N&7#[V.\-:L%T UJ,LY$_P3J]V,>@-O=ZJ:&\R[H8KGT>;W=OS3RG*F*+MY\#[OQP;;[_[&=W$FBHD[\ MIJGS^_F^86!14^,1:$Z@-#&BD#&96"6UR@=A8@*EB;$-/N_@;IQD@R,?RT9C M"DD7J?5[+AQ=>B)]C://1:D73;$OM5!6!H84YWGF",^IV3X@GYRD@E #!Y>Q M4[\F['PD3=;8^4(4N?.^>;9OG#?6@.*/<;+9_TJ0"=@@(IC&*B;+#%O;Y&R# M7--J9PHO=P_C(%X+@S_B8'C/%C/><6TT%<)QP2D/UJF@@5% PZ @F=T=%/6I M]>%:FG)WTY2;I:GBK__D!(_NP9?"AU7UHP%:6IF6-"] .I[N"R=MX#PAAW,9 MK/8,:6PD\H&GZ'A*G/NUS6LFR?W/.'25VOU!3N#NYCR]@>V?C]VH/\H-+] M M@B%9] J)R8.&F7M#>6:0\1%+'A0HH$6UN%J"ACF5ASI.M@"B]*,<,1IBV:'W>E]X*JHQ!6.>HAC(I#P$A2&NCDJ5$N]RP7X@-<[N! MOEODL!:E2W/1-I ".6>G/:BB\ =9?2@*":T_;,]3$^(\\!^FRC"%K M-56TMGC[STN,;^R67S4IM R7OH=;>^X]A!&6J;=\R4'707L8_RK+Y6H%YMK\ MEL_[V'$L'0451J8$*DR,2+O@D),X-S0-6ADP^WN@&60%9JY7WY0^D'^&/1[; M6XMI"J>YC#.KU.NS)03MU/9E?'Y<33A%!HUQY=-L,YE;LALNRW5G.*V, 5U/ M^$5"!:SH?D8B@[VS6(#,"XN35K"33 9KF?4/U%5J(W%Y@+]'*7*3F5C2S0VZ2(7R%;T!]Q3J_W7F9*B4X4(7 M*6MI2HJ[6FM[/_HC$>S$X$!>Y?PO:AQW44OA129,'$)-?R].?YZ!PA&]<%X: MGH,!\!?A KGD-,HY"LPP34,*:YOJH?17) #G;+&<2]8NG-O M55;W5JU[J]:]59?>6_7.-./9)&J1E/%!$4<8)]8[SFP243&9M-'J0]'YFIV\1='YS0ON -P_VL5;6>;"8 M' T!<8G!6'+2("!PXJS6+#JYMLGDG*U4!NJO&#I%HY>Q7VIBNU2,D,N.JFXO MI<=JNDQI>-COC0X.*S5Q7+LVB4YDM7*PT?B4JLJDV_P"I3LANR0JPR@T7.ST M3N\[?&%I#MI'YOS&85E!5YIP6Y?&WI1]MPN8-\CITJLVPN'YJ?IHB[0.]AD# MO)<=+3M4T]GW-9JJ(E"579^Q.?U$]&6;]5SU43 MUF*$M7W6W-HG@3,JHT$Z6I;;41-D+:V:6XEK/47BQ4ML_S@ M8QF;^)06HI]6;]B,,VGBJ7T6 [J(_=[;==4?;9^WMO;SQ*6@;$ L9EKRRB-# M)!PGR>7\7!%NQ-IFMS?OIZ\LYM/>*#@SGA,V')_WK1'1E8;%6N#>DX+A7J?[1@0! MLM8C1G**"@;1:[ )*/D0$XE*ACQQ_@Z!FT,ZMRMWF:I?)UG5TO9^5-6\ %R, M6CBAG4!&F=R,"@[)@3V/$@W4&9)2D9%RN[2]$EYW$ M555EY1_+L'AI[V8:^M#KUR2W(,D)L(<%52%JJQ 6%(#,.@9 %C'RQ$G+<90^ MN+5-<1/)'5XF;90$MEZE9TQ*5XO>>I.@P50L?4*%>6#B]5)U4.4>O7HJK4ER M,9+\>MK\O!\MH9@!"@:7<]D3 ^TPY1X.>88J\UH[IO/@\X5I,G=[] WODW&1>^D,!GD.<*BZD9;?G2?/YDABF6QW32%1 MT>=E7D_- MGK9.]P$IC12OG;2Q>_9[;\-!B,8B@?IXPBEII&\6:5F[Q=95R_CM[E+X#-!Z2Y MM1^TXY9:A[0*)%=E@I(1+44AV3QH.T>&4\Z9OZM'ZFTY\^WBM.8F,$Q2XF?; M,&5]URY0L5FNX%64O _N2*0?$^M-N?3C]__,C_Z&??/?6:[ST$182Q(*6(#U M%250;_(.$9J,=5)Q$5GNWR)N&@KW\%KWEZY8K\%OZ>I :_<[W;>"<48,0]H8 M("E&'7+"&>0#PSE=AEM7P.!B_::>%P9?1^%ZC8!+)]RC+;&?,/58"(D$2T"X M-%%DA<+()H,#R#3.M"BP\/:*HAO[HXVZ4Q;7LDVBQW;.'Q/?N+UE58MS/2VV M\H2M02:HPD^QF\<&3[^?A[*V>L.]"(L;/_$TI-9(>JU(OMC"S=-]IZ)B LPI M8A28^$I),*>D1$0Q#Q:NDRD[K(2X;<;F]%2(JSTUB\!CFAHU4<7$1X4WOSVX MTEJZF#HV(=FR'GX>1W*QPG\ 3+46R&(?YYD, MI,&DR/.-:B;-BT_GK=/]8(**.1LO-ZT!ML,6.4!1%(2S08%I)I4KAE7-RX$X MIMT2_2?3SO))#QJH4):WCDO3+(<*O@!B%M+@-J)O_&.J^GC[KS__O#+2]<9; M J:K1FNZS?/"7]+ZW)C^GA5W"6:NR\MMV$XQ\GS2/#I.6H9/C^Z\M&^NJXF] M8O.,$\A/['F_U\E3<_.DJL*P@8\_)&KNO(U,,^X8$)+6U/G@")<8%%YBL(EW M\O>CJQ>:]BR'_R?0,'(#WV\7:LH7H)LW'+>\^(J;!_L!NUQ- E(62YT[<$1D MK8K($)ITX#S&G(M[33NM<5B\W;^DP"L6QC7SWS[E(K[3[MA*KO(,8;?#N,<,Z(](ER0JFS!C.. M0=U0W%(C'MBGZQ%4>349&-3#,9DN9KF\/8&UESN-&TPE8 I%3@N1]42%=,B= M8Y2QVB03N0 #FJ[C:X+M-[E[JB86T?I#>"^58^RJ[@6K+PYF5CP]E:&4%+?U M2C^IAG@N%[B7DR6_4SU8:3G5:MS=O?B_XYW/^RP8@1U830#@18$%1TZ9 'I= MQ(PFFR@1-ZATM]O6#P#067*XK6. NZ%CP$27SY[$7OJ]X-S2TW.%0.I>+E=[ MN1SL&^^,5B0B36*>RN )QR'.=J5I&] M*UKEV%P)LPI9^Q8WV;6&]!/9+@]IWW-%&.],"^,Z%_CB.VZ=[G-F,=8X(F"116O%> 28!O.H M'CVWFM0^,WI.M(#RN1$B18AD$*_,5*H&<47)B-D\-GP>I7 !H=]HD+-YGI68YS)D%D_+&T?"P MUY_44EPSN:Y4+RN #:6Y?D\W>: B&>.(,PIX*3C8#.8H [IFA#%1821_.N_X M#$Y.GKD&Q 5HN"CY9CAZ'PRBQ'B@89S]/R(A(24@)=8>[!@ 1+)Q4[KM3'+D MO4,M+Q_WJVGH$31TWMS:Y]2E*'/A5]09!S5#QGN!G'0Z)BXUZ$U 0W3!R7E/ M,=!UY:BLGNBZD+WR?ONT]7F?:QJBEBZG=N4\6!"TFF&PDKVD>29>%C]KF^R: M!.[&\3W'N6:A^,2% X*P*#0W$L@PCX%RGL\*03N@N8#,K)?-GVFRO]\%0F5SH!U3BGA MS/*HC"$*N)X"O'NJ;?)/G)=3Y:WE;M_]MAOE3[WYH$_K_=?3K%MHH;$(#*44 MYX@#VW5WJJ?:3G3T3_L/R]IM&A\ M59[5E'?]]+#7N7$^Q/#0#AL>&-!-ZS23)M.Q4TJ':TCYEMRY0B$OW:G%3<89 MV5G>=/-]RE9)=LIK5@12RYD4E83RG5[9\&L<8[V3[ZI86,<.<@RLZ)XS&%VS MNNR ^X?[9Q9V,;?*AJU;&5RTBB #RA/B\$N>%I^0%DQ;HG0,S!:#N1HW#>;*1-\^/HZA M#0?1.8<=K@ZH["HU9L(<)MYH_!9!/'?+QJ&EU1QSKZGQ+-M,U!,'SD2&YBA? M.P#]7DX^N#Z';.+NUG7ZR0,3>)H ;:K>O?OMWGJQ;371/3)KK*:[>]-=M7,U MZ3V4]%J]'['0RUXE\35><@^SICO9OIH"'YVV75/@???P:L[L5F,(9D7Y&&/% MU,4#6!;\G@5TG=?]H+SX(FDI9WK"-M:2^F$;N>*9CV-+Z][)C]Y*R; 33G#- MN=<.S$CC!8Y<,>UDN"-$^11Q\]F4QSI/XUYY&J)YNH^-%"X1@T+",K>##+G7 M/D7,,H6UD$PJG-WS>L$TC=UK78*S/ MNTXF>JF.9V<[NU[LUV-@;E<>)4]"D#S3QC#$N:/(")]R MXW*AB:&>>'F/7I Y#NB+&'GNMS>3T/LDB6P/(LA%^XO7>6Q/AG.Y'W,DRFO/ M+7(N LEQDW)G9HI<$"3H0(V@/N>QW9*2L6@>6R5"\Q!WWQF%23;;I;J))MKF M:X;$NC)F"<#(@3:]ITP(31$W0J..X.!!F\7)-B'TX0ICQ.$X$58(\3;EW"$A$0YS*K=N8UEA)257VEV]@TVS'!!D&"Y@MAICT"!3XB"[&61 M:Y],,5W%+)3TGZ_)Y-'NCFP)LU-E %7LC>>(X'RX\+0=AH?O",Z!N>E/N=YP MV#M^AR\_8MV@UQD-;_Y(ILXJU)@SUF-_V24'9J'PXF6_K6ISIOX^[(\7%>XMHCEW*O38Y E$TWL[S2%)"-!%)&1\4 M<81Q8KT#92B)J)A,VNL0;F0)LT+C( I%"15RKC$MR*[NPM,.0'G?'N2:BU$_ M5A[9!TV)VH4E_=:!IWES$M3SUNF^C@D[(G(]N^9@P1J##$\*!="**.<\,<[6 M&A&TW9,LF_JC>"-]BA>MCINJ$2AB$X/1,:P-;C*XVXSY1Y'GTAO!&L+@G^\6 M&LY"8&77B>KJV\?BOY^C'; /'7LRB._&/_P:VH.3CCU_U^X63U-\Z-?J]I7. M<$WJ4?%]Y=N7,G0#EW)TV(<_8?S-U=L;Q5N_#,/\>YQL"'/SVWB#/.@]LL&Q M?N G;UX-(1N2F'JQ]6(E76Q!OQ3\4/($L%WFZ/]W#:!LHKB&')A\1T_.&C.L MW(EI/NFO8+IEPYN^"]T*SJZF(X]!J7KP6YX)YR=:N^92L\CCETCV,AN@KMV MW2)VURQC=MLY9O>&-^.O]MG-6[$@T=^X)P^ZM!)RA50\&3; O&V'QG@?7M7> M9G]H@Z[_R_5_VT)BNP,-G?7?#_H] ML/]1M5KO8TSIMAUX/MW@3E]&\?S9<9P]$?UR4M6[18CHKL=>A(!NNL?2*+1> MY,^YR'OS9"K^-\N3C>)?L]K,^6>_E[N/#![$E#///7M*]]DOW'@%2/;?L[MT MKR>\5EGYV@;P]I.6^\/SN"]LV]'7X[VCOYHYY'-W_[^ MXZCU]U?N'\(&MZ#!VH@JH'H#B#B*H8@F9;68TZH-80I%XCP M&CO&C"J B 0<53\ )A5 ]'S Q&> :*0G$X>6R1H3F$6G ,048J(B](:*84B M>4ZNEC40U4#T*H!(D42U=3(Y ")*N1., "43D2QU4MN[$NAK('H6(*(S0(2M M$R%*E?N_.<1)$$@GZ5' U'NC@U:8K&TJDB9RX* M%KCBVH%4SO_8F+@5N'8KK0!VM7Z?L6_'@J):IFW04=,=1+I:@QB3K.@M2*6\L,X8E(B;&N'3$K MP;JSCA@!)Z24BLAZ1Q%7>219T@299)50"?,4@76)4#7K_K2LBS4AD;(\5ROQ M$(S1S!H:/$Z*.6QP[;I8"=:==5T(3R76(2'..$<\>(-9 DM:&_LKP;JSQCXV,3+"0&&V M*5>S@.C5!H1PX P8VBMB\]PQAE=)ZBXI(V:E;7R@Z4'1?^#8]K\7'6F?(B=F M(?1:U G[FM&+*J^=( YC;G,%EXX,L]QJ$ P&#]+KR<+ MR(6B01"%-)$&M!+)D0U"(R^BDM&S(+!8VZ3K>J4\F35G+]D;$(E.)ADK/,@T M&AP&:U)ZY^ _Y9A],F] S=E+X^Q95X%67B@L"(HIMT ,2B&C"9@?(6BO&- T MR2/,UQ7]"8.E-6=7G$UB YV&@LIN&;P8PC$$07F!\?* M"&$\XS$99VW ZLE\"35G+XVS9QT-#C,AB8X(SI0@+I1#+@:,P-1*@1G&DB)K MFVR=J%7B[#=0$/1>+W5ZP1,BG)\[?0 QSDGF!@(!-,1X<.!40L MI:"Q"+!*DM1(>J&85-[PZ+*_0?+YUL0U9_\LG&TU24EP^+^6W&)BL(HNUYKR MP*0+H?8WK#YGS_H;M I"!J:!L['-_@:"#,$>!'?D,EIFE-=KFW(=XYJS?U[. MCHERRF+P46E.' <2P)*!:FZ%XX[AVM^P^IP]ZV^ $Z7 Q1@I$0+BWF%D8P25 M/&"3E2\_QF[LVT[A;K#AN-UM#X;]HB=XG>'PE-J+""Y: MG$SDV;&J+>7"8[!3C.#4ZJQQ"'JA"D'*1(QZY0-9Z@^ 4O7+".*MQ]B4*4FAR"T1JSH%#D!CB;@TEBN'2("^#MJ%EP,JQMJG6M M;AIJ77/VZ^?L1+&5/!FLJ.4V8$VSN(Y<4BZ]4JGV.*P^9\]Z' )UQG"BD10Z M F?#3]H+BAC51"EL>8HL:^.,TQ7B[,=F.#Q%0]4%FZA68S\8/'GHC?(0D3&+ M+]RN^2?K)K/\_?E9 %?;J&CR2@=& '"#SE-H*;%@%;$8O:O='RL.N#O7-'MP M@4G&)(K6Y>GC,2%M34+&,09'Z1V6:6V3X'6\M/*UY7'6"\=^:HBM(7;9$.LT MM=H&@YGGB3CCG#4\!.)%E!+3V@^U^A [ZX>2E#*5C$+&Y)RVX#URT3,D?:2& M,&F=DCD^3A]?:5,C;(VP-<+>X35XP C0&F%7"F'GVKXZ#5":""+*ISQ.5"%' M",T9"S$1H[B.<6V3XG7^>(=@#;$UQ-80>WM1J364\<0CHXI+EXR@AHM DX(7 M*/:U8W;U(78N%2QRQSGV".2G!8CE&AGJ!;(QF$!RL]O"3T#6F5E6EN?+0VSA MU_VE&).\.1ZQ?F6Z>/G[]+3U_ ,\>'C8OON7)YX=-NLV:[_$ MWSCI@^+0AQ65UPWA1JD'FL@IB)4B\S:K) >]/BQFT&@/+V]K!]6%@W=7N65J M;RKQA++^^XZ1#3%6B]O=$+O#=\B\V([][W]I2N5$7#__$GZ]LCDB[\W:YE_G M@V$\AHWN^LXHQ*MGF,]F .I='DIJ07T8E'W?3OKQN#V 90W*#Z^#CI"&IZ!# M-DXZ=IC5Q0;P>58>RP_X3F^4*TY!P;R\=#!R ]]OGV1<&/R:KZM/=6FG6O7A MO_Y8Q[P(1W!RTNL/+\\/S1W7L6V#4.C:KH_K#=CRF,>4-^#:ONT.SZ\>XCI0 M1B\!E< OMM,85(M8;P 0M+MC]H;GM0>9$*JW-ZX>^ZQK@_KGHCH MW\X_QMY!WYXES&D#2 $A'\/2SJ?&+S=">V /#OKQ()O(#7?>.)B0 UQSD/6RDD=& M)_!CQLK"G,ZOPUWR[Y="[Q_M?$5O!*L.@W_>++^FK932H52821.CKC3-8)\Z M]F00WXU_^!76"M![_J[=+9ZV^-"OUN)Z;MX"0 M#4G,TA>+-P2[^4OKC7W$QAJY_+O6&PM?J?#R*19O:,K>^L8*N=@G[TB>O$>. MY-T9T^0R3G+%N7BG^W#:<0CV BA@S^.;UW_O'J'/>H.N-;,8L4HJ\R(._O0UDQ0:2 M93#Q3[M'-9$] 9&]@5:-7[OM;"7_-01C^6G'/RYPCX>2U*IMZES6Q'W:XCPN M@>0U)TI$;2QA22D9 W=26"Z5H#%2'*,@,MV[H.*.F.KV67:RPG9N#081_@N[ M]NQU9$T\T(E89DT<[XGFQ_\<-R_VSO>._G/\[>@+K,F+G=WO9]^.OQPVWX?. MSNYGO/-Q^WPV:^+;T??3;W_O7;2._FBW_H;O^_CYK'7Q'3[[X?C;Q^U3>&;1 M>O^9[^W^D9IM?#%;71$]QDYSY 5EB%/-D':!()Z(-9X[3(5:VR2:K1OVZ(*V M!V#*/4[\UD!< _'3 [&+RK$4(\$Y4RTYG:ADCGK-992*WW_ 20W$+PO$ M;'8F@@A,*@D8K!/ +]$261X)BDIA ^2#E%WK)=6XU$-= 7 /QHAJQ M4IQI'QSQDH<0G?0BA*")LX8:.OC0=YR1?M8E9W0EM"33,VQG$? MO&.)@\9L#':*J! QUYPY7/N17Q56G\_YD865RB:,D7<:(TZ,10Z$+O+2 6P; MXS$G19<>C7_F.6.D-R2U7)$R?4:X]IE&"E,T>4-/>?SU3CS,/7N7BTM[3&FQIO[M)OK K8 M1B.X,D"!/I?-^.099\$Q06CM%7QE>#/G%01;5(#H\ @3YQ$/-,^X51%)ZR55 M$4?L+0".69?JT8,?:\"I >>7#"9;QAS)F')F#A7(I42154931@6!=];^_(&DCRW1_W>R<-F M83U#:^[[!"!^:ICUPLG(E'.>>,XD!VB5WDG0Z1(+PM':;_6:8+;U^\1O=5' M[.=]2;R%(U4 L +GX5H.&442@*Y/#(Z34!+R"![0[%=H@. J0D4--TMHKIP\ MITH[[8WG(7*MI0=-SW/!C>&UV^K5P0V;@9L$&KG.K94=SPV+M#/(2!F13?"R MMH(9R=8VS;K^J6>,K\H]WCK<6*))#!)[P0/ #;9>42N3<59Q$;VMO5:O#&XN MO587G_C.^^U](5TD(FB$,;6( ^ @)T5"@D3'$G%>,IOQ1JS4?.15Q(H:;Y9A M31')J(XNA,0U-M;(H S\)H@BAH;::?7:\*8U@S>>1JPMTR@I9A G@2*;^S-: M @9S5%)'ZW,5PSH5C_:2KQC@O(&TJV8[A$YL;-O!L/&_]OCDU\96RGE8=?K5 MB@.O3$HD++&*RG'IE"-,22YTXE9C&WGMQGI5P/O77/J59"891B(R-/H\5<(C MQ\"X5'#>QC N4@IY*B4V=7"RAINGAAL5HO0V&6[IVJ98)VJ5AN"N(E34LQ=881&.0B$M)$*"/ M0,&2Y$+2EI"TMJG6%:F3/6N\>6J\"3AJHS7FWG,> S%26Q:]D81C)92HW5BO M#6]FWU2-)_?!DUGW$Z:."J

-8U(W MB'5:Q[JMU2ULGI^<:)IIGI]_'%TS381V;9R=UO8G/='QZ M:C>/30DZXQ?<'),)1M PCU_,^&5M[/O3BT;C]?7UZ+5U1-FHT=0TO?'KPWU? M%JU%95W'>UXI/1LR-R[?:HC;0\Q)7-S$[FRE.%QP9D$9\O [8:X+?1H=4VO-_4:PK[/G&'@DUO*)C?$QH'K M7]8"[X\ JF4[Q )F72*X6RF0N.UC-B+^(YX0/L4F*6K;YP\("7L[DREE/O)2 MC&;=JC?): UX? M83RMI#DI$VJ/KE2I0<+1]//S\\9,>$YV#3*]09:OBX_@W_667D%MGEN5UPW? MZK'<6]1AV6NJU2&6V[(.F5TESQ>*).5W7K(:$H@3\VA$7QHF#3R?S1WTI+ZY$UZ93Q[-I> $N"?XN8A)[Q(XC82K( M9O04^<\%9B:C;D&W:DP9G1+F.X0G [0$&#-B7]9$F*['0>MW%P^/H"9QD92" M54\4MQL@0MS[94MB6>$,ES4.!+@DM,TN-WS*2-6&@PB'X4(2_9=O/WRKVGX0 M,0/W[]%\B]A5FP\BCN=LT'HA/8#[R+$N:]<4LLL:$M>^]NYR<@JI+RP90\5@ MRUI\UB!K@S^HOLQ"ZTA*?6JLEUU#"3BQNMYG^7G=K2/AJ(A"<,T?2LNM&C)3 M++H86TYES^[C3>>QW[F!#_WN_=U->]"YN6K?MQ^O._TOGYPN4N?NE<_<(7SN;,UL$K*:WI6E&.7J7 M>E#W%JUH0J&J \5+)OJ#[O6_OW3O;SJ]?N<_7^\&O[T-PQFX:H(-33O>A."D MHA]0J.I <**KM?M?;N^[W[882[/AU'0>:]K)1OT5\)%4L$\DTLD4>W/L65>8 M.YS:3XGFE$PX50@*JIJZINMA(NIPTZ4\8$2FHA(/ 2"2B(C:*(FY1^STG9'G MV) <>'[;E*L7CC=ZHJYCPHRE%#MJ!#4[XL\Z.PD\M 1$,>*!F] .;\=1*:Z: M6JN9[DD%7$'Z&7W:J\P3\['XO_-'X+Q@%QK"(=(\8/9,?#QT29^8 7/\LMQ5 M@%-W-D.7DXC54 C '^7?*('_48;&I0JTU+'W//8(]YEC^L02]P;"/-OPF FG MXK&E';F=6%^L%D@MF9 ]*:EB7B%T;P8.XJ,;4D ME#)40N=*Y]*EJ-O#P'>%77%(I3\FQ*]"5):<,NC!?W*9=865" 5)&!3A[+?U M*X2Y?&EE:-,ANJ7Z1R83^QC,,HP:+9[P'C$))%E@D2U[2CZ@.K"UC'3>D$U< M/5[QX6BIY!#@PN;?>2_0'LKF6]*8PE&S9Q@E R!<7T ?. N;_Q2>U!'[#&*J M,Q7)L;?UD%6 JN;SV) ;3:7XC!7)G&.AZB,"90>&P^9W_3%A]]0;#0B;M#DG MU59TJB&JF3V!Z7999J42)+34A1H4ZCF0&C;_$3,&M7K9=L1,X:@)/#6TL[($ M+J /G"VR$Q80Z][!0\>MO"I6"5#-XIFAG5=(=X0.E%!RX#-L_C?AX)X_[T&[ MV-8],0=-S>0Y3,K+,ADK0)&&O:3QFDXFCC^)UI2OJ=RZ)5[I/665O'*:WM3T M=%:30 NW'))X!U:$%:KL-1:B**?O3;V5G@4J&=K':;S"R%W(Q+'X>D\PK[CE M4QE5&1>;$!JS#D IJ(2$,U:$0DV'^%B&B-_U]R$8< \4?U^*XY2OTG+.YNAJ MNEN&GMZFK4;W(H?=S\4?!3,;S2:KX*FY-0P]?4:K@-O]GEWV?6H^CZEK$<;% MJI<_+W?KJ#>; G@D3[%3/K">;%50+<9LCJ4'=JZ*DY1B:3=224Q=\6ZI#4AX3" M0^"3MI%7NE.!7VG*40Y)S>:9H9?KE]%E%*$?J)-FZ4RF+IT3(N\\!&WIJJ2:'UEA5Q&^L3';0 \V)?G4%5K'$;Y"(QV4-.S/QL5+& MN2&TDNR69NBE4ISXKR5R=(9-GXO';ET'W*<3 M,& I:HM1E(EJ2]?3&U,19OCDKP5J^$RP!>Z!J:6-*R2R9;&4>6VKV4JOB9=B M;1\3W4*31P6J1-2JF.I0VC+TS3IAHMPAA&:P$%^59R"P9VVT,K>]%C7[AJ&G M=I7+LA_?"D]YR 6?_5ZL*R3KB3";LHG8Z>T.76>$*T^ ME2A=H9CHYG:F"[K M# F]**'XX >522JY.;.UDH,O[(0OQ%>O*:]VQF\S9#7K)T8SM3]7>3B0^@YD MYU BU@29K&?/X<]O37@VNIKT4Z.9VJ6K0/I2)1(Z]Y+X.P]8(@,\*SD32Y97 MSY'/]/2QOU :2?']-'*%26]:2CV]/6^E=\^2!M_'66S"AE4"5H:8,A(9FM%, M[2FOV+Z^E]'ED?BA%2"Q$EOLU.N/,2.E.,B3548=0_P^<9T(0(K) "P4@B&) M=N"B0D!2(RB#$W2/](JI@I=]C%4YYJT2MPH@U#$,2$IM%BLIVL. U@^&G/P1 M0 ,ZXI=]Y?:1UF34 4Q$L-0&T0(!28C]-7BUK=H<674W.#::Z5WV-0+^]I/$ M3XW5UQB$WU=>=2!>=!"]1$4R)9ZQ_OL3HU9@^FW/ZA/VXIB$/Y#)4#ST' ^Y MG(I=UGP60 8@7M)P6[@WL":/DJAU1K9)P;KN_WML4/ M6T:RZ'"^+/*$Y^)2>$(G/@7 H$G4CD*Q//!AV] $;_0D&Y(TBXU=OK#+GZ#Y MS0T<7HF%RIB7VC[4F:A=9+W4SCA&ZB! @IZK^;)(DIXK2I^! YC0B=<+MT_+R*I$;F/SXUC#\P2'4AQ'+\2L%)XB%,&RS^7LZ MV@.>.9,@7.@4[R #J7?S)96N"H9]/V\)Z\IO*;MU/* -HDZB63S?90H%J_2& MOX;C/ 9B@.O:48!X@?12-!!,\+/X)6W;LF0BA]VPP-M[4^4*O+6+A5>X1"]A MZ;;J@+0ZJ2@E^I?.-%;)E 02Z\XN->0\4O^!O$.X>HLZO5/:6MKI'AS+O%=C6A$B'W])$NW\&:>VZ^.'17P]D%,L71@JX=;4Y' M"7&!BRI%=JY-Y=9[E"*[T:;PQ$#R>((\)?@$M6#AV@D,13UBTI'G_(_D+^%L M@+1YU[7(<(*!8EE/#&^G'D-?L!*V M&=@N=:MOZYU!_)9%O#=A0*_(%5246#TB,"U!YV\$LZ*Y\QL@[\1,>9F*2.]. M_CJP8 F]A.0NN( \!P&=5M0C6OWIS$PWL,34/LQA5@XCY?!=%697TZ%[ DY* M_!V3F7[E 9JXM*F&\HP_XL98RD2#]NH5VWIM[\KI\!8B_VY :)[MB M&' \'*WX06-NJ>O25S'V11GP#?;)@(:/#2;AC+L?#/\+,1&N.ORY:]]29A-H MFCB0\]8C\GO58<"O$H(2\8L3/+[D(T[GHD'BW53<@HN OUCS.^_!]? MY_IT&='OGS=NF@G')X"^[R;7AM78B2VNMUH_#WS(U\7$#IJW<*\2V_[OK/I[ M+]J'.5H<4WID"/$_O[/F%=_5M"ZJ+Z2DD)M!5M(=!-_VXQG+ _8" M&_Z%<8T5M;\ZWJX:Z YB('B*6 R7S]P.PT3T2(-'ZM$XF\TU206$G=TD[,Q\ M C-1*WY*KGH,SBN]"P.QNV M&^,V]OY%.;D6VP*4>4[!OEQN\5WPN'B%7'"T_"%JT4&; JGO/B3(4Z3<'),) M_OSA_U!+ P04 " #W@/I4T5]0:%H> #*(P$ %0 &-A;'@M,C R,C W M,#)?8V%L+GAM;-U=67-3R9)^O[^"85XGF]J7CMMW@@8SMR, $T!/SSPI:LG" MFI8E1I(!SZ^?+%DRQI9M+77DX^Z'!@OYG"\KO\JEELR___NWT]&3+SB=#2?C M7Y[RG]C3)SA.DSP\?7X%[^N__^-O?_OXO /_UZ_O73UY.TMDICN=/ M7DPQS#$_^3J+"V")T6#QT-QW_^7/\7PPR?D'#CV>+'7YZ>S.>??W[V[.O7KS]]B]/1 M3Y/IIV>",?EL]>VGRZ]_N_']KW+Q;>Z]?[;XU\NOSH;KODB/Y<_^Z\WK#^D$ M3P,,Q[-Y&*?Z@MGPY]GBP]>3%.:+,;\7UY-;OU%_@M77H'Y$ P*2__1MEI_^ MXV]/GEP,QW0RPO=8GM0_?W__VP^O3&$T_/93FIP^J__Z[,7QVY=';S\EL>/IYA*O/3J98 M?GE*C_P&5=O,,E&A_.L&3WWV'2[]?CH;+4;G-?V\?':%UQ(Y?IOC../%.*U> M/9JD'[XTJEJ:3%>_.0H11XM/!V&3!>1"QSM\0.'B=(C NG3*8E,-NWIDZ]8+=#2O%U@"=-T@U$_3J[E-Y[-SDY/ M%\^$X1Q/5[]?;5V'3)A/V@SYA4I)E'UUOD8>%)$99S2PQ#4HK@(XCQ9DXDHY ME6(.V%CU]W%Y/0/$7X$!>RJ@&1%>3$Y/A_,: E0A7TS&3L0/FBBS0196YM#.Z LPDUY%^!&JU4THPCSV%$D MC:AWK 0E2A&=B+$$T"$Y3IL[!SW7^ MO,7Y@.=DO,H*'..1YHDWX'V08-&C<(4IJ5EC==^%IT\.KH'VFPU],S+\QV22 MOPY'HP%EG$S;FE1:DDUQCQ!BS! S-[P$C=S;QHI?O;M/KJJ!DG<:TF8*/9Z? MX/1"BK>3<5H:&A16".\")+26HF82BJ+F0%%S2=9$A]SJQMI="V035:O'H^K] M![N=WLFPA!KZO,8PP_=U_([+[S->;C;9=8Y#ZOL8?0N#&F*O0B?A_,PN@)ND$MR+&3RN,Z3 MD$8[B,HAV!PYQ<_1.--Z$>9^5'W*8AH3H[%*VE$EI;/3.LJ8%T$: ?H\Q1,< MSX9?\,(XOY[,JET^+F2E!QH]9PXE0=,!5#$$EQE'Z;@UHEBI:!1:\V8[B'W* MDEJ3J$-E-6/4>YR'X1CS49B.*=*;70%-3G^8AO,!RRK)(BPPAID"!Q24\)E( M<81TP234VK5>/+D?59]2KL:\::R2ABMLRRCPBL,L26K-70&M/;E)- E\X1$" M)D5V4!3.6F=@:V#T*>]J3(9]![V9]J_N5FH7'2NHP&LN03EC*.8G@1BR8!R6 MR,O!-HCWDN1RQ3I[Z1DF<'5A2UD?ZGS20+/,)AU-]JZUG[R)HD^!]J[:OF./ M>Y>Q;KC#.9Y/0YK_,9R?O#B;SE2](XFXU Q40-=9 OLK,+5EUK67R7!7TK9W?77CZ%!&U(T^7@P J84%&@20J*,1:48$16$RUX%,*CBRDV3Z@V@-6GR*@=0UKKH^&N?9Q_ M0 K0+@[+?@G#4>7OJ\GT YFXHV]I=%8O)Q'#IV=UDWF.4YQ=KFQE%B(6$A"3LEHB5:9Y*U(K2]_ MK4?2IP"^/1/V'?IK-/C[L^NC])I^;G=3^,-'^O^;H[G'\YMW[HW_2 M=W[[SZ/?WM*/1S^BVN/N\'WOZ>8V\5;2-;I?O,EID'>3Z8+P\_ET&,_FE2L? M)^_"!?]4)*9B6.N<:D_(3?9BUKR>HD^R >.+ M693./T[#>$8>N*(8Y\5/2[N1_X<<\O)*RKWCZXH5PJ4$F9(D4#Q3F)R] >M$ M3#EIDU/K.VX'%;!/,=@AY\+:7:9>LJKM)N8:$7\?3Y&LX_]A_N=D5/.V_PC# M<1WSX_&5)&\ZG-$_O:0?QY_>X70XR9>'U22:>H2_D9X6^\XUJYN,Z#6?5HL: ^6R1TV!FD\T@16) "YY 1I= M*DJSH$OK580.Q6FV.?X=XP!11H%" =>B$ ]KALM0 !E SGQ=#(JM3XBM@=$G M1]<7/MZZH;ZC]AI.V MI+G L%[%)X,D*X.*VD62U&$J!Z'*U;P(AN,P!>;*1 M+(E-V3>?>??CZI,+Z2O1FNNW;9!T%.71 UF$YL@4Y,"KV[+58]'_R!ORJ'/TI?EUJ]O1],%RMF'" MC;I\;330KIP1CDF\$>%YGD^'X^%L7H7]J[T34)_RE[;D:*>'EK4]KR_H7B[,>K0Z<:6!,VXI M'K D)18#TC+O"(U0V/ZVVZUP]I64GG-E#2L4Y1RGB9F&R:,6>T0R9]S3>(;F\ I&H/ N!** M! JL]9F7IGOI#^M:NR+6(;7:+DJ;$KIWTTD9S@>E5D S@8'*U8E8Q^IE50U) M,A>9"5:HUC=$K[Q^_W#B"X[/<+6B=_U0X_?#OC-RF#/,B^HE3",-K@-*^ 3- M?HL04TI@@C*"92\E:YUY[0"S3U9Y5[[<##JZU5;#4&1&4[<6$ET4S,;IEV'" MV8?)* ]<2H%GK4"7BL>'#"X;K$7E1$G&)<;:USF[#!4L:#7XS,OP8 M.RAI4=;:@1CJX9@2#'@M)$132.2LR%VTCD3OB-;Z==I J&!43)Y$J&MUBOX6 M8C)0'$_&LL"U:'V;^&"G#1[6 N_.P9O+ZOW0?^/C,P1TF;S^BF.L)LAI,@U" M!]!:R5JDC, 4X2F;3<47EU5I?B'X%BB]LM*MF;3?P+=?8+\BG#7%,!\HKH_U M!J$7&2(2'876GG/+K-Q=(=1[G#'2*A:WLZU.!<+<9F8ZV;EA/0ATIPK7A@K95] MSP[1 YNNUCK?;\@?\G++\P__?/7Z^(]V[?#6/_T %UG62]+H^DHM.Q!F)S2M MOPSI:;^>_SZK%WY?42 S3HLKP//AEV5;,Q=M-#)"5/4@(1>"TLRLH5A6F#0E M^]1ZTWYS='L=YWD7SA?-F5Y-IM\?/9V&\2=^9?^AA)@7\?^B5N?QYT7TUK:[25>_/G; M>-5\8KG..:! 448I,W"%E DI7RNO*V) *3IRC<+(UG<+[@75IR"^(R:M250; M*JI=:Y"3,,5?"4^N^T<4@"Z&;* EDYQDHLBSUAP,3(#SE*%S'M%[GG4IK1<8 MUR-Y!!:W-5,:J*3ENM8UUJX.-B[K1UXM5!FD15SL8RNL1T%XK%4D"\0HC#F^;[6 MUJ=0#E7H[$ 4V5T!'1J9:V4_!M')A,HJT+4;@,J9U>XQ9 J#UIDQHQRV/A]P M+Z@^U2U[,'.RCZ(ZY,^RM-\JPEI;XF\0**)2T25(-N%%2R+'>(9L%#,2)2^^ M]6K+;DBW[([W($L6W5.MN4X;UFO\/,4TO C3#)+WE,F CQ2A*5$WGFK%,AXU M.5,2FMO6^SU7W[\)5^Q?RRKM//S=M=F\MADIE8Z*V0@AIPB*+?H/%08&6=0J MY"Q]>T[<"6D3FKB_&DW:*>D H<_WNL4#730W(A<02C+*_"HR63)X$4+Q,6G; M_*S@)K@VX9#_R[NE/?75+9.N55$<6/*#I1:Z=LS7&XVVKBYI"='S:)7SIN3N M0YZ;N#9:#F1_+7/47%\=,FG5?J%"(I&Y4K4G5S=$UW)C\TV8+^M]+9*7BWW81<>*T6AV7*Y7!?]>'FR@D[16UDU85IN; M.IO JT)IC4<>-*+QIO4=Q"; '\'&SKZ,O&N#]# *;[<)OT3X_9<(JW M ZSU[ >.!_2UDZ;148+*E&+[4*\L16:2\T%:V3I\V!)BKXZ*'8J '6JQ.ZK1 MJ)!3G)^_&X5QK<51._@LKO\.5(I6HF9 >5<"1=$T1!8\1)2H@G5*Z=8-+#9' MM^4FTE^38&UTU[0WU[4F4.]I *;#-,>\;!+UXP=7OGE1?/-F0+6\!7;T+9W4 MHU+OPQR/2L$T'Q2F8N(^@N;*@>)!0DADN7,*1BKT:&SK([&'E;"C4'#=R23. M9+3>V=K5H5;YE0&\X1:$<=HG%S1W?3GQ^,!WTOO+\34[BEVHOYFYN!#QN%P5 M^WB\UP /9*^%W;.6X+)B5M$O9]$ZA]AUB>EA3QD]?GKNJ_X.KU#='-NPJI%7 MT_/O>?F'JJWI^:34KX<;+6U?TO>'H]F/B#>\:-4:P_[7L3H=E3TO;2UNS*Q! M^'P]PH$N-E'*:R'D>EL4=D:IMW]%MM'O@UNK:*'(.FH&+M8M< M$H(\1Y) +B,[#*[(V+JLQZ-IK7Y(@K77UH&)9#-3(E-$0! YJ" #Q!0":&,% M2RUT*H"900I(_@,6@=M(G/)^>8EH_:>.(=< M76O+G'73II%VFLZ703 B:(V&(G(6*"+G%EQ)'FQ2Q9?$T:GFC8_IO7TPFX?5 M_E8CW8ND))U@/AOAI*S[U\/D)!M!.&1*LOV8-"HC<7=@]_RTEO?\OWIE<#:_ M+>RO[)71=I0#\'&3(ESXN3!HP1N-=?1 M>\5BZ[VM@PBV=POH:["N@4[I[+32#O.BA,_W%H 5PD4ILUI&,OF@A.>A%B2L M)SVRKS?R#812SQZ'(G)IO=O5!'B?7'7_YL&-GM4'YTK#BPS[9(_9Z8S:(\3@ M$!3]%8+,!;0SD6>+P936(6;G:P.'BD'Z3^O#<:.[X.=5&$X7T=P;#+,SPD=N M_N5PED:3Q4][Q#0;/GGO4&47"1I%(!=7["X!?'_K *60AHD,C-7.\+=I6GE#V^\K>Y0+PT'LJQ\ M- Z$D#6&YXXB+2) ]LP9H8UN[PCNPK-W_GLEK'PY.8OS86). MI^@Q >>U U@6C-)?J\$AAE1J,:SF3:GN1M0KG]89;]HIY:"^;'4%\KRM"[OQ MV"X\U]W8&SFLRY?4IL4Y2ANC\L TQXOU)2=]!AY]UJ>0)YD6KED6SJ]I5 :?C14Y*5UD9R+> M#JM/*=?.C+AY(;FM.AI>9E\">Q^^O@F4W W#Z!JN0DK4*FNP0MA:]ZY =&0U MM:^>K[C"5>LC3?>CZI.G:<^2-LHXJ'=9W7D+5ZZ[C2__M9&ON>;>1J MY(=NO3Y8^47!!86B7$%6KE:AE!RBKXO524?Z)#GZI/%LO M/@PAWM=USM4X5 M_7V$B^D\SLO%_<7GM]^LY#[YPE.$B*9VPTT68LP&@D&,+DKFL?6QI5;8>Y5N M-2/?FK#Y\)IN68]_/9Q%[#\H0L6"W(-$Z4&%$FA@O 3,6(P/@3G9FGUW(^J3 M?^R,4@V5.N.%VN![!]SS\/XTS".LVWMFYY?D=;6YM(TVYKZ]K;5JN_WLB8BPZ0DX^@;&'$)F: VZA-C%BL;7[4 MXS8P>W4D6SZ5S!_.ZD69XSBCH9_CY1K%\_FJ/?B;,#XK].?9%*<#H4N.-AE@ M+@10A0D*S+.%4IP1B<(NQ_Q];-H'0)\<5!N:_-"M[!!J:>:T%A>CSRH"\I_+ M):S5"!BEI*F7X]$*)$!1U1L=%I#B],08$[EYY]\[X/3)3;5E36M=M"LS0WYE M RZ>=ZT(;0^E;7HACI=Z*CE68HJ!V"Z(^]<_IABX--;(W2ZX&5Z^FBS$=2*]3O=,(P4M5 M:TQQ<")2S!0\YDS:S,)N$\HNG[MENYI'I-A]![&-%C^&;[AJN+24YN8QYF6/ MBUH+QR[Z=BG@Q5%D;)4"IR2''*76BANR2)LE+-N]MT^-:#I@08=*:+RF=JOL M@=63%QK!:U47AH*L):MXO%HE!!=S,=-SYFBW[R#PBM3<> MXG:&8571[W6MU[82]OPR?,W<&"T3U*+TH,BGU9Y(2!Y.2#0R"6=;GYN[&U&O M^L-T9!G:J:2-95CF.N]Q?C8=7U]/0<93M5.B>+)3*0KR9IH!KZMLSJ>446]D M%^YXR;9]71Z1SIN.;]/,X,79;$XQR_0]QC"OG62"2U*4"(E25@(2. 3G#$22 M#J.T4@:SD:+7/W\C'3_.9EP?KHL=E(7UPG5Z,=M->4\2/>8M57#15>GN' $;>T4QY%#3%F!T9FY MNGE14FCL;#?%MF^8L>E[WM*8?_R*HR_XAK1U,AO0/-#6HH%4:&!4O9 48R;G MA]'+@I1>J]8!R*Y8^[0=UPGGK@MDH$ST'@DDADAQ M5JE'ZF1=H@L\1(5DFU/KNM%;0NS33EZO"+>+"@_+L_=X&H;D6Z;'Y=5P1JJK MD >9&<^*H\%P=;/ R0P4< B:(4SXHH(0J?7"_.YH^[0]V!_V[:_8AS%X1*?: MK99KE@0#0E4[32172[(KB,IGQ:7R(;;>4-P:9)^V%OM#NYW5^"!L>S4YFPZ, M=SIE)R%G3G,BF #>*@8T);1G-@]+MNALUCAN?*6;QM/XT*,P9HP-"P=H(,3I;UXPD&,4*T\6E+%MOKNT$]%'FK]NP;2MKUT2= M76_3#((,5@;N(%GR]ZJP"-XG"<@293M2%1V:WQ-:#^51)J/[L*>%2GK@$B^! M'V)I]\;+#N<>[Y:SU66^6SBA0BXJ4USD.:L%XYD#IT4 GHNQ%)27XIK?5]ID MFC;?+[9D'5.@]#8OSMZC<^"EH?!08*:HE"LM6Z]@--@O/M2EK ;LV'*S>!M] M=.VLKMP4T^@0)0H0.M4S4*Y0AJH9!&6D\3[[T+RRP[V@^N3 #LB4';72G>=: M'I*I@[*ZWC/[.IR?K+9.9ZM/%Y<1R>BW\&#[OW1O3]98[D8>;?72/ZX@^HJD&(LEA""+4LT["=T%:.]RNW<]_,I,<1$U-0D=TK @N&4"]2RL0>5>SLK=K!62LVXS^2YP*\ MG![=P]7=\\2]_=@VB!LYJ3\6=,3\_ N%.)_P[=EIK!MP+X>C,_IT\?K9\=E\ M5KTF!4 #E0HR&SVDX#1Q!XD[NF@HK*#3AF7F6V*P'V">GUB77KMNI[K38L*AFFF)= M?@FC*Y-]]GP^GP[CV:(IVL?)XC,"B7FY^/:\WIK\M/B]V8"R#BUTMF 6-\;.M;EY_5_D5[[C[_]/U!+ P04 M " #W@/I4:D0 2YY! :ZP( %0 &-A;'@M,C R,C W,#)?9&5F+GAM M;.V]:W>;-Y(N^GU^14[.UU,=W"^]IF<3(?CT=]^ MY']A/_Z HS3.P]&'O_WX]_>_@/OQ?_W;O_S+O_X_ /_Y\]M7/SP?I_,S',U^ M>#;!,,/\PY_#V<:SG_\VX\?9[-/?_WIIS___/,O M7^+D]"_CR8>?!&/RI^6[?UR\_C?[KX);UU.OSK=/[O7XU3F,W5<^\0 M?MCXCOH3+-\&]262'4C^ER_3_..__?:D(@[P]&P+D>OZ,?%P^H(NAT#>C_;!NC208?$G?3@B-N,1/59,_X>ELNGQEKMNY7C>CN-#>P\?U%C_CZ!RG M)W$ZFX0T&Z@4BK0Z@#+:@N(^0'2T$$9CB\3D73*Y\:A6,=P:HP'\^,-XDG'RMQ]9(R7_0N-^-A[-(?V##+MGY]/9 M^ PG+[ZDT_-J$YY,ITC_Y??ART 7E01:!,L])]Q"@',)P3&A?"I:*]>:W0^ MV3]5]M/M>J)TIIC;7.+[#I[4Q; +X4@M7?:20$Z%@_*9P1?F"8AQ)BY MTQ+[Y\ M(I?LVL:6O"I6>@.H#6UL(A'=N$B@378:I>0\K?&I]M+Q1C#?O,;;B/FV_N6^ M^G^'IZ?5PACEW\+D#[P&<2"*9,89#2H;!!6)F5&) )8,#2Q<&Z-T:P=G(YK^ M&=!(9>-.Y-W!^OX6IT@?^)&@/:<-[73\J=)_"4Y*VEXD;6ZR;3X20%8)A MDJ44D:SB_+WD^YM=:MFZGXY2N,S?$76ZT!EARC1@K>9G!RA M,KA$WWF5LS %.:K6@<(U,!Z/8?A T7:@[=?CT?@FJ@4/+\D=O%0ZUX-S&^"NHWZ-LP%G M1&U-C&US]LZ.Q.L<=ZZ(#A^+-["-.-HIA MD IC(G,'(0E_D?418RP@:LZ'+B*$D%IO('FP<:2C_AKY%/;6^I"_9MW.4 M&VD\"&1#%<$+I$Q?%%,%8O(!6,&B+2H3\TH0XO:Q^&Z/?"PTZ%#0'7@45^;/ M\C1L.#HG7 O[:#R:_HQE/,&+][T/7W#ZX@L)AYX_'(7)U_G^2P-*]1QM/(^Q M+,<^R+0C%Y9H&T[)D1=-MKB/G@.94BRS4O,*5/,]J;/A?/.&SK&H^C:+31L6 M$^3%#/N9W/@:Y(^62YF" :%K(J3-##Q7$I1,T2;!$@N^$P;>@O)(V+.?B&]K MWN[M-.'LF@?GBXR84@+DFM%BFAUXKZL'IV7P*?0R3JVV9YV2R2P:TCH3+Z0"!>:Q)SCEIAUK[UL[.)BS? MO,:;"/FV\GUKY?\[E'^[D+NP']=!?5\>'H^PSQ(*BJMH@&5.7W1&,"Q0*/EDL4DN')>=JS[ M!91'JOV'"+J#TZ]_8+W:@OGD,]FE'_#U>17-FS*'.'US/JOW/FIVW@+N\^$T MG8ZGYY.+Q?!2,L)A-$QR&H6B;4EKWLE15?'LFO&]_W0ZC\Z?Y/\^G\[J^G&IA/%D_HO9;#*,Y[,03_'] M^'?:7T:S@494$3&#*ZZ>5Q4%7B8-K 03N*4M#5L[R[T.\/NT.!KZ',HHN0.^ M)%,JN*A LQJXYL@@)%_3N500@B5;L/4]F3TA?^=SARKNX-Q\#?++C4;RH 5R M,N9]".1", Z!607)6.>LM9S'UG=X[X#SS1NZK42]9D_?>Z&Z'.K[2LY!%M8[ M3M8%TUS6]/ ( 8T![\F1B\RS$%O''&\B:*CL:^5G.E?Q'F)<9ZG]<%%,Y*_5 MM\?\MQ]GDW.\>G$\FN&7V8O3^0/_]N,4/YS=6H"W9\)T,AO\/AGG\S1[,UG< M&SWY,IP.E+0JZ'I#G),45,H.0F06:&MER3"9,MOJD)(><(T']-,5!S8]NR$+ M[BCXK^&Y?C'X^7PEW K48*7JT/ZZO@VDY1J_J5K2E;K; MZ.BVPAL)N#?M1Q%=0F]J@%@1OTV"Z"V2(436ARDHPG;5%XY+ZS=J3AU$Z;O( MM:&RYXF;[[Y.ZVZV /?;W-(9&$5/--E#*=D2#,; Z#E&UT40'YTZW1SV@!9WQ' P4K)?D M74UYR=I"E%[*G$JM MI\_5Q%\;@9L:?4.SA3N3H FKX?G^0\%W8X_3T,\\O1 ML_!I. NG<_+68M:Y!EW)(YP?';U%&L!T.,.%E7=Q*O 6T_C#A8ZVH M)8G0&F3BM2RCU1"9%F0$%I^SYUK8UH6KNA[3X^;H43&BBQI;57(OI]-SS-<3 M BY6Z&6^^\V!#40V.MM$OHHDRT&%NEBCEF!UD,4I;HQO?3OZ 3 ?-R^[UEL' MM3LV0)Y/@TV($]+&'QG$P,GQ5D713I C&:K&J%RM6-7Z=NSN*)\DT5IIK8-: M(#?OYRD:>HXE@XZVQED,!R<,^3HY,Y8#E[&T/FX\\'7'/MGQ<%EW<,-YWW2) MQ+CV\ZJ&I2:_N5KD4$8%R+*7/'LO6&NJ?',9,7V2JT]]=G#M^DZ'UVENH[<< M8C8.5/8)G*9)H[F40@I"%EKG'FX?>FCB0)/3+@PW2#Z\<+4"?29K@Y%GIWPL MQ:?H0NNZZ_0,44((1"IG3-!4)7N&W>F6]K<(^")IUHHH.CQKE%7-W??G9^=AL_*OG=;BGTP?E MY;7&L'?27J="6C)K<^^ M"M5(YA7]L>"DK??^0NW#6!AH-$&Y4NC5UMV1[H&TMVE-GUMK;EF9LP#&:KZT MU JBK>N!,1&STBB:I^34YQZ@=5]#_=XRI7>59!=)>3<'=C)[%B:3K[1"7Z1$ M9(-*U@)MI=A:*+?0\'P)H&UD)09K,72AY\V('A\#&DF_"R=Z[/:H7;2MLYNW O;XF-)6%QT8TL\QSJX5-_E,^VO=DG\9 M3]X1WJL^Q2E-SC$OJW%?U(*8#9Q/9.J["KF*QQ@.M7T5%"<]8\FI)%KWAMH+ M\.,B6'^Z:Y@Z-[_0M<8B/%EO$0ZR1LLP%4B@N\MO21\SGI_BFK!?&\L*WBLF@!%N9JT+*X(5!0%:$+A*58*WO M'&P%K*^3Y2Z7D_8:.);3YPT[<3U&R2;:$FK]Z3"_.N%KUQQN091H?336N.:- M+C>C.=BYQL&VP=W1DO0_NPYQLM^+ M[3Z[_2KPV$@HG3+,$_*2'*>-.R@(MK:=]T%@\5KG50OI$9+OGK/T8^3>+GKK M*%2P0%*<4=%( ]S$VF$G(#BF(B1$52RB9KZ+3?!01R7]:6W-+O@ D7=TL9?L M@V$]#R9#80'**9$LUIBF\S05.!/@2T*@W=T)PWG)KGGD>QV0IT2)O171P=+P MVWB$7R^FP=+Z::S,6MO6T9[U2)X0/QJH MHH.HX;/QY--X$F9X,P2U *>84DFF C*+>6J:@:@100@;;""?P:?F)Q!W 7I" M=&FGF YNR_XR'(517>I>CD@\Y]6SGUM@3F0RM#BK5?QHM3->@Q-%0>WMIY!^ M&T3KK)X-4!ZO ]Y"]ATL)//RT04G5V6C:KO0L@;M]#U]Y'3]KQ;)+MN,I2-O MO.4X#N.=-R'(:O6N0VNW ]NHZ9@RRT66>OAGO 'E:U/;7#@$[8.6VDELGJ]V M_$R]QY4_>J+NHM0."/KW=[^./^-D5"&MM0((GD 3!%D5D>R+6$A0O!0P7)+Q MF*3%YM[^?9CZM] .I_%QA^KJ+U+@%0LN6DBNU*MISA$\SN$Z MDDC!T1!G?\5TO/BT@(:$KAZ;8(E3X:E*D"0@=:X'%,PS:]H]$V*>X(X?7-B%XDW;_CQ<3R9O%C_ID4KQ8P[E.K& MT,E!KJHNMM1Q6??;?FZJ;@6AQXNJNXMDY9YJR2K*D+U,R:ALG NV^!RE]([' MP/4N]U2W M,J(7[U9L?5DUY=U1?+9 5K,K,SM[:NF_-FE1(4ZD)N%"]30G^?G)Z._ZR+$?W+9Q/,PUFMA[B\$Y.B M3C:16Q&PMOQT.4#@(8)F7.>B%2K5NN),+P,[0-^,SMB[VRVH0S"CBXHY*\-: M&?15V8Y?)P3ZJI%Y'<+/6,83K+U,R:[*AF<+5NL,2E@RKM!DX+3^"6FT5JEU M E<3X(^9OOUKM@-?9[^;B%&(Q!A7X'6*H)@,X*L+(*,+/GKIHG[BMTB/935M MJ+S-?Q*$4S914? 2C BWDTB>(U>$(M+![9-[8YH5UMX#56V7:(R'2[KHX MEKN$F])/#+D7OFA/K!>U/40)X$QQ8*U/A15NA'[D28S--;YE"N,NDC_VA+!M MQO(]A7$# 9L0I,O,L(=H]]@9&Y%+:T, Y7T-X)%/%'TIP+*6!6L>@&K=SNCX MF?K %,:C(>HN2CU$"F,QL88T#; 4:U^,Y,%)A2 XTQB,M:6T[B3PR%,8=]+X MKBF,NZBKMQ3&;&PJY(^ 12=HQJD (?N:+VQ5%LIJ)KJH+OW84ACW(<[^BCED M"F,N6DI5/.E9T9(MG:HC9U *)A6=52;Z[RF,AUR,FJFO]Q1&70QY29)#D++& M\R('5R*KQ^"YU!*[C+4.B3WF%,;]%JE6BNHKA5'8S"WS#!B/#I0N"CPG,U)F M&Y%LS)1XZX7I$:8P[L.9O=72:PIC#BK:(HFX];ZQ9/7B%(U;1/) >+$AA\>> MPMAUZ*J)[#O8A.[*HML"V9-/8-Q%>SLD,#Y ]/TF,&).0F1F0096:-=CK-Y. ML^"235DSY"7WL60<90)C-YS81>*])C!N+&/A>. Z9@G(.=G7F&PM8Z' )LVE MX9F7N.)?/R2EL8\J8WLG.>ZDO*V3')M(OF&X9>NTS)BCLM8$*$J3(:0<65;1 M!3#,\I0Q,%'RMY?LVI?"=DV"W47:&U>.=DFPOX3A9%[Y_#<,T_,)UA3+Y\-I M/<*M/^V1V[KE)^^;LOJ0 :QDHK)B+L@S?W!^,WI;"55;U],;7H]'D^6//X?I\%JN@'=) M)5_+%(EZOT>E2,N;3N3=>'3"9(REM=/9= #=U!B^A'BEO8'6,>C()!A!LU(1 M%\!+,AB\EDQ)YVE_:!YXWA9<_]OFX5BX78WB?378P7G&?CE:+"ONE#-@8VT< MZOB\<8V H*SA*6JCT#6FWS>6;7<\E.Q/TUVT=9Q+;]W\<;1IH^0"DF.&[)TH M:TF3!):A]VBBEJKU7K$1S%.F5QL-=1"7:B&BBZB=$ _SW&4OL[#2\6@ M48P,#@R6QA4#A\"T@))Y]$D;49KGRF\!ZU!Q^P/Q91-K&^FM@[UXU:&\ 7 1 MI=H&8D<1_RW@'2BEM+5J-U&GL5X.1"%F672*?"*OR%A0PB::10;!H9"\!.E< M<]?V8-2Y+\?S")BSBSIZ8LSTWM&/TL64$GBG%&%4#J)V%HKQ026K$C9O M2[L-K@.Z!:T4N@5A]M)&1ZUM-[1I"9*QXHJ'E.L9"L\20HX<="1@V1220.NP MQ?$UZCH.>Z>1ECKP&_>JN[\-]N_-O!ISH&5#I8>4B1&&^)J3:6A)1 MT%KOA !KF!21UF:KOS?S.D+N[:*W_CKVD)D0 M>,"D=>8$3?KV+1 >W^7F?8BSOV(.>;F9::=U40A,Y$R.-")$R1P8SST:)J1? M+4C\_7)SOXM1,_7U?KD9A4[>Y0A2UW3W)!0$Q@I$[97( KEBK4ME/>;+S?LM M4JT4U=?EYJ*C]2P1")LX.=FUS5]V!EPH2A69.=.Y,7D>X>7F?3BSMUHZN-Q\ M[;3]\MM_'^*$'O+QZRO\C*=S'T1[FP1!(G?;.U"^ I3T(Y>2!\D9RN;-?;9# M]L2#7^VUUR7'KA^@W\:[F&';@.TQFVHCT(/G5373^#;Y#DW5U5?*S$;0*L:L ML/9/"[%4T *BT0F$K-D@+OLB6WMY1\"M[1.OCH-:NVBI2TJ]''TZGTWG$N"+ M75N6P%(B5$70AJV2IT5;D)5G??1HE4^!MXYOW@'G.'*N&BER$V7VU$(71X-K MH(D%M(0E1^^R\[&Z%N0WGJ1'D(5KHX0KW]4H'BZO( MOT_&9'7.OH91KJ?IGZJ<1I>_O8EMN]OPYKY8ZW*C$*AXKE6A#$ M$#,D2UP(Q,!IZ\'![H_;;YHO/_QW>NSLY-H37EU>W1$F>QVL Z>);"KS".0F MLGI$@S(G#$:UOEQR/ZI]E[>-3WB-LY^_5E?Y)))['-)L0*-/LE9O8,:LK7D>*Z6"'W(ATWI-EP+$((309D,A4 MO2QI(?)Z8S(76X1TM;!#7[29(SHBJNRIRVTIL[LBNKCP?-6LYSE^FF :7A0! M0MKNYN(?Y44[JOGK&P1'QY8JYR(N'6"Y6VP2!EYK;*K3C*DFF6I-E6VQ]W9SOV$+J1!7' M$$,Z*XPE-UI+?3T *4@FLI(\UR&W[A1X,.K<9%]E<@')%U_% UC=O)N)O4VD_G,YRLPLI)6!FR(:-? M6JAUX2$DX< (GW4VY 6$U@G:&Z \/@JTD'GS^M?C,OLS3'!YS5B77.OF@BF< MK*N8?;W(D($KQ6.03#*Q4OQ\4_GB&Y_[>'2YK] ZB'J\PC#%C^/3_/+LTV3\ M^>(<;]F7@S$,EKB4I47B5[+@C9>^%;]U,[@XXCX<&K67?0:SCE_,) M2?=\@C3L7X9?ZG>7USJ2+RQD#9I)K/EL#KS@"+XH%X0B7,UO4&Q&\_A(T4CR M&]/\.CWM?ATFDS ;?L:VY]NW/K:#$^V[H:^<8;L0I$%FI0M9H1/>>^VD=B5[ MGK)=>X9]ZP%[WUL?SO 5?5XM;QM&'X;Q=)&L>A5C2T1$RQ@'Y+6_I%0!8K0% MM,ZTN!B.RK:.1&Z#:^]"(N.OX73V]=?S,*%)B#BM5XJ&L_GZ>7(V/A_-!@&= MU\9'4+S07'$L@TM)@3"^H'/11=&\7,B]J Z0IM.:);=J@[1513<%'C:)H!XJ M<*VMH["'T-T4.<7,ON M'X084N)2@BV&@4)++A5W]0Z(S99<+>V;5U1;Q? (2;"7F+LHI;UQP'^?8CD_ M?34L.- *61":59.++#DN) 3'&5ERVIGY88)O7E5X"UR/D![-U=&!5[1H)W"- MQ,N. B5Z,NVC!^EJTKPD&?C ZSF3B9+9K*-HO8ML!/,(R=%&\!U/+L-$POZD R+K-6$4&:K,C6+AIBT/5');(LQH70NL3 #O .GT#2 MEB#;^T%[*:J+RW&;H5X!?1W.EB'/;>!V=:MW-Z@'JU+7C>JWIU@SO1T!W82R M@=7D02EK,V%#OJ.G70"TT )E#"[;YMV+CH%F]Y>8.TJ6[:*N#MBU/#M?'KVN M8%[V@W4N^5J"SVF2BA()(=1"#4YYRQ1!++Y]]9TM@!V5[;Z_>C?D-;33S<88 M"@K1V(RY<"-9-&+H,CW"@XS M&49,&%5L3'RPRX/VS&D83Z;=1O%(";&S M@#LX4+N):+E+UD,=8>.\6AZSH!BK-X&C ,NU"=J6R)I'Q=:2J?Y"@.S@] M^_U\DC[.J;AT#2Z7I=_HZ]GYV44*T<7O:?$B&: PT64PW"90O@)6T4-6Y&-$ MH['$UJD9.X-\-*3I5CT='+R]&H\^S&@KNPV<[*7A. ^4U\;96-M$9#:&D+7O(/ ?9@>#5N:"O\V.-U46"00OOB1RTTY&^4VI'^;,7;_Y61%%!XOWT"?PT\EL\&Y&_OB\U!*./TS"IX]#XOS\A"5[B3RE M"#*KFM<::OG*8$ 3G:,V*OCMD@?I*==(0C]=$>1. (,?LQ! M71#G.J3%8<@VH'8Y";]/^YN ]'O.W5!1XZZDW!L%!"O!"^_!B*AJS7^L;E4$ MYD/13"?RLYM,_'Y5O^'LN6_-[R+>P^A_TZ[R+)P.RW@R&H9E'5J7DJUG MGT4I,FV#J3U,701;!$.C/2MHMS(3-SR@/S.PH>S'C077P6%(]5G>K_59?O[Z MC"C]@6S3-Z6:.LMWY#FK4R8_QDL!G,P<8C5YO$3FZLH8:5.(0JC69R(/A/H( M;( ^E=7%#?N-L#> 7LRU;6!WE%'W0,B'R:SKA19;4[&]3CLXMGLH?!6BTBYP MT,QZ4,I'B%9Y8,5K';+6WK<^CCDJ*MZ3??AI_QY,\PR;4(QQYY=@][T+X9=PV&MY)[9U1!;C5B45(5 M%UU2PDF%7LL@'..#ASURSUM0'\,$?ZZM(2&BZDT"6027BR*5V]9G$C. M(5Q%%YFW44MKP1@=0#D1P7%E@!?ELS;:T&A;WX[:&_5^#N9#'__ZO,[D-V7^ MV^G)9U)@-;A_&4]^K8493G*>TS2<7KQAH(H0D98)0)(A*&%I 4&G03)RR8.V M*84M:W7UA+C_M;EG M_TEX^1!QTXX%V-<\!+,9HQ"T%Y!%H4#40N,R2/-CD3 MN6_>GZFKL3P9YA\5*3HP>J]N&=X[PNFF(2YZBBJRRBR+(&I3+940P8>"@"[I M)%C6(KIDZ1&9DO2!T<080?1#*,_"^-H2H'7!# M-!$"#R@0R5@5K>M(7G_^X2\5]\J U22NAVJBB^+B"RS+,[PMT'15BOX&D@-5 MG7^P9C:H> ^Q=J]LKC4]4@I(221:2RT'[QR';#WYJL$7(O(WJ.3[ZL-WI.-= MI-GZ$/3DKMC!LE2ID*4H:\ 40SMG;=KJ0D9PVFIG=(DHU%;NY18/.T -V#V4 M,>Y0DETX:.=QBO\\)VPO/B^*W,ZY+&*H=9V^AGPX./=? 6J80; &LHTU_(ZC#[/]-5'<_'?:0>Q<^\$: A,() M3=ZX0D*I4/B:&N!KFQ3-"D:M2G.?ME]"W&,K],N'7<3=/0\6FYUC*FCE#*#T M%E04 H)D!D+VHGC#G&6M[V>L!7* D%L;1=VM_@=(^2#'??-7WGRJGSIM>KRW M[H/;'^?="W_E^,ZKPDWQR)-&Q1F+QI$1X)1F&9.5ZX[OUCWBX,=U@JL09&UE MXFH_&JRU.(UPP+20BIF"!;:FT>FIR]'%Y>D+MHU^Z)88H&3 MI5\=BFKS>V'(6V0>0Y8\)M;@]H"C[E>2$XT4IDD"*>\##);9YK70^UWB-]GQ1%1 MJ O#MHXEWC_@2 M&8"^6*.:UQ?O9"!/D_T'I4,7T9V'RO3ZH"[F,Q^@LU*[@+4)LP*2M .ON0,3 M=%3$F((%P[*Q221I8O-(5A<#^4[MWNG0L,C.GGF$.'LY2N,S?!\F'W!V MDCX.\:)#)0VKC"=GM;W=>V+OM,8EEN7H4!N)-AHPALD:60H0L#API?9WB@EE M[#JK]"&XGPS1CYT3#6L"[3?4G\?C/VB;FNXTTB"+Q6(9V)(<*-(/!%LT&.\= M&A:+D*E;]C\$]G?R'PP,;\L6PW\]7CV&\X&Q:A@(X]0T H: M-T>:[F36"5Z,D#9E77J]7?"007R?%\?(EH9EGO8;]R+'O'Y[$9.Z\&KJM/]E M/-EIE; Y:8\R@ U(3A##!,Y8#:%(E[FWDJ]>3J?G MF)^?3R[CH!>LOY[3\>(+$7M(\ ?*6^U\0,AI7I0]*5K9'0E%6)N+9U::YA<9 M=T;Y]/C5K2+7<*_-P>2#LI17AK+I+';Y^]\GPX2#[+-+14K@KG@RZK4'FF!D MV5LT43,716R>RM?K")\>YX^70&OFR]Z'G"_./IV.O^(RFK]^]*_'H\\XK4.H MXYR^'\_"Z?7?UR8+Y.7^%\[>8AI_& W_!_/UY6& VOIDHH7D&8V2*0,!K:VG M8"EFRUQBK<^*>AG8DYL=QT>7-9-B[P/3SD9YL2"0[[MXJ;Z/#R077HE:W$A5 MLQX5?:>Y!*NX2EP**4WKW(!^1_A]FAP/@=;,E[T[G+2[)!:2E\SI"+P>GJFB M:=(K*R#[Y%0MWA56#Y>^EWSHVT ZB+*/LN2##[%@(<0Z"W)VK.<0 GH0@0L; MHU8VMO9:'U?)AYT8<%?)AUTTT7T5@&W0/)62#SMIYNYR \1:P_U/8H(VH0 M);%:[T!S<-XJ8%G:K"768@C?H))W*?G04,>[2+.#D@^"7X^_SV/SR_*A49+W M4:L3"!TY*)\[R MKC$14L8@D(P>5>NS)PO."D+$K/4N*XFE]?V;&P">]L;]<%T<(LE_HR"NAC'* M*W-HFS%U5?VA@_$YEU 62)D7O( P3A ]2( MM#?,>-H)GBQO[S&,CIRVNZBV [I>!L:NPKW+'CG91?\1&P6/A@.MN?,F M\ )"E R85$9J)1)SLO$"<^WQ3]OD?Z@>.K@,N8"R;%6T!9B.+/4;0 YC8C]8 M+>O5NX=,NYO["U V.!&1;+"092V*7A(XC[00&8:U=2-M7:T+L_:@X'MLT6[T MNXLH^_-XY@L5K66TWKT9X6+[R5HQVL82B%P3"80UX*5*$!P/K';6+KRG_@CK MX/5O/^RAR.V'G83Y?]O?%D*,I#(KEM7688>#H-2"# M6;(@+$MNJTZH][0Z7OOPIVDYMM%%PT(#:P']8SC[^!9/Y_*8?AQ^>C]^,9H- M9U^79RE;0&W8)'U'>/VW3F^@T+OHT8$VNEY=[H$L:_7>+$=A[92;C@JQH@,.GOI5> Q*.:E43Y@<$::L*;<\/T//'CQ8:Y\X;:V M+_2, 0V10>2!0XHLA_H_W[XEVMZH]PKY+RLO;%;.H+!:?(=%L-;4SM*,0PPT M4TE$UK)2;/+A/LIO^:PC#/FW)\9U MLXC-[SA9#G207:"QZ02&!U\3. L$YQ4D7XK6RC$K>K_&^M#!?*?[06C1,#>O M3:DF,N3QZL[Z=(#1*X^)3'G&2<31T^0-28*-W@<=Z,75O@U=5>M:0?9D"'MX MO38\3[X:3+QC,'%#W>M+(ZI> A\7^M=GX]%%_L2-X0V*8J$H1UM.J5.080'O M10'C)>=!EE2 M I I)4$Y6U-($@V 2\UQF$*F6 0XL@1>6@38J.Z=R,CD?BQ.Y M:1!/ANO'08.&=6Y;#VAU_@Y0!Y2V%$ ,"53V :(P!4HV1D:+@3=O[=[56+ZS M_!"D:%B6]G)<=Q7HNWF%X\\13NIY:0W;#T10IB;>@7=!@$K:@,^R"E09B]DP M;'YG_8%0GQY5>U!I![5ANRL,=OE)%__HS>PC3MY_#*-EL3"1C2;O&$$:#!=V M5/ L0-(YH4'!F-DJ&>(A%\?Z'NR3FPW?!JVZ**+;>T?$@/ MSO@(Z&(1] NEFA?@_5Z#[MN<.OL3J&7AW_V<]L41V+/Q:#89QO/ZKRZ#43P& M:X4%[LF@4]&1?YZ+H?$%C\@DTS)W&Z?9#.[)D/DHM-NR[NY^ UK.Z?CK^LUJ+BR!K[1;\?DPS%(>?+^;^]-UY_&],,WIU./WC3:$)7' X M.Y_@0&D3?7$96+VJJU*J23R6G!KK>,HZ"96VNS-]9 /[/DV^%59U4<5W;Z=_ M-61[+.Q!8,V#^?)S)-CHT;+8KQ- M3R\NAT,+P>6YW<6Y=!"A:&$TF* \J*P*^,0,T#>8O4PA]WQ^M1GKD^'U,>I^ M#; ##/6O(?/A3F O1K.VK$ M]? Q?*=TGR18P^J]SU_[Z1 2;52)O CPL5X["4Z 5YJ!%3(P85UP[-L)^G_K M#66.,DKY8+JLF13[G],VJZ60&)=&F0PQADC3&Q4XICT(C&@84XY\[=9K_!-L MD+'7DGX091]+@XR;]4^+SI+[*(&)+&H[0 G1R@2E[5UT\]4:7LGFO12LO@!.OY6^,N9T$IP =+4]H^U76KD M/ (YH#QX@UZEWI,*CX:W.U7:/CK:[J+:KBMM+ZJ9<(S6,E<@<"6AUGP$)[*! M(G(R)+_:=[$KK^D*QA'Z.)WK]Z[JV@]03@>5%&XT])'6&K)R$7PPLMX]H\F4 MT #/(0@4WO'FD=''U=AL'ZOMP9KHH#W*"N>W0?-4&IOMI)F[FUX]1*S=-S8S M]$2K. >TME:[R!ZBB@6\,$&&Z".*UEV2CL"JZ$K'NTBS@\9FW+X>C_YY'DZ' M98AY8T&?Q5Y40K9(?R#J:$%IJPAG=J",XLQA0*M6PJN;>YWM].2#MS_;24WC MOF3<1>6D\SC%?Y[3MO7B,WVYM*,C-\8H,J&-U;6@4Z:=RR@-MB@=F"E(N%I[ M).NA/&TKH(5^.FB?L ;68N9L ZRK4,PF4(E+[FK6[#W"E;"W9A%ZX1%8"S\KFX@0O@F5;F-0Q.[VF;.U6SSQXY=K$ M6,F&(W#)-;&=N.F=2^1/V5B,I#&ZUAD;^Z/>^S#T=/Z>Z]<-U^AH$*QAGED! MEA: 1<_EFHF6<_&2!2F4:+U#;H?L"$.U;9EVZ\2TO<*Z\-V:>2B*&2NBYY!X MJ+=<:\4E5SA$J5E4#$/*6S4V^9Y.TADE#Z/L8TDG>3FBW1;?S6A.UH][5?]! M'72UGX7".MDB,%T3>$5!\$(7(+/ ,VU="D4T)N\=<+[]<,5._!AWHZ<./)(- MT!96^#;@.@I;W GL,*&+9FKY D*U[BM_ M4A#7^+2ULL< ME:^4G@?P:;!6"UI'N<\I.>?L=A?C[WC(XU3P'H+L(BB)IZ>U$>XH_Q8F?V!M M:;EPY9:'<5YRB]("*H>@6/ 0="+_#M)"T!,9,/)S(CPS@'*-YE3$P+T3R5?0M8CXDE MK;70P?'GKSC"23@EA"?YC$0]G4U"[1IW$R2Y2]D70B71JUH5DC8V3^X^NN2E M%$Y[T;K ^5; 'A-9VFMB8Q']=BE"B0"?3G05@X_>+$TF1VZXI)2AD?FBZB6 R839(J#71^VWV1_/IR& M#Q\F^&'.V4O3YBJLITKFLAZP>21;1ME8 R98*TD%LFML*"&TOG!]'Z;]=\+Y MY_UR3<+_N";@%U_2Z7FN6_ETBO1??A^^#*Q7 HU!T(+1FISHNWG'H S/X7OZ;\N;U9=JNH#HXM-LCC(O@H,ZW&.A3@61&V*"0XG0NPK+RQ M#DO)K5N0W86GK\.%3CG23."'/@VH'7HOC8A?HDOV1@"'BORW4^^XM9@;]\%^=T&?ZY"63=VW +5+ M^/X^#FP"TF^XOJ&BQEU)N3<*2"W1&6)ZXMZ!DK4H%=I8D_1+X0F%]$VF?[^J MWQ"([UOSNPBW9>A]?$XVS=?!W]\-E*5US$H!.@E+8T(.CA.")+PP)4=3XEVG MO%-,?_DP_OS3XA,O-+SXX4K!5\_KM[U](\&/]Y):ZXCZ"=F?-)+IBR]_?[?P MPXT5/(0<08=@0(E %%4\ S+F@N<:(]_NI.3V9W_3"FL@KL;K[(OSR?C39;2- M^> 2$\0=$QKEZ'C>Q_:>3!YMV&OA)>EL=EEIGU* M267K@]3%"]3(#?,RJ/O#R_<^ON. ,Q/.$JDU8$$!BM>&[#::VA-8%E\$"U%^ M8P'G=<'+N7A?XVR0:[4U+ASY,V3]J& 9^.0$V*"*T<:@3ZW'>Q>>(PPA[\*( MU?!@,]&W3\FY /;G*K#?)\/QY*)\[^OQM6*/@R)%8N$'A-DHP2J&)W79B?6/!C*8V11/WKI(!MHW0 N M=_IGYY-)Q9A*Y!B9!,Q>@S(D&2]SO=N?M<$41 FM.X!L@^N1$*DS5720$W0G MQM?C45K #$4DK(V1@ZO]<%SU+DKF$%GDGJ1BLFU]PKDEM*=$F@MU"LEH87VL2@Y; +*V$S''M36OJ?!-9-_O0HYG #YUUY&N*R2C\8.2YYU;N,7!G%WVTC@0N;I.>C/+*M<-B&!IN$S#O:!OW MBD;-B@81&>,H [-Z)35L0X!OTQ,.8-DV5\:XM21;'P>\6!SC_2/4P]GCP_3M.RGAR M%D8)W\33X86-->WRU/ON)W9^Y+W#@%?.NZ./]8Z'<[Q^0Y,T"<-T9BR8B![9 M_>?==S^[R4VCBR. VF-\W;,NCPR&9_26-^4=O3HMA/-"R MO+=A FYG3H-7< M6Q,97,H.? K,.>.T]ZUC9>W0-[JQ=3>2 8;@K.,,'/,TS0.)R&?R0E!+*=!Q MQ4SKX/-6P/I?90_$NPWWMQJJK8,;6UN!7)S:A0\XL$XBUKI1R&E'4;GF4TF/ MX"R)PD192FYME.\(\3O?.E!E!S[@WE*[R%;@ [)N>-:UOC*+)#,9"@05$N3H M=78RX($HN07V[USM4_F=E!79 MO3QQ> KW&LY_++3=7=W'J@5[/R%9H8 MA';*9^54]*&P5)Q'KDS4+.\9I:"G?X]3?(]3?(]3?(]3?(]3/!:^?8]3',7> M\#U.\3U.\3U.\3U.T7>HMAKGBN;%D MM6/19*;)%7?6!^6"BMHK$4M6V]VG7O_8O?/G;W[LU;PI1G$2H0*97.W/HW$AJQ8$WV?QNA=^ 'W<*VR#EFDIXA?!VNA0 M^,)5Z^SL]4CZVFC[4OWNXCUTP+Y6/_DM_/=X'O3O3(R%[3D(Q0>:6^BB>(22M#!"6^245:VF.,]Z_R. M.IF]J'P7J;;.>W\SPB6:99JVTS*B4_1X*4&II, %*\"4;%4*01>S76FW6Q_= M;\FO1O(>-Q-6'\;:SU\OKVL8K:TE!QJLJPZV\1*<%Q(XT50;]D7$#T^.V-!XN_F[*5JW@ M6Z);W@;? E]?-L<*MJ,Q//;0Z+UT::"./DR059Q2"55BX) R3^2@:5KU/"M@ MT.;"N4G)=5 8[P!TV=T8Z9$MNVBA Y:DZ MM7RZ\>"R8L!8MN1W2V>;LV,3EB,P1/;2VK@#D6\T0]H=N;\[CU/\YWGM[/J9 MONQS=7O31^U[7+X5Q)7#<#(?E6%>L.BD\L4%;E [+:QV)7FA!IL^=,_.UC<_ M]>J<*W%.BXL*D'@-;@5$B*($*,HQJ7G@R;2>:)NP[-V]>S9.?[S%3^>3]#%, M:^_X#Y-P=I$[]7+TRWB2D \T9SPK9X%9X\C81F)Y$0%\J:U4;&+MFU!N@ZO_ M1:8)(VXU\&ZM@@[\G?483\YG'\>36HCOY*RNCWQ GI>.EO;=)&O>4FW/XM$B MH T8M5*QE-:GX5M">]1DV4\1'=@H*V-?)+79Q(72Q%SC(V'" K24*Y#L=11M'8Z^$B6ZT?^^@CUTDL2F@2QCB0F)G9HI*)P&I"1W$'3T(*35WAE# M7YNO(.NA'"I>LK^*[^',0T3=PQIQ%3CR6& M,TG&I,A]*QI!Y=J\0*8$(@A&NUNRPF[5D^MX"7%/X*-?/NPB[NYYL.PF)FG' MM+1G>ID5*"85.!H[,.ZUT;IDGEOGWJX%% ?O5O@H\$0+F,@^TVB M9?'T(4X7/3U.XG1^7:#Q)+GC0?L'/,D@S;$YO4_U^[6V)D1YMY!V MG:6+E^N72)[FO_W+_P502P,$% @ ]X#Z5)]!RR0 M)YRO/GDB*S-O9G;WZ5MQ0X&GK2E9])"4*]V__@)\2+(E40 %TJRY'1U5+IOD M7GN!7'AM[/UO__/[W0H\R*);.[FNP.M"TDH*\-NRN@5_$[+\%:@BOP-_RXM? MEP\4PO^H;WJ=WS\6RYO;"H1!&#[_:_&G*$XD2QB%',<28BE22)$*H*"<)$D0 M<$[(U=G M<8&35YC_@MUET/Q*$P(C],?OI?C#?_P/ !HZBGPEOT@%S+__\N7]29/D)W/% M3VMY8UKVLRR6N?A:T:+Z0)E<:?3UTZK'>_GO?RB7=_ZA"K!W"UNQ]]8>SC]*,WN-^T/LCQ >^9N1AR M\T*]78NIWMVMJ8NACX_8UVN15W0UP6NQ,[,'>65^\4'_U)HQ#^H1T]I.*]U[ M4.7W2JZ%;-3RR:/!4OS['_1/BTT);RB]7[Q?<]WEE?*-;/[]?OVUROFOM_E* MZ/?V[7]MEM7CEWRU>I<7O]%"+%*>A42D"HI(8H@Y49 HGD"691$A49I2%B]T MS\OR]J5?R#7\R]<.7PWB(@1_<&!F'\=3A@I9YIN"[WK'N]6Q+D_W=J9_S'Y: MTSM9WM/V!NV&&4@TGOU'YP#XH7/A1[!<@WTO_@4T?H!?C">@=>7__;>?=J3X M;ZK52]._^MWQGO,G:%=F.),7S]G+^:7L[=2CU([7U"E:LMKW]M$_F9'E3W)5 ME=UOH/E-+2%#K?]T\))=%YW'M.!GVK2]XB>>ZU'??06?-*\9)7NAILJ]O)]- M VK(?P!YH:_4LX C[A]\8Q]D64KYZ5X6>AR[OOE@+'Y84K9<:3.?Z:.9))1O M-G+!8H*PXBD462P@%HA#&DC)?'Z$ M=3<&U*;:%!+<+=?+N\T=6-6?Y7V+VDWEK%L@8(2$B""89%SW1$+/MB@)8ZC2 M+,BB.,1IG"VJ[>#K95K@Q!#SOT<+V'4P8_ ZA-7JCQU(]9F)^T_7,EXWG$XWS^LQS"K(6*SDI_4:UK>7J^%^9?I MEA[HRECX1ME*?M,C\E?:N5\7H42)5%$$L1()Q$P02,.(PE2DC @4DY@+M_&S M&X#Y#9^_;N[N:/$(<@6X1@[H6C0_R)T/;@+FV"1V,C8>S2.+60?<$/RZ([C^ M80\]^*7&#XP#H/; XR!Y&'6>Q,W1^*02-XR8YT(W\"G#Y.YP./ZINI7%1^WP MIBBTN4YBE[)<(*:'PU*/CZD06O%0&D"BB(010[$*PT"/H/&EBP6GS<]/ZFJL M8)6O;Z >&>I1V@[LI4L!/:TP=!W #[,OLPC0,+T##SY84.UA]G^>L]&F_CVF M7WC>?YZ4\Y-^BV<,$[0W4DG]2*%-YG?R&_U^K8>-5?E15HN(D2BCG,$H4@'$ MD6(PBQ.J-4S(,,EPQ%3D,L,\;6IN<\H.*:CH=T!KE&X"U<.JG1SYX6ID\=G2 MU* $&B9H<%X!C=2?T)QGPY.L]!B:5$3.._Q<,BSN+M^M*3Q:OA=!O M3?DY+RNZ^G^6]Z]S(1=8)#SE%$,51@QB$2&HM2* BB1QP&*12*%LQ*'?S-R$ MH4$*6JA7H $+-%I@X-J)Q!EF^P7"'U\CB\-0JJS%P8Z)(\)02O['F_SA)_V M1A/T#SLI.//8263 SK5. BRO'C8^^%RTPE)O.WR]I=K ITUE8E],.-$BBAE% M^F.'J0HHQ'& 8<:T#N X$SC!B 6QXX;H&8OSF]9L 8/2(+X"98T9Y#O0X <] M*&]^_:/;2.(<_W;#"8^6G_C"DM:/ TNSEF;=(1AZ?KS M88;M;4/%)K^71?7X6;\2U?5:F%6<>[-0_>R""%*F 2XD )R"1! MD',.B\?]!N>A%3=F"OP(V!ZRHLO5S;ZHHO_D:7E0:H'H<8 MJ#5_;W?\_;F7OP&Z8D.+-UGI-3:QJM@X?B@J5G<-7K%M)D1OEB5?Y>6FD->L MK K*JT40I3$+)(4!B@G$7(0PDPF&6$JEAS6A(EI0'%8X>FS-;2:S-V7?@06_ M='#=8[-.DFR]_NJ#NO&76X>Q-F1M]1P?_I923UJ:>N7TG,M'%DK/WC)4-AZT M .7%XT=9;5]EE*9(4LD@B54,<1I&,(L)AU&(PB1-TB@1C@.08V;F-^S8VZ-> M=H"OP+IGB<^>4UMYN(RGT75ARXH&.)(@G&; FQ(<,3&Q!)QV\O#;[[EVV$?_ MK:#K4L]O2CT(^2J+AR77!0;;M+-Z>K[HEZ'>D5+ M*5[G=_=R7=:G,*\+#>]&&ANO'G>7M+&/UR9<_N/FCLGBD_JDM!<:>W/JJUQ( MK=E2* P)TJ,]G#(],>1I B.1<<(P)S)+;;1[%'1S$^\&IAD%M0?M0AHG(J(0T0R!'&,],1)A"%4$8MB&:@XB)7;*LO^X^>WNK*/ MKMZ8H'=Y42W_4?_"->YLCT>[NE$'<(M=U>@\Z\T ?8-"1[/" UFV=V4=LQF&EEG#TZ*;YNLA0\Z_, X< 5:%_P)Z%#R M/,FGL_E)Q7,H.<^E<_!SA@GGM1!+H\1T9?(,O%^_IO?+BJYT1WZ7-VE0%@(+ M%A,>08+C%&(6IEHE>0H3S%%,2"@#XGC$\KS1^+?]9FL6P1:223%*<0292/;TEB18A MD5(8A3%7)",9%RZ[10,@S&W$5CL!C1=@YP;8^0&NCR1A<-I6&-).5EM"([,_ M^H1W /'@E\8/RT"+"UK :?=FY):8;(O&YZ?@NO5R 8=G]E>&/'G*390+/'^V M4W+)DX8-?+_(![G>R"_2!$8T*Q0J+^Y,NNE/;+6\J5_9M]_O)3>95)=W==3% M5_W;4E%N_E;G/%E@E01)G#(8L#36@^- 0<((ABI2*2&(LRAS6D?P VMN?57K MU178^@7V' ,[S\P28.,;:)PS(0_[[K59A!SCU3PUMMW ?/HF'+G#F[#UG(?Y M?LGV-!7P!&K2Z8)?(I]/*3P_?9CD?Y15((>JB9A?UNC;XIPAY"!.FIUY8D01F M@> PYB054O^-R\"ELQM.V10A=UXH$T@B)%D 11)F$(=(SUL3E$&>)0&/6!0F M)');/!M,VC3K9'YHL^MI!U,Q_KL23NEHVX][UN.7S1P.7Q=+<5RM:F6#WM3D+??^6HCI'BG 9HM M[DTSH?VDWM+"]&:E[L[JO!:WYB\3FO]&>PI*O5(^C<:V,SKL!OS[@\"9)<]N@N)VNJ73B7%\IQDZV?A/YMM!/W3KA1UH_^Z5;8F6NG/+G[]NY^ ME3]*^:T.]*SO:N)XW^6K5?Z;6<;5[\ZM2:)-*_DM_R*Y- .])LIWP_Y3\DK_ M=EG^^DF]RPLEEZ: T,)$C"D'@>HMIT"8"-\J!T7C;)=ELVS8J3JB.] MB39]U;P@SZF/O/Q<[/;MW".I/?8!MC2!CB=@B +?SD\* MO/OO\'9.<0S[Y=_2W\\I[I=\6RHPLP;5YS>LX*?V? MX'4AQ;("9J=23Y,;1SQNB5@1YFNOH]_8M)L85HX?[$[8W35,8YJRT48M\[5^ M6IOK#D5I$%.%H4 40XP"$PY"8LAH(M(T19@C[K+I<-3*[":A38'T+/ M,VHG)1?S-+*"N%/D+ Z]%'C2A.,V)I6"7C>?*T#_Q=[V&]M75:F(XI +F 2) MU..*U'S\*H(X3ED:DCB*,J=RXB0NL?HBDS@)TQ!#R8U$2*'TU$.: MI)@R12$AC"2)2U#R24M.$C%!@/(W8V-0' M;02/\X=S5/B:.IRT,^VLX9R[!Q.&LS<,'#*8U0YV?G6%/5]=J?_Q5UF:?!%? M3+1DV6:%H#=R$4LX6!FE82T'.B_=7'/8?^K/.]8T=NLJ^-(V]N?SC>T^TAJS M,7R-TD;!..T(;TR:#T:'HQH;6-U/?R(?]4=3!V*R@,1#>$8=]E=?; M?_2TQ?2..'50.N_8-<,^S]?YNJZA\[=E=?MZ4U;YG2SJ0:6I6H^24#">9%!/ M^&*(,>:0A*829T0QC57,X\@IE4"?L;E]OAU6\)L&"WB+]JJ9$+I]R[TO_)GS+8T.5)*7I-3:H<-DX_5Q*K>P9$>)K\ M*,]RI%ROQ;%D*HN0ISR)1 !3&09:9+329(Q1R +*,DI5EN#,9H')T>X\EYNX MQGY5_[,N]-NZ<%4GB+_;)1(JMVXX1),YM$F_*(W(]-CZ5-/[/._259V-Z6B> MIG'H=8BC&X?FB4+<_-'M%FWF3EIO()C#XZ:+T7+W\4GXU(#;?>3!_M!E86Y# M&K[J5[">F>X5"?N;#LJP6B6X6E7 .HT0*B%-ADKZF*8SC M2+! QB$E3I45?0&;V\!UEY5YU61EWF:^UAU+X]P5*#OWZLCY;<6_^];#2S)C M7]#$=F/AEVBXD?NE@TS:'W9M]KIKLZ_[;;:KTM@Y!W[9N0?>KK6^%[6\>YQP M^V9^E#3<%\!ZP?3#ONET@\S(XO> M 2GGS[-:*]9Y OJT1]^]ISOZOW::T_/@2=3CO&.=#EA<.3".M V@;VJ_RN.! M^!_SM=FRE,W60EG/;O?__CHOJX]Y]7=9?9$\OUDO_R'%[DG-39^J6UE\NZ7K MMC3+ @L3F*924QF.0RR,A"@:0YEE..-))'$:.\6JOI0G<].GOZR++78]-LSY MK[#>(P)\?QM3?C<_.VXXO]S;8C>:_%V\ Q-N7&\WI'>[AE=@Z__VY%F=,,<, M6!MO3,V$LM+75>!15F#'@O\L2R_>8+XBDU_,CVFCGU^ZN0XBK%\UMXD\*$;[&7EN&^JS MB\9V8&/PIOHH8=?/'OXB&^O] =8GKAKVR7Z092GEB8EXV]&6309J8J@GEZ8K'+ 9%T\J\O#WS9*XQ$P+OG3IL[*.7%@$4N!,"0%YH$S=U$C" M+#:I,\,LD"11*,[<@LI[C,U-"Y]L"=3[K#5<\$L'V/4H6Q_1=O+GB[ZQI[S# MF1M0YOD\)=X*.O>8FKAT\WFG#XLT6]SC)B%"+A=OUY46J&LA] M4UC8^%9^+ M_&&I'5E0G&":!A*J-(P@9HI#*A()"8E#BA(F2(QLY..@ VRG'67[[5<,G:V-O5PPFS%HP;-DX(A:EY'^\R1]^TH]H=$+_L).'LP^> M1!ILW>MDP?KZ8:.*[:FY]^O[355^D ]RA=KM-1ZD")N@1(6X@C@)"608(YB0 M+%5IBE& G2*?>VS-31AJ; "Y#1SZN+0;-WAB:&01V!UWO0(-4#TE:@CSN'OI MP(FG<4.?I4F'#18N/Q\UV-QRX4ZGV1%KW^8D" .,$(.(113JH0.#) TXC -$ M<) P11%Q2\5UQ(K+&S]-_JUMJL$:Y2ZGH%DO&[@AN$>JXU;=,*+&'A\\9I"[(DX?I9Z3?*/? MFTR!^O>%6?QX(YM_;Z?(/(S20" %98 3B G%,!-2PB )XC1)8L6Q[ FM93\PK^OU/CK&HES>BG1A-VS C:U?3(D^\ M>5HN[@I\;%I$>S7*&HD_.GT%E5X.:-IP4F\$'@22^GORD)-DITZH;6NSYJ_D MJ^5J)<7>TK-9=&Z/L"]"*E2"10)3D2"(<:I%.0T(E%)RQ&*",V*UE>8'SMRF M>[WG7*_JF*^Z?'*SV\-JST"QO]WSJ)W;)B1Q.3!U<*K.%R-/#]MY>^K ['XF'FU;#4^D),0R0B8+5VH.7"M(TYC#3 5)Q'B& MA I=UC:?/'UNW5N34&EP1<&GS-G-# ;S,7+W84^%>YJ^8R[[2LWWY-G3IN,[ MYM9!"KZC%PW[4/_6%AB^;NH+?]R898U/JJD]\&E3E15=FZCK5[1<\NV$E4HJ M$L81%%EJ4GCS"%*:F/Q*,A AYQG&CA7=!^&8WT+#&[G.ZQH/>>&XC#"L(>ST M871R1]:1#C]H'0"-!V8JT%:4V7/B"M1NC+)FPBFIZKW64/ M&Z:*'V5EPD'J;5\AQ:O'OY12O%]O ]&N>;5\:#)KQ"SE+$@%C 2+( YHIN?Z MDD,F0R)4%(:9B%RR%=N;=AKX3)!/QJS7U7ED[EOL)O-DO@WGI%O@;L+HT!9V M:C@.PR-+H"&W#AK[O$?N#P8Y6*Y_W(N:O3Y/L[/LN3/F2>L<#$\J<.Z$/%>U M 4\8L)3Y?JUG/+*LKM>B7E-MEE'?-JY$(P*AJ2"*"($XDR9$_+$ MY#JA41PD::JDM,Z)96UV;A+6I,1:MO#K'%AYO5'1;1:U!U*;_2*'Y2S[AK!8 M81R%WI'UJ\-<9V)J-G^Z[9ZW6T[WL8]"KL.:X"@D3[3VYX]LM]4]9\YZ5_'L MGS;=:IVSAT]6Y=SO'B,#UH)FH>(!5U @8K*AH #25 L^SY((J3B*)";^\EK- M;7WN6;8JQ]'H&6K3D'%!TPPRG&AJ,\8@54$$8XPPB6FB^U+7< QOY$Y6-K'8 MZ%%IEP-,CV [-* @?N\J!,[Z)E[/F8[6$94>.-V[&B)\]FZILJYY3OHH=_8 MC/)CG0Q6L+MKF)*_D:S:)4:\?J#+E4-]KVDM5> =O"AR@M84M=J MKDXM82<_8_$[LAC5U'[=H_;Z";4&._BE1@\,?%#C][@(.X0V3VKE9'I2[1I" MRG,E&_2, :L2UV& 4CW<_:\-72W54HHGD;5=H+>)\VZ#M4D:)23F%*:)V6Z2 MA$%"L]3\)&2F$B%C81U/Y6I];LIFX(-]_.#R2/EAS6*Q5#$FV2/+G!O/YZ/O M/1#NL'PQ)O$3K6)X>M'=EC"&\M:[DN'\T.D6-(;Z^V1=8_!#+C@V\6$WOUQ( M&0K!<0R1BC*3D,$D>C6E8V0F,X05P\@I,]5S W/K IHEO3V TXL[/-G.5N^ M@)6QY\?6A P[)G#$:Y]!__N/GSZ$_XAS1P/RCUTW;/07HL^RT'.%.U.3YQLM M;F15=L>@J4*2Z;%=+!B%.-6?,HNIA-R<@L:,Z7&?U3'H\Z;F]E$;K& /+&C1 MN@TH>JBU&Z[Y(6STL=EQK@:.PGI(Y85//$R8= M(YWWY/F R.*.@:FI^*T4FY5L,M9$W'BE$["RNK<)+4#OJ7/-66;6"W<#*.[:!.4CW9A8L%FFB)0=J89<0/.O%YMZ61[Y<' 69(N_ MN0(8#\8*AK"G;I3P" OS+Q@P84].?PB%PW,&SJ".%F#8*S_RZG%W29MEN#YS M]V&YEN\K>5=J?4P21$(&)4XCDRP]@%D2(QB&.,,B12Q63LG2+XPYUJW5Y/G?(N] M&MIB[O,^;R3[FA1>#FC:&:,W @^FD_Z>[%[K<9N[^<\RORGH_>V2TU5]:CZ- M8FKJMD%.F)YU"H(A2\,,\DA(JE*>HL1J]-IK96Z"NX_/*?- /Y?]0NB-H9&U MS84[S/L2X,FBOP6XNZWI\J9%7D:ED!OJ++.T?9.T.^G<1YX'*R2C5K M8>9SAK>Z-+N1M!8^Z/"#UH$KT"7?K-<_.W\\U@>TXLU7O MH-U=0XO:Z(G>7;ZN SL/4K L A&A."4^7'O\\CBP]EU(XH/"-#3,7E+_I??S$ M17!L7#TLA6-UUX4%<7[6_<>FJ">/Y?:7_VLI"_W(V\>VABX/>42S+(9T3@> M68@NHW=XW1T7FGQ7XK&R_3*U>5QH.5FMQ^DA@V=I][*H'LU9%Y/FPX16W1N# MN[/!69@0&88)C$-J%J=% K,@89#B(*8R-C7 L-O2U'FC\UN*^KJYNZ/%HYFF MW;?PZ\]+=M@=,BPYD&\]4_-(Z,A*U8&]JH_!-4FKMH!'/8AM3Y._R=DY@U-/ MT"P).#))L[USF!"9A:BU;KZEW)YD8%@Q/8"")(OTW(QA##.>9C!($8\ER1*> M4Z MC#AE;'[#ARU64#9K!&6S1K"L\8(?ENOV-S^Z#B%.$FX[=/!!XNA#AHZ]IRLL M#5"? X1S9'@;&)PT-/& X)S#AP.!LW>XK]2^:0\0FAH!NM_/N(@DAX0A:D*Y M=;^/M5IPB2,L%(V9M%HU>?[@N77W';:ZWH3]&NL3KLZOI@YE8.0OVLYYI]71 M8YX.6@=]\J#)5CR/P=]?VSSZ]V&]]&N#QM3;,<%O7Y;EKZ_DFM_JZ>VO[5*9 M3'C&2!K!.$YU7QT%$:2A8)"G1/]")!'"FC_NQ M=X:]T^Z^6SR,/%_[Q8[6I]TQ'D;-P9[QP,<,G4"6U2?U13[(]68W:J"IC$26 M!3!*$ZUY/$K-&08&992*.$LR(4CJ-H0[:F=^H[4N?K=H@#H64CQ.INUT\$*" M1I\#-LRT"$<94?5RX&VV=\S&Q%.\'CS(5X9A%,21QPMJCBSR*(,L2*106*HF4[='%DU;F-I+I0LO-Y*%%ZCA8Z2>U M_^/W1M7X4RUWEIP.,YYEX8+#C*>?/=EAQK/N[1]F/'_QT CZK[=RM3+GI>GZ M<1&S+*(Q%9!2%D*AO>74,$+4;7I'KQI:>J?9F&V*M'VC MW]LZ;:_D6JIEM3 I-#.I>VHDPUCWU(&$A&<(QDD2J("E"4E#MVH[O?;F]BEW M<+O2F!7][AIG=8YANS&[1][&WJ3M*&N+,6JLH 4+?FCAGHY7&5 GQXH8;Z5Q M^JU-7 W'RO7# CAVMPT-R6R.27;')=^OVUIY^ZD?N20J3KF$,DDS$Z5)($VE MA!0S03CGDA,/(48=[?>E/IW?MPL8BC11/,5-0"1YH\3'Y S*N M92B481BE092%R:7B\\SF_)1GVTNWRX^7RLYSDH=JS@7$O8S@;(G\94S=Z"H1KLN"3,$BIGAM!(906$Q$*F'&20!2KF 21 M2JE;O>GC9N8V03H2KS6HTL )4FTW-"ZE:O0=#6>6+@]E&Z-2P DC+QNVUEL+ MX,S5 Y/_R[*4\D1-Y"X)R9N-_"B_5]]^DZL'^7.^KF[+1884DAGF,*99TBR$ M4DX%3)(8QR23<9PF+B(Q%,C<9$2_:)%C)8&A36 G*5,0.[+H-"Y<@;ZRZE4. MF 2?Z5)<@;]+6H!/:X\CF$M)]%7]8"B,:4LE7$C605V%2Y\W.-R-KOF2KMZO MRZJH#Q^TV6I1S--,FF V/3SBC$ 21C$,5(@05@1A[K20?,+.W(1M"Q/L<#KE MK3W'JYV<>6!K9+4:0M20D+(^&OR%CAVU,G6(6)^K1T+!>B\?)@;?)+]=YZO\ MYK'=76Y/FDM)*=?_KG+!Q2_'9PP_Z.L MNETI4TKRFM\NY4-]QWZ92=U8Y6V^$OIW9FJW$!S%.#7K+4))B)'0/U$]TH@H M83&3>F216*G)"V"?FT*9',_M5K<>.#;9!?0LH?8(T)U+YJ_;BJI5Y]25^;5Q MRZ$P[<3O2K]HSOP-&%F(K4JCO.HIC5*?A&KW_:_:0KM@CX:G=7AW;\WGN;\U M#O61Y_OV3%1P>;9OD5MAYY=IQ]Y*T1-#FJ[T],MP_:26]0M!&%C:;<-*^5\; M_:"W)A-3.Q](413@)#89DM( 8DQ#2&B$(!%*3[4"Q)E;ZK.C5N8V8-F!!#5* MQQ)J1XFTFUA=3,_8O?DS9D:85/52X*L,V5$;TU86ZW/SH%A8[\6#=YSKLSA_ M6U:WKS=EI=6FJ(_I7:^WD3./];[6+@=H&"5*Q 1!+E0*<9AB2&(6014&@B@4 M"91:';&Y ,/^W<0-9;VV/2/OZ^=XT> M_*;A@P[_%=C^OG9E[[_WMJ;, : ODLOE0YW;=0[&]?W1G!U)ON0RDZ MLB,_^%'#L\3ID=0>TIDOXIYH6=DC7)F9E!^N:/>7Y1H[ND3)\\X M=]2A8ZGGCE_HM::UF8=]T]TXOY6?UMWVB&YXA)(T@BS4_\ B3F 6IP1&:18K M+# EE'HH7GW,]MP^_O;-[HOMN)ANRTG3."1.N#"Z7:K:'S>VV W#8TRSW$D; MMP;T4?>1_@L:E@G5UFJI;:_T;.2=;5(HA#Q0":0*).[7J(, MDA3%D 9(,:Y4G,:1BV)9VIV;6K6PP'U>U.O&IVH<^BAN>-@(=CHV K4C:]CI MPH8MUK%+&9XD9]2:AH=69U#<\"05=E4.3]\^8*^^/8#UKI#+FUNM05PF<2PD M)(+$6H/"!#+.$,1QJ*(@R11)K$9-1YX]-YUI83GL.C[CRF(O>3@#(\M!=T[R M8A(W;+=#MQQ[$^V2D[<,"01)CDRR*AY I2F I,I#!#O,5V**&*B]@2;<+I(Y1Q3;\VXV(/+,Z]J)//Z%?;0@=D*K"FB)O MZ2K.6YPX984U!8=I*^QO'29&3>;+12)#IC!54)%00!S2&&8ACV%L.//_ZGOUUV ?VEA;KY?JF_"R+>O5EF[<_Q@V#?[5>8,,$:)N9!T=S-J0)%;G^/"7ONJDI:D35YUS M^4C*JK.W#-G;"0-$3&&CZO%]G05G^2#K#6Y3]*CKZ4(2,BHYQ"A+]3^2!&8! MYC )XB!4H1!Q;#_$LC X-P$QB$$#&6PQ-P>1ZF)?+CLC%G3;[!GY)7%D*3G' MWY"1F=5[Z[#OY)?0B49JEQ/KN$UESU+_WI7%;#S*? M=B$H HDH3+B$,1&1V7EGD(91!E60DDC&44H%=DM0>M*6RWO_.TF)?)I7RD@: M,Y[!-*21R3H=0!(',8Q"H6(:9$+_WFEAWP>K$Z[UC\>LY5Z #[[&WAXXS!\] M0H34629\[2.X#5^?!?*6YXZYOOIWEQ9OOTN"[XL9?E^ MW015_ZV.@I#B6JLCO9'=WS\72RX7)*8L3I6$#,49Q"2CD"(]U XC+/3H.I2) MV[Q\6OAS&ZEW6"%MP +9H@7W!NY^PI*RROFO(&^#0U7H","M$QLKP(U%Z,' M]X_#Q@+_!R.&(S<,):G%,9&,:Q[_2BKU[2\_5SD#TLAQ:O'OY2FS$R; M6W!]<\WU-*JI28(3%%"<2*BB6$((_<'@UR+_8]@ M"QYR^& )PQ>GCAM:FXC\!U2T$&UB<%Q)=AZ-<$# M;>,O)PQA;,B"PADR_*THG#(T]9+"&8>/K"FE/=YL7R'WJ@=6?LHD6" Y9)GL*()P)BCB6D:8P@4R1&2:B"C#K5?K"T M.S<1J6HO;C'L,\"M M] !K;$[3M$MV\%R;NV?W;$GQ36Q.\C@:>EU6DGC&Y4',ST'&^_0*Q,)D+]I3?;6Q_S:AHFET6-';"F]K+C&L]Y MUNT$QBN3(VM,AQ5VU(V[4VM-C:]S(6?M37M Q-;]@Y,BUC=>$@[](2_+=QJT M22FX7&_TW*ZM=Y6ORU=2Y87<%CF7Y=OO6NFTC>6:%H_O*WE7?M0DF&2$^4I; MNGF_UF,,65:++&.29@F#B":TJ>1)8BU5,A%29DF&0N04)S(BUKDM9K>!Q:SV MISO:5AF/A@1BC]2\B*5IIF??81(KB..(04JR!$:91*E"1'=$3OD$YM*\TT7; MS[IY[;J\F33:R)UEVUX_&#]_!$;>PQ@>NO;Q>UGWN*ZJ8LDV59VV MO,K!9UIG-9QF)62R59"YK("XKWYX6OGX7,A[NA1OOYN)O;Q>BT_5;9O/?+?V MH4)!,9$PB",$<<#UA$(/0F%$HABA),J4Y&YB8F%U?JK2@@:R05W6*R"Y 0YX MF_-S2#X:FQ:P$QO/K(ZL.AV=+=R:S1IP4U5AC-40!X*\9?4\;W'BC)[6%!QF M\[2_U4^"G5VU$95F"F'.81PEF0E:P9 Q%$*6(8QE1%*9AH[+KZ=LS4]X=O7D MZN0QKYLT.S7JR[+LN%9S\<+9V NL1_+LC%)UY2P9(Z7:>:$**F?=/9=LY])J M*&51+7ZF_YD77=&5LLYK$.* "1YE,%6<0,P2/3B)]'0G)7$@,XJRF%LMAQU_ M_-Q6L#IP3NDA3C#7_\U?SL?('[HM%=8?=K_'?5^SOG/O2];_M?N*3SQTDD^W MWZ'N>SUSU<#$N-M*9)_4\#, N_Z)\"S, LZ@1#0QQ2$))&&(H> Q#B1A">%. M@1V>\Y"I>"0S0XL%W]^O:E-T]8JN M3#GBK[=25CN4Y4XI$ U#GO($(EXG8C6YCR,4P)3%H0@R)% 6."Y[.YB?W\RQ M10QJR."-K.ARY;@\Y<2_Y:+X2)R.O4R^!QL\8W:'?*39YA#.O)4P=C ]<65C M=U(."QX/>,9 *>.W4FQ66E:-F.9K(Y^?U';?L%U8>]7$TCTKMXLSR<. 4"A# M*2!.10"S%!.8A2IE 8E1H)7-);)Y.):Y#78[5\S@:'A,QR6-8RE[TU ^M@KN ML;WSP_S7+OIBNZ;_0^O-CZ,..3T0ZTLJ+T RK7)>3MF!D'IXY-1I<9J1JK9Z MO:XSHWW4+_Z;_(XNUPNL4DYCAJ"@@D.,PP@2%8001Y@A242:I&['W48 .3MYDC):T5.<7;I^19=NE:29, G.>NQ=/]=(#\7>2T.4\R?[2 MMEC8NNR(SE=9/"S-&/T8PH_Y^D&6)CN,@5'6B0/W_V[RFW_,J[_+ZHOD^-I/"3 ,>=E)HHL:WW V?;9../04X5T]\ZW27K*PNVZ#=!(^R CM'K]I\ M94#E!=ASUO_YIVG;R/-AJHG O\C)K&D;YM0QKXE1#.L!C?2O M?)\PNR][( TC?\T- Y_[&7#^?(_XZNF3W7_RI)_I$9>>?YK'+KET1V3"6,P0R&'.&)I2K(TI-CIT*ZMX;EUVON[!\W1 MB56^OH':]-V@PQ/6#>"Z1>./U@GW8YX>G]CAGFCWQ8XS[ULM9\R^T+Z*'1FG M-U$L[W?3+2&7B[?K:ED]?I$W2W. ;%V9%;J%BE6J8DZ@4#2$6.DY!,,4P2B@ ME*0<81I8S2%.&9B;#C48P0XD,"CMM.+0=O'\Q2_*Z3$X$* M$Y00&&>)GA%PH><&08QA@@.2XB3,4AHYC3).69K;Y[P#"FJDKB%NIPBU'#7X MH&GL8<(SAL:+4SO#A;>@M%-V)HY .^/N8;C9N1N&]NC70N@7IGRM?_Q4?,M_ M6R]BF1(E,8(J"S*(0QG"+ DEQ)C0 "<904BX=>H'-N8F!&T/UN*\ @:IYA$8 MK*Z]^R&AMAW\131-T\>[,32@IS_)P06=_>$S)^[O3SIUV.6?OG18K]^FFUG? MM(%4NWSS(4U(F&091$FD/^Y$8IBE402C+.4D"+(HY,@MZ/VD+9?W>)H(]RW4 M;5H&QQ0OIWFUZ_R]<#7R-[\CJ0,Y2AZ7LU1XZOM/VYFT[S_K[O.^__P-0_- MM86W/ZFVD@A=?<[+>M-Q^S931)0B*H9"3^BU2L0A)$A/$"A1&4\CI"AS"FBQ M,3JWT<&N8'RNP!8UZ&!?D";;H@$LYQ*>:1U[6G$YHP/21=E3Y"UQE(7)B5-( MV9-PF$S*X=ZATY&W=[*XT5KWYR+_K;HUNZ%T_;B(0Z(G'BF#2C .L<0F-S_- M8"(2FE 5BX0[3DF.VIF;\+2#[@XK:,""%JWKQ.0XM;:3DXL)FV:"XLK5@"E* M+Q,73%../W?BJ4JOB& =(&QRD A..,,I MAIR&RA05PI &*H))3)#*,LY08J4']B;G)@T=8M!"WH^D;./U'5*].%!O-Q[Q M2^C(TG$QE^[9#JSI\97 X+S!:7,26!-PD&; _L[!\9)W^;K.G/F9%I^*>M@C M_DI7&]GEI%H$,LTPB@,88L3,K$A 2I6"@9XMI2D.0Q4Z)@RPL#J_590VI5Q= M=_P*W-,"/!C 7DJ/VS2#G19YIG9D,>K2]#6<:L!FE;6!#&K,NPQU7N,Q;2GR M%YMYUN+4<9JV%!R)V;2^=6C=#[/KDQ>/7^AO/^N'%WKJ57Z4>B;V19:R>)#E M(N"$:%E2,#)!W#C..*2()Y 1D5&5$)ZDCJF[SQN=GR)IJ."NP^I:G>$LQW9Z MXY>WD>5F"_8*&.ZV>*^ 21^:*]!A]EG_P)8?;V4,SAJ M1*Y'2.RMSVU&M@>^3DK]!/Y>JI_!R\5N;6,_-AJ%\0E&2;[('C1:#C0 MXRD4<^HB;KW6YB9F!FP[W?A94H.U;A(WP>KGUTZ@O+$VLB#M$39^5C""BU-7Q_O6+Y:8!1$"4LDU".>R%203DT&B!2& M<<"#* JH$%:)A@^>/#=A:,&!!IW]%M13NLYO.@TF8>3OW-)_IVVEH[X.VDAZ M^J3)MHZ..K"_673\@J%[Q.^6*_EQ4Y^Z%HP@G"JL:4 !Q)PGD,@@A2),=0<= M$ZR(=-L8WCU\;I]>N\-I ((&H>L.\!YQMMN^P^B89J_7AHD!^[N'+E^PJ;OW ML(EW<@_=.-R^/7+-L*'TSYOUDB_OZ/BHB4F'P7U./A_]]EX[=(EP74^^_[:L;KO:'UVA\\?=F=.%HBF6 MB"$3LZ6_>:),)DRE(,F$"M,X45FB7/=(K2S/;U?BP_:P^GU>U &.N0*BBSHH MFIULU\5 NU80*4THP02RF(00!XA!%F *&8TC1J6>J 1.&CQ"&TP:+M.2?=75 M7AR'==O%5^]^G#_"YX.I$E+>E5CNK$R^R.E%Q MN+SJ=ONP+L)L1NF;;J_7XHW^WE9YGR[CQA; ]I=S#)G]18 M,>))8/IM32HK5FX_%Q.[FP;F[7V67B]2@8JD,L&^F1$-D4'*1015&*"42A() MZ2@:%Z3@FT8FOLFR&IJE<%AVPOEF)1PS&>&X20A?-/F@9=)!/\D&.5U];U* MLYX4X.QQ=\E^!O#/^E6YU;_\7"RYS-5>3-TGIJ&7[16I^[36RYGW=*ZMY MJF+CKF C.RS8> 4ZKT'M=EM[9R^\>/LV?)[?VR!ROJGK:YD'_X[>BB>X_W_Q M=ECWN-,V5M.!&YMUKQRD0=,S3X1BDHY^6D:[<"/4]G?57LA:.3>=0 W3B7A>_V_H"K\\>=.5AB^UZW]VO#]%PY<%-#Z MP*OE@]R6A_M"*]D$B6ZT;K294O)UN4!)K&(B0Q@J'$*<4@59E$G(<1HQ'M$P M$DXGA.U-STT$MLA->4N@03KN-#F0;KG*, J58R] ;%GNKQU=RS6_O M:/%KW9'B((@IDA$4&680"STFH2I+H&"*9:%(TY"X[L_V&IR;.CW!"PQ@L,4[ M*(7!6<:M]V:]\3C^INQ@"H=LQ5KQXF\/MM_Z,F[:6YR8[ M/^=K^0@,_[(":K,6CD%Z]I1;RLT81(ZM.QIL<_C._+ '^PHA[D89<Q78:HZ:'/ M32H['Z[T_-%X >C.#;.+U/D!JLZ1*_/KWCG02[\=MCM-'=M7V+TQ#0=@CP2PQP+XMGMCSLV:7_J-<=V-FN.;,^G.U.S>H &[5%,W MXOD=J\D03;Q[-373ASM9DR,8F@F*%U+C>".;?[]?7W.>;_1P30,SU=H6(HBQ M_K^ )(M2B%&*81;S%(8R"U% 0Q1%W#41U!F;\XN=ZP""^P:A:RJHJ\ M$C=RO]]A!3]T:'\$2ZW9'9&?SQ Y( V4)3G>LD"=LS=Q$BA+]P]S0-G>Z*=. MF&LF^A.WS^A5/U+4:HQ\\V>(&*FBU0OEE3_C[+EZ5IXR^APLM+:=+KV1:$$E MD5@P 54B)<2Q2B -!-+]9!)$!%.TTHX^URS=5CM QUH;*OJF7W4PYXO39C91C]PSL]H9. IK\ M"9_4M1!U*0RZJJ\KKS?5;5XL_R'%@B5IJ*@T*1)Q:NKH99!%H83*I W*(MU( MW*V(SGA8YR9<#6(3IT6WF)M\TB6@6]1UQNGFMXYIIL=L=LL!TSP:_8T: M+-6CGN45&[I:L$PI*1"%220C[Y6M*CLNI3C MQEP$Y+G)$7>DZ*I>_*5:,>3-3M;8'5I%UT++0!T!\?9[ MI8DR758#&W2X00O<7Z_43XRG#N6$D4G[@GY'G\OXF:L'+[8WT:&["(A=_MH4 M*YQF 87*5*+# :>01'J,CYA41&&J&'4NN'#:W/R6V'=QT*X9SGIIM5Y9]T+5 M^(OJ7:SX?D[R49("VU#B;RG]M*FI5]'/.GUD ?W\/0,"G'Y>"K&2;VE97:_% MM2J6G+;9%T@D,B2%A$'"]9#"5-*E"6(PC#*,0I(F)$BM@Y%.FIG;U+T!"@Q2 M\,_T[OY?08/6(<;C-*7],N&/J)$%8I\CC;)EZ'R2"Q>J'$)7O% V49C)<>H\ MA7^<):(W5./TW=.%59SUX$D(Q/FK!PAB/0C3\^HVS]@7R6@ERX6($<\43O3< MBC*(8XHA);&"*5(BX;'"3 ;6:GC_2'SW)7S\1O=IWXM;IA*\? M^Q/5.W/IA;7ZWBW7R_)6BC_GN7A62"X,$Q$&(H!1$ N(919"BDS9/LE)Q%/) M)$H&%NL[;75^4\@.*[@Q8 >6Z^NAV78NZ96ZT:>4VX)]6_IJP%-4[#O/D.^2 M?3T67Z9FWWD*3A;ML[AU8%X$6I@U\+*K-OJ*EDNMAAD/E<0*\H29P994D*A$ MPC2(XB@F49 IJW%6KY6YC;1J4%X*$)\@E6&!0ZW7880TJ2K*8!8S#I,4416' M&0EIZ)B'\E):I]'JAMBUEIAELZAE>.5M 6B#>T32[73\8B)'5NX.WZZ \Q6H M,7I,%=%'@:^L$$=M3)L HL_-@UP/O1=/'"Q4_^.+2>I:+BOY58O_DLLFW15: M!"&+HD0H&"&S\\A-.=6(,4@"(BB/$(N$4RZ(45#.3?!KK$_.(0[9JQRG0>UT MZ\6;:>R=TLM#?YI&WKH*6E^])2:.MBG%^/O(\S'AF9O 3Y6QH;U'Q]D M64K99AE:WWPPYSBV91A:#.6;C?R[I(4Y0"87H20\BK&$,I8F=R$5,",X@4S% M"4-=R?=3K]'I7)D;6ZP7X$M>E##?U+1I^#^?,DJ.[V)Q7+P?0\%\+A#QJ:ENA^6=&5B83LRLZ\SLOJ MST5>E@LBL>0!)5"RS%37E@2RA#.H]&R:,(4B$1/'ZF ]YN8WG=Y#JV?1;54E MKO%>@1N#V#4=40_5=BKFB[Z1!6N?MVTUJM=/LP>9'&/I_-\W_1SWN1W=+E>)#2,& T0##G1(Z($QY D6011'(=13-)0 M(:LZ$!:VYC;V.9+QSX %OS1P+\V8N$>RI7;XH6YLZ1C*VN7G^0[Y&.LXWYZE MESW-=^CRV<-\1VX9N#PG5_JO-]=K\7.=X4__W-5%BS*%59@Q&"4209S%"#*I M]2,3820IB2.6.HX[3AN;WZCC*UV92T6E#TZ[[G'7X8/'F_!T#)<+4FS!I>71W;7(>5H\+@44H M>!K!B L])1$!AQ31$)(4:=5(XYBC:%'E>JAC*0P')IS&$5M#X[WGWXP-4.[A M_.=_RD*4_FM==JYZ=-2&0TJ#$!/)F( R(S'$$4[M"+DHBRE-40J3E.GW-:2!2>:+(*7:V1@E K/(]8R:#VI_+^?3CE!J MV8==1-+8?=<>N'\!#3QP757%DFTJDQ[(K.=]IGX+-)]FQ%GVV@E9IA(F:,I@G'&MJ(I12(7D4$A&0D2I$5J76>^3I\]M MGMN"&SBO?4J>_IJGSY[T@_VJ%O/O]7C%[E]ID(N M%V_7E?[.WZ_U-T'KLB)O:$5?-Z74%XJG 3(KW7&HAS^8F8 .'DM(HC!.A"2A M3*W6JV"!00M:N';?\EEV^S]KGYR-_(4/IL;=*7MB<0X;9L,U#P^*T4&U-W M]G.1W\NB>ORLWSMSIMT8OS>VOM7YVT,5LAA3JH=>>BJ&92)@EO(,2AF3B)!$ M89HXA=I;&I[;^*O#;=90.^17H,;>)+;JT.N/T.!W7(*Q;@]+Q1N!Y9&5[C)2 MW47-D2%?8F9K=EH1G4 MQ\V=H3DO'%7H.(UV@G,Q-2-KB\E5T69'_,% _/'$'O4HVM)+CB<9.6YC4L7H M=?.Y./1?/$P'/E6WLKBN.^2?ER67*_T*R'Q3?M3XV_T;3'! HXQ +DQIA"PE MD/$XAD$@"$=4JX2P2HUH;W)N4[ :,5CEZQNHS=VU Q@WI; @VDXV_-(WLH8T MS#5HK\ 3O%=@A]B?;MBSXTE$+ Q.JBCV!#R7%X<[AVE-7=&]"1)]9^JYM\DO M4T11C!"%89)H?0D)AYGD&(88R205210*ISVVXV;FIBF7EK<_0::=AEQ.T/>?5W67V1/+]9FSWY>M_W MT[WY<[F0$8LR%820\UA!C*,4$DD)1$$2")QPQ8E;+KTI4,]-F?ZR+K8XFU,G MD-4[O7P_*Y!LSO=<-5> O/'%,8W<)"^%G2+.KJFGV-M_GL9IEVVGGIDUOG;9 MG1H?KNI0)?W7"CSJ<=G.SSIZ:>-S'C=ID_A*NS<)YFG3^$W9# =I 2R1R9+6^D,,!(:-6 MS'@+%^VW-G&HJ)7KAV&B=K<-S;!B,OC6FM7.\\(H8:F0!.+89&;*: H99J&> M/X])41Y M_OR)TZ"<<.\P^/&L0*"&E* M5IHY[_VVC/U$:8O/M;J=CLVA)2>2Q@RHK*$8(DBY9)WYT(\3L/3R9+TY'6L ]_W MJBO$\R5*B,41B%G$(LB#E+@0A,(D20D&&* M(Z>4%%.VWV3Q/4];;N6D?N1^NV']B2M/XPVWY;*T2U>@=6KT M1#F>"/897G0!FNECCRZG[FA@DH?'7I"&[GU9;J1XLRF6ZYNFOL!?Z6IS8DEZ M(8-(!8P'4! 3,4D3#)E*A9Z5Z>Z24"1$&#H=77.&,#>%->#K?&#Z:^XJ4M7+ M%YNU;HDVEYWI+75[&1VXUW>7V_Y2Y862RVI3N):Q']!VEM.J45MDB@E3"1KX M5Z &?75\>K2_*4B5?E/ NVU;>,Y--HA-G[G+W !,G]ML$$%']+$JUX? M-V;-[9-JWM;K![I<&577[]^?];W5@BM%XHAJ594F<:5* TB#-())QDF2Q4P& MQ$UD1P(Z-RENOW[:X33J"M3&?-'@Q@"NJP36E0%+Q]* H[7UR&M='EMP_FM= MC;.F6VW?A.LG;T+M\0Q6NRS;Y*57N\[!_'VL=EF2[6VUR];>T%CC![G>R#;> MPT#ZG*^6_'&7O04C$J(4!9 @19O2-E0F(22V5N9/'M2/NE@0A&R7EC38BW&.5S]B8.5[9T_S!RV?;&H/O$$]IACAY/3HU>Y9_M]D_.-><[_O:&% M_CY6CU_D?5Y4BRQ3B(>ZRT^2V!QEEA*RF.K./^(AC=.82VP5.-5C8VZ?;@<3 M;'&"!JA]=M]3;/9_QYXX&OEC=J?'*9OO&0(&)?(]]<6H_?>^Y2X?U MQ>\VQ;I>@KQ>BW?+[_7"O66?>0:]=Q^R%LY._^*5,=S!&B*<^SX:E[[S$T:5=_ MWN'GW;[%'<-THDEFT&8+WV;G08R%0B$"8YPJB!/=_[,PY%"%:9QP/1Q@Q#&# M[E$[\U.'%F";OL0QT]%Q+NT4X6)^1A:#+C])1] 8"8UZ.? D <=M3/KU][KY M_,/OOWA@J-OQXME[:7;T!$ E*%!FD'!<&"*)IB$48)!2?10+..9YMK\2-K,([QFJP5V +=Z144;;<^ KE.FMOVF M6_YYU](5I/1\1?G(+T-#LCI2,]8O!%4Y.>)N!.P>L05UK,5MR M6K[]_I>O[0PE85QF.&(PY8F$.",1)&DJH Q"E.&4,II9'38Y\?RY#<(ZA'H M!O[RQZ]_=%B,.4*>Q;K4992,O3WXC(TA:U1':'%8I[J,GHG6JJQ?&K_E M*+VN7M.B>-1CZ/H$^(*D@C&$)\Q#W4VJFN/\)&UM#GR8BO *U ![;)*>$W)?%Y5CQF).XQ-GE" MXO..'\M';''7P*!:SDVJ__*+Y%);8"OY459M#-\B2P2EBB80I81#C(6$+,Q2 M*"(I)6$B##/'%;@^<[-<>ZO1@F(+M\YBXQAKVT=QF@:!5"&"G 08XCA5D!(L M8"H)3ZG^&T>Q2RX^7P1/D6AO GKM9-H7:6.O7'1\?=GCJ\GC<[U:Y;_5*9G, MR/5U(<6R B:CUC8,VF/LLP5;OD*@^TQ-&PEMX?1!0+3-/0.7!OBM%)N5_*3> M+=?+2GY8/DCQ?EWIUV6I[32AV,WYW#B*HC3)*$0)UR(NB8"$ZYF_2*A4(C01 M+VZ9=:Q-SVU V"$W$_H&.ZS!@QWZMKCIP(/1]HUB.6D?A>JQI^/^6':?8SL3 MYFOV;&]XVGFQ,R$',U[W)UR8DN%MG3[0S*_S=3W@_;XL%RD*F:1I &.2A! K M%,,LTU(F29)I%>-(NI65[;4V-^%J,((=2/"+@3DT;\-1@BT5R1=M(XN0,V/# MDSOT,>$[U\-16R^3^J'/[9.9('IO&GAZG"Z+>B+\LZ3EIFA" O6(2P^S]!2Y M.W@0J0C'L8"IXF-R& M:SLA\88JC!S]2OUM5D[;Z M;5,]]6.^SKN35'J6M\!"95QA 9-$,8B1#,S26081P8)G29:AQ''IS,;L_);0 M.M3;V@EMM=D?!ZST6!%O)S^^R1Q9?K8L=AGUWVY9W ==I]CW)T8N)'D2(RN3 MDXJ1"PG/QT>*=_4RZ".$OBA'#(1&;6E*4>[4@E8*AH M%IN33GH>Y9H7ZYF-N0UNMHF?&IS 4U4O?$6,_I[%<43R2-+" #^!F4&>L$ M Q=EQGK^S,DS8YUPZEAFK%.7#CD[_5B:P^RX<>!H[7]]\D\5= M%_]DBK$N*_,NO*:5O,F+QT_*%%?>QD>]R>_H@\\7LP!AO]N(:?VD<_E&9_;IO6YYI7RX=EM93E-LT?#@C6 AI"$01:51D2D&5< MBVR4H5#QC,G0,?^%.XCYK53M$E;1+5K'K(H#VL).(L?E=V1U-&4?Z_C2#KX) MQO_!> "6ZQ_!CO>=%Z/D;!Q.HB=1' !@4CT<3M!S*;S@21<&#WQ8KJ41V7+! M I3%IH@#9H$)7B4<4HX)3 .B<()0E'(U*&)@:V)NP\*]4@8&8SW6&!PDL"/2 M3J(NHV?LR;,;,\.# 0Z<]QT!L#/P,MO^!PZ>W.L_O/+"^D]FL-24.%1Y<6>" M73^QU?*F7DTP:^N\DN+;\DY?\DE]U;\ME>G(\[5&5%1O-*HZSB7CE$@V#GX17H? 2-DW5) MNCTWKT#M*#">#@I?\OP>V*G:R[7NR(KX,@T[O'Z65_Y]%]OR ^YE*G-Y)?9D M&2^_5BZ,%'OUN/WQ?RWUB%1/QQ\_:*2K6AA8'&=AC!24&:(0IQA#*F,%A22" M81$+&CN-&^W,SDWX=P%/8 NV+J[Q\?JO@^3;DGT[6?;/ZPF=PX/(K-CQ M'4;6;_1E LFLB#@92F9W]]"=D;)\G:_-I%BNN9X0MP4))8HIHP1F2 D]-N41 MI$$0PTA2D019%DCE%.Y^W,S<1,>@!$]@#CN(Z\>)@%O)*N^F@C59D%LKWSR5[J2UW=Y42W_81). ME-7;[WRU$?4"&B\V]3F<.L#LVAP"W9X!U7!FN+$\O<>IZTB;S)/#38)ZTOYBT&9YW M/],:'YA0Y!FJ9YAWJ3W_7&B;?UD7DJX,:(/@E=3?D?Q&OR^"-)8X20(]_\XB MB%&202(# H,PPC1,XS0+^6(M;\R#OMD/@[V L](UTNC: <3Q-*Z&#':8:R%R MK53EI_7L.J'I&F-.G$N*C+78%6.T;T,YYS-GADVM?R3V\8)HV"XA/&@_2 MA7A]N(]ZBU^6-[?5)_67LCGFOR!1G'(5*JBB0$ <*3V'2%($8Q5+01C+XBP= M7FOQF;6Y+4[4\&"NX*:48'N"QT,]P.L/C?";?["_^=NFG(P97+9]$VW:6GJ K67+TC,E<0\@#).$,293,WQVP@2(D.JM2I!TFK] M="X.S4T,VX2YU+@&?NM\ _<-6I'.2--M\JX_,HFXW+]7V#+ M#&A]!9H;T) #]MAY$J*PY>>JN^MW]MJYG+QZ>;@NK]]4![U^9Z^AXSFS^;1Y M_[&V&>"<\!3=#+Q]-J";':[!F8B[">ZGZE86QH]"WFI7E@^RR:#0'EE5+$PS M)3,8FJ(].!8(DB"*843C2 2I)(J[IR6VL^VB@M/7!ZNQ@R?@ZS4EYX2ZE@UA MN.C_ M5]V;]LB-8VO"W^=7"'AGYJT"@CT224GD;6" +"\UGG$Y<^RLV[BH#P&NMFY' M1F3'XG+VKQ]22^P1(A644@UTE^W,D,XY#T./#GFVP5NP7#+K7 ^6BY_U?\@_ M&LQG#]\67Z1.#^O)S09[2"^9L?]P7OQ,^+$E MV]KJ)$V@E#PS;V(MS,/*%6!(:Y"1E#-!,JV09YV[B]CQ;1&^;)Z>6-5^@O4^ M@9*N\& MS6 !\J:YJU4PX&3R*^:'#H7O27B= /BIB1?#WF<^VK4?M%C:$/I;5?WY8?YA M_MV0QV)9J-4T)@ECN7%"("4<8,D)X#HG((L3S 5F2,2RR61T>]*ORNN0G-CS M4]\H]^+;[/D:JFX/_NU(#=7>N=(O^JG1]&=#D=&>LB&;.CM@$JR;\S59 [=Q M=C#[M'^SRT5=^W;]67L>-N"R7,S-7T75KOYA,2O$2_7?1_5C_8LQY._37.J$ M$Z*,FY H@+-4&2)A$B".A-GH8*24]NW:Y:?"^'8VQH+92W0G%\\V_+$SQK8D MF$L;T[4UMM:SLR'?W:\/C8T^+=;1?]@8;W4CWZ9?G@OIQEU]+D[/=&94OPSV M)*H4C_ZH_[061*4)07M]=4,O6*K*Q<,\U?U\9HUJ-4OEZ *X]]=7X( MCI\/@KUYA$Y*O+*KZ -4NP_I=;=N5%EE\BAY9]PP]K4^VWQ6QC/O:V6(G9PHY+*ANV;8]PD8Q9K$@*#(5J.W01 K.752!A(B::"YI" MY%/O$4:ML<7)&JL J\R*YJ5=]KA]5:47;FSFX7H1B<73LS','K@W\Y">S0?- M7YX6\^K#?I0;:)W=*'CXU>N9DAN#HMJB.K97-CBK%F[/*KN+,/Q1S(HJQ[2/ ML_RP" >B[$!*#4KA88$\IO3 =^]&\6]*TOBR-G[UB>!I&G.!8\T!3;$A[M3V MOI6<@Y2K3&58,$:QWUG!-7'C.Q=X4S.J57?2L/!B[V'^J:CY]LI!>P?8LRP6 M!"4@Q52:K09C@)=Y(DF'9U#!^L9!E8[MAH3\6W!_\OZBOQ;SL*?D+ MFY4AT7[P9BB!@DH*J-008(L\SW0*8I7G6G/"<G[MU^3PI2*'2M/)_JL^W O=!9% K^FKH@9]^;H8??Q*=;JF MVXORU\5"_EG,9M,48UO +H%-"[*<;#SV'$L@)<$4:YGC5/J]%)M;C^\%V&CF MQP%;J-R>]R[F]_QLM]KM_0@?&QGH<=W>=M!'\]B8X\?PY/?='KG?%E6QT(=Y M$X>IAXG]C=F"I/5+V92(S3XO9K/WBZ6M/9I"K6*!D/&8I$*V[0\!A- 4,,4I MDU+!)'>:;'B##F,[6&A,L.>$VX!6,]6N,2.J[8C^L)9$M2F>#3.[+)@;1_2\ M##W322\KX$U!-V 8B*VZ:# HL=T T3$'WG*K;G19^^Y?OBFU_JS*LJ7=F<'N ME([ 7.=YC( @=JJ-R#0@.50@B1FE@L-,4J_36#>Q8R/%9J-3JAW5>D=[BKN< MS-VR#&Z\%Q[U.8'4R V3"R MUG=S^>X?F^*Y*BU_-'>LINODF+&82Q!G++%)2BF@-*% 2YT3%%,BF5??<@>9 M8R.H1N5)5"I=1G2W:D\BJW:G 0HN\+MQ4V!0>R:F* M)'$&8,:E4#%3,?&:Z-)1C[$1U;6QQ!WXJ>OJN''6 )CW?>S<&>Z ,Z"=P.I] M!O1U+48R ]H)*O<9T&ZW&[+=XF'<^E>[MU7R@W9J^?-IL?Y-K:=Y%IL]*5$@ MY3JUL[)R0),$ YIKX_OE,15NS/K:AHR-FC\=9Q!]K8R*"AW-%^#7N[N')H'( MZ+'X,R+Q?RL=3;Y8_+V8?UW5/Z;FQ^8FZZJ%F7=L\+67I=?.C,-^:WI^N01H MA5=_Y^ZWR4\U)-$'[=P#KZRD^,VUG/RUUV^0#HS#?LW^=3HO#O)U&ZCC8K@U M[J?38@#]_@4Z+(9;A3"=%0/JT[%)BOS/S:IT/E>/BR9]U78WV)4^/R[>L-4W MLW7_7D@E?WGY?65'Q6QKI._$NOA>C1]HCK^I3!,I-;?C41' *,> :*I!EN&8 M4*5S@3U3"_M07:^CA=T:&!D+#ULZV%];.Z.'O;7]R=IJO@ _1[M&$#M[ M^VD9T^."A&HQTX>*P[:DZ1'DDQ8V?7NDL1940^;W^K@@:7QO@)H+UNR'[[R8BV!*D=,<9H"G M:6H/MG/ E'DKHQARF"H!:>YUL!T RB%.1\(#Z?8B"P!/S^^B&AFCXK:@]*=: MRX -A5IP"%E;*T+6@UTP]4^QY]>-^7+I:KJ=?U%?+Z[^JQ=_Y6F"W) MV\43*^93@B7E:9P 0DHFA0QPAAE @J$LUB1-4.;R\%^5,K9'?U_#Z(]*1\= M!%Z5A!L"J;0=47?-JQ2F M4*,4 O94]E5A?!N[IB#@SZ8@8'=*Y\=+WJOA M1E)](MQW7+-6W4:Q3^HNMNI'?Y0&]--*K"MZ@?C,6_R@Y-85G&.FZWR?KJG, M-;.6%:ZI\(S6T;?K1VX-8UZ49G\W6.*JU+!TW9 '@5*0^9[^P#5+"49R>A V<]^P!QFOCL=77' MW&=E'$!U.+-YRXUUU'GU=J/^0['E>_/-G!*1R51P"CAES.P3N0"$:@E4C&+. M-$NEQEY)SYX*C&W3:+Z(F6="LR_D;O34)Y ]$U6E^F0O4EG/=-_J/[$Q3F[8 MBA5R$ED3(FM#P-3FCNB%RFGV%3]L,G-'<$ZRF+O>YY988P6Y,/\#7LNUFQ6#RR/XP3C7 J0 M)"H#.,\YX#"VHYJ3E+$T9HIZ>917I8W-K]PI6V[/@'G(:WU]4XFO0>S&R,& MZYE;+V/6QQAX%U"")=A>DS5PIJR#V:A_V!&ET]<[ <$';CCS"X]4P>72&[ MJ8O2>31ZZ)QT).C5NB6=-_A:AZ0+5_B/AV\FSK\O5G:Z=>G$O#<_6TT32G", M2 *$R C B38[SAAF0$@!H?D?I9JZSHF_*&5L%-$H&E6:UEN(J-35?73\95"O M4T,PJ'IFA4XH>8V5;T6ATWSYRW<=;-!\JV'[$^?;/]S-.WC'EK:U_:H)[)F] M32&V9ZNIU$)1G@)$,0:8V.0!:"@@SI(L)9K$&28^#L)5:6,C@$^7Y]IXEBM> M!]G-1P@&7<^$T.BY"_%/HE+77LZSG5 )Y"Y=7M*$1 M;'K%14$#SZYH,_AT(8 @20&6&08T00+$ G%* M1*XIC_U8PU.#\5%)K6GWD)7O&A ML$P3""AAQ-;D2< 82P'$#,,$Z@RS?+I> MK-GLU5=@IT5_^)],1MSW" \'L;J^.'A>K MY_>)UR#$251;U/O%'Z&"89MD'C.+*P]38=@W#";+TW51MR];Q4 MHIJ9:?X^4V6 <"[OGA;+=?'/\N<7.P=/62989AQ>@# SGC!)%2"04:[=LUB8[:R$\.^\@'##H&!CQ4?#*46L.&,@.#>1+U#'W_6ZM&/\S- M)MU\P5[>;)9+\[>C^L0XQEQ18?,M>&SX6RM@]B(*Q$D"&4FEA-"S69RKZ/%M M1KYLGIY8U?Z[:%3O6A[: KL;U?8!9<]4NE\.NE5Z$M5J#U0&ZH96\/+/%K&O M5/;I!L;E-D^''3P?U/+=T_-L\:+4-.9Z)*HL;T'=H-1J@#6@=;1'U;O!]1F\.G(G]8K;MUEWWUGQT4]0[9G$?4.01S,T[]AU2.(>JC'JL%B'"ACO-BA@Y=7#7V3"CB^N<[ M.CVVYOS#:K51\JTAFOG7*G&[VI,U&[+R0_=_SLW#^*UXMM$-2Q99JJ0 Q'QC M ,XI!9RC#*0Y1(ID&.;0:R?548^Q<4E]H/*\'36ZF4M[N/+EX>&&X[6.:^3H M"?6/?-]'8V7?A,J$J+)A6TY?F3'9'F]5+=^BK2EEM#>@DW0;F*'2'(L87:7U39QE6S13_:_R7&*:[AI5_C9(XGL1QW,0P!P[7?S6O#7+0V^4 ME'=(?-/.;->L[H!9JG=I*;0D.GLY^T/EL1^=/N!4]?/&W>: ML'[AVM[]+8,< M6U9<^^['6LWM;+V3=N&U(1,[E&]I6QJ6J["S*SC=^ $9K+^ND]"!^^OZ '': M7]?K:O\92W>K@CTP4>A"U PXV*NFB.?LC MDBY_R._Y+$5 MORC.W'7=[*NCZD^O&FZ _$6-#\:Z7_Y4B)$BU3'/W?9D81I+$D.<:MMJ,+<) MHQJP3,2 89Q3!76.]4VC1(X%CN]4YF2$R,GQ2_<3Z1;P7?<]H0#MF09/YH74 MI_P[9?N:$7()E%YF@YP(>\69()<,OSX+Y.)5'7R@6[,;;8K2LN";LBY(F6_B M?#V568JR'&4@9]QZ45( FN44()ZP+$U%0K53A+TO!7U\%E?>9D' M\GI?:[G]'.D>U^*J*]Z'W.&<^1Y1.]@.]"FG8RB7K;[9_]NBW>]LILI)Z[2(#)!<44$RS!&G&LV6 M:\?8[RTZ^3#'L68]!AZ-DF7@0-B_J)VZ$5M'7'TMYK8%G(W95CIY!FIO6L1$ M(:YCVT=2H!3@7*2 *A0#PC'-,RV)]<\JM=[-'1M@#+R$C5ZOM(#*1M]?8^D< M _)#+4;?T7NCV20J5V)/P4FTTSVJ/F+7Z>B'^U<$#/6'0#947L!-N@R;1! " MMI.,@R W[9X05=>9&2D'=3IOBY68+5:;Y5[G!&B^ZBC)&8A)J@$FU+PV99Z! M+,XE(I#0G'DVT?-38'S'=E<+]?RSECS6PI%">\.W;\Z\6@&YTSWZHY=^%MUP M"Y@IY2%\\#PJ?V#.95EUN$O'"N-Z-J>Y>=U&8Z\?N90PMQ6!S 9*,VHS&60. MD,J21"I(19+[$=IE82,DK[HQS&RGLVZZ?30?;P= MC5#UQ)<%#5M/W&KP23UQ^Q7=6.)SU5#[L[)33ZJ$=+U8/MFQ*/=\5GPM3SS> M_7A6U@M[+)[,1^[U%_/3E3;"S>\^[HJ-M9V]2Q@021;;P $"C"<<*)YS(>,T M,_M6GVS.<*J-+6106V:W0K5MT9YQT_P@!Z3?0\2.J?Q"Z7DZKT!H:I*JB9TOONA MEJ)8*3FEN2800PU2:H+72\SKN9*%^OHV=S.<]OX]Q64?Y[I& MLAY$O=4W:*:^&S3ADO1;Y V=G^]F_IG4?,<+N[&2[2ZRZSAQW(OBW0\QV]BB MNK(D0,D/<^/1J=6Z=INGR.QYD6#4SN)* (9Q!BA.A?EGGN$XUC3AGK6/-^DS M/C;[C2W_KM9E]X35UBH_%*;<_^_&N[#"W*6;+\GS@<['Z^^Z$CB>)S@@DQLU59I^>4@$X MY1"(' HA&,\$]FH$>5G4V!RF TTCJ^H-9Z97$':EAA"X]PR-" SU,A]Y#F">1:-E)=U,?B,+1>;O(H8G=&80S%.]^;3>R_U .2_VR9NNR;.&C750[(FQA(TQ3P@VG MIQ "GH@4X"R1P.PF*8!08H$013EW:FSB)&ULG%,I&VVUC1IUHS\JA3U=Q.M0 MN[%., ![IIL;L/.F&2=, O'+=5F#$HN3V<>,XG91-RJQ!]#E^?/=:J7*/,:] MW*3?%+,IC/)^_MF>D-D.E^8#GQ;S9?//7]BJV.N##U-13B@ *A5%C8F0W;HU5Y:?VS8Q*.V_8 M!X?]$KB1XJLM;<\D^BJKZDV_O: ?B*[#ZC8HO?<"Z_'KH!\A?J\/J8KIG7D9 M2?M">C]C7Z>$"(Q3J@$A9IN+8\T!I8D"/(4$Q4(FC#I1_\F=QT;;6^4BJYT; MT9["=9TD;P*A9X)SM-^9DB[:>H9.5DK\Y>OB^_\PUU1,8OZR(Y#3.PWR\%\T MH'EP+W^@H\]6S(NU^EA\+^.19FT*/JO(X/>5TIO9QT*KJ>*"(013D!!LGD=F M9ZS8WKPYUW&6UTBR:&=4\'2(7A!W]G,"X]>V^E.J"4M]H MIW#ERDRB&M&/UQ#U=T8\( KE8[B('-9U\ #AQ"/PN;8;YWQ2:UNT^[!LB^^E!S+%64KCC,4@0:G9!#(J -.Y!"C5*B80"X[C MZ7JQ9C,WYG$7[<4_6P7Z>YB,YE7'@HUM1U/,RZ'PIZ^#&3_V@ MVS-+66#+O@*-VG8*\4^_5RC_'&V5C^[:8?:F*W_$ I&6A^!!JJFE>BU=4[9?(BL*ZQ]B!P]1YBWT>JCH#] M9.<]_SR)K)NQT)'1>!+=K:O>;V4EQ7H1/;#0#=?[U)W/JOGQ=*Z,#8>OUE-)4JE^6JD0!,< XQ9 C@B') X MTSJ/*6+8:>A9FZ"Q$4.EZ[:1S%;;J%+7/2YR%=WV,$DHS'KFB:YP>8517+#H M%%6Y>N/!@BPNYNW'7)P^W_$<8?U-+:OXZR>C>.,GI#)57$& =2H,%U@:T$D& MRE%C,:4&1<< R@$$H)+D<:>[5W[4W9\3/[NR\/#))+%2BPV M<]O@YKFV(7JV1C234-A7S_.D'A?;NI1F_X' MHXM:/]RQ]UJQ8E^_+E75@_)>UZTJ'VV0:XH4EGELNZIEMEHI$@R["QL:&A[I:+ZC6-OJCU->SP.8JSF[^:RCT>N;)[L#Y=]%R0"14 MDZQKHH;M@>5@]$F+*Y=K.CA0=4^L=S\,'=DRE'N^,I:LE4W;FINU>[E;-\70 MO['YQG:SW2S-JTXE&4ND<:T@RY/JF)1R&H,DSY%@(MVSK' MB[G=BQ6-ZM$W-2N3&U>;Y^=989C/P]?HNCZ,\32W78 SI0WQUJ=QEB MMZU&&.!Z?DETQJS3F,GK< 2<(7E!T. #(J\;?&[Z8\L57=.N;)+G\GE1)2&6 M/5#>V,C4\N7-0JII3J5.$XR!PI "+.PLQU1QP)64,HXS'J>97_;557EC(XXZ MJ^A YTG5P,? '-6:1U9UWX2LZ[A?)Y(>T.R934( V2%5RPF>&S*VKM]_X,0M M)V-/\[?<+NMP?/'NQUK-I9)_8S80M7YIHC^"0YD(!H1F,< QRP!#60:H1#'A M)"68N.]^S\L8'8W46D9_UFIZ[*$NH.BP4;T=F[Y)H8&ET;!+P.<"/AY;R-MQ M&FB'>()7H#W?=0"N;NDN7#K52)MD=^&K!8&6>*T2RF,>04._E1?F+'QH-5QZV%CA[, M79OGQ6_SY8BWVT8L/(H],^86P)W*DZA2-_JC_K.72==^2 7:KSD*'73OY@?$ M\3[.\^INE/1.:R76]_K=#_'-)@!]-B[=_=SN'8_VCV4U3V&G(M;[R\,?['UR MFND4*TIR(!46 .>, P9U#(C46HL<&P>.^25]]J#E^").E9'V@56UF='2;GFJ MOZ]L@T+1G+.4?U$[:_QXL8]%=R/15U[(OGW4[0HV]D6?RTWKO#P8FYPI-WCRL4B.G[T'#0UT*/$!^_0_H4U7GN MK?G6KE\>S)-C4ZCLG9_M?NB36D]QC"1-S29?Q 0!C 2U R2-(RP8RC$F4BG/ M 9+7Q(WO%=!H6[* :E2=1'/E67AT%65&#*@<48!$D@-L^^N8C84&6@S@X#;KPD:%>:K,OP\S5&JXX0P0&$F =:Y\>Y3!$%J7C50*2DU M]#J=N"YN;*<2UR*=M9PS#&'2O>-?(V9L M-++KKNMSYI2VV8.K&&;UF$XF,8\(PD">:YLQPX) :&YV9Q@ MFG!$\I@0K^'T;0+'1@IVQG65R_G4Z.M9U]V&L!LQA,2M9XJH52U!VRH;U=JV M1XC]ZZ,=H0E5Y=PF;MA:94?C3RJ.7:_K&,)X>IXM7I0J2Y'OG^UY:/UU)TA* MED($:*(-H8@T!3Q)4^!#*14FC8Q*K8%1IZ!L;N(BFXPE_"(SZ M9HUS'1=V!?"3&KD>^*,5G5!GY!?E#'O2W6;NR7EUZP5^'+%:KJ>/Q7JF[O6' MN2R^%W+#9G88Z&*=6W\:R= 9ZC.[LLP'6BZ1G6GJFG$Z+.-',#-M>(Q]QV MCW3,OW:$TT7B(!1T Q0-*=URBVZNS-ULMOB3&;O>+Y9O%QN^UIM9G?^Q^JR$ M*K[;,N&F=2]/\UPHK8"0V.:)$67S[7. I2(HXP@K)J=S6VFLI)N#XR7?Z:FB MU5.UKT5_#]=6_4@OEI&L#8A8;8&?(^2W%F[.47A\!RL"+76,=DI.HD.TWRR5 M+.R4XM6JAX[+G8 +Y$OYR1[4O^H$R['/U>TF-[1J_;28+YH#IJIM?+T=G!+& M*,,* HVIV; AE0!"4@9$AIE6@N&8)AUZMEX4.+X,@*JK9E&//JCGPOS<(3[= M@K3C$7$P]/H^*BYAV]=T.SZB5O;GP'U)6U$)V:#TLK#A.Y6V&GZV96G[55U3 MZF>6NKY\4VH[B[VLKI6$(Y*B'!@&,RY13C'@A%#C*V582A*;/[!?$OUY06/; MLM5Z1J6B4:-II]KEB]BZD4<(Q'JFC6Y@=4B(OXY$L!3X"V(&3GJ_;NQIFGO+ MYSL/HVK:4Y;'?:N[S?K;8EG\4\EI&M,T4R(#,%-V'"^* 9=9#'3&M,YUG&+M MV//(0=KX?(RZA^RJZB&[*O6-V%;AZ*=B7O_T\DO3&W,WS@B$8\^T<=B$MU(T MVFD:= Y5&QSAYE!=E#3T'*HVD\_,H6J]Y,:F:J+(%TG$#<@L\?>\Y MMIB\:\.D>U[*L=VA4U*V]W^=;)1C\RXFHIQ\L.,!JQ";I\W,GD66VY(S(^SL M"=9VNB)$D%#;T@1CFY)"J :4IP3$B9 *LB27N:>GX*G!^+R'/0.B1;GM%@=C M&V=&>\^35L]%<3QK[0_H_D];MPA7!QN.@S$#GK=V R_4B:NG]&'/7+M!0Y2HLW/\Q0B*3SW M12YRQ\=QVRSUV^ILW5#/*<6Y)@@@B2# "2* <\$ XUP*R>P('>@U&CDTYL.Y MF8'JF]UP=]R1AD:S[[WII0*+B6T'VF@=E6KW7FAQ'J5^ZRV.9(ZA[.(\#([5 M%QF:3!IY*3?>1RGYP^8];N16V@2>N^,+7:?C* M-4Q7JYSL>$I3C%;?,F,24,$0!UM3^1S/CGF48")50 MA'*=:9+ZN&<'=Q^I&U8/1NXR0_80/,>M>E=(^MZ(U\--PZ*+7L(' M#CEV >8T"MGI+EU;L7]Y8K/9+YM5,5>KU90)0V$LA8#E.+7,E@$N8LML2,0" M<@FI]FN]?G#_L5%7W2&\U#%JE/1MJGZ(X'7N"8!+S^3B!TF']NAG#;^A'?KA M_09N?W[6F--VY^<_ULU7><^*97F$\YMBJ\VRK#1\OU3_V*BY:"J?4H'3)"<" MD%3D !-- T);&Z,>0L8/9->HUHOC18OV1V( M<$YN/RAG7#+N^+&_^+F.&\9B7JS5Q^*[Y8*U6FY[#*T@Z044N]6#[9 MOKY=P,NFK#.$4V\%8;%>VOXOO?I.&NJ;ES^N+@3_]@42W7WG14S^QUZOUC:;MM?K-AB M7:C56\77TSS)8JIB;O/?$V"8T? @S04@L>T5S"12BC4-]1[=.=%3#:?G\["O MWN,0OJVYT3>V4N5(T:I!>?DTKK;*>PY0\EP<-S+L ^N!4NUKS>T>H=8]LBI& M.XT-23;6 .-= &M/P-E+W: +-8[)4_JP$YJZ07,RM*GC;3I&?XNO\T(7P@Z( M.IPA:^Z_ZX:^8R V.*)]1UBO0VD\N3Y\.#^80@5#W80.&^7T N(D?.EW M=>?^7,\;LZ/[LM#K/]E2'9U^UC,'XCS/G'0MC>)S)JM/;NRN6 M!L1!<>O9QYJ]-U"-SD)@/0PY<$+I7 - MO!QD#MW*RQV&,TV]/"X./(OXT=ROS@\5*L52VG0)GML]H12 <:@ SXR[I'2. M-?;*>G.0.3;^:1D :Q7OF*#KL@".^[ZPL/9,2Q\7\Z]U//;QB(R")^EZ(-/W M9-T]B>,8L'L*@?.2<+_9,BYB.QQ]]TPZV\DGR[W))][#&)P@=^.<8# .PSF-NM%/ MC<(_VVSY,P-EPI&0#T2!2,A)Y* DY /",0EY7>M?P%R?["'7E,WA^4UUZEG\MHW;1(=&%5P ME@&FL0#(^'(<4Y5QH;R*Q"\(&IM;M],S*A6-_K"J1J6NG@=4%[%US!4(@%C? MV0&=P/)/!VA!(E0"P"4QPX;\6XP]"?*W?;YKH_GG8LUFML55TQ#KS6*U_F \ MF6)IR<@VM9_&%!'*B0!9IA# D#/ T@0!G>90,H0IIWZ-^%RDCHTR]I2.1-,: M3ABU)U&Q5=RW\;D+^HZA_M"8]AWJWX-SVVGO30GG3N=R/G'(MN<>& 5K>^XB M<^"VYQXPG+8]][FXH[MB9X-5;17>;I95>4ZQJ-LMG._6,.4XAYKQ%&B4:8!C MA !/;&YXS"4F4&J,F)+%9 M-3NHYMEK'4JEAO;-^4[FUP.JRDH]_4[_KT[5+M]Z-IVM-,SG>P MV<64)A'3-COJ_79I GI?W?$,Y9AUT&!8GZT[1"?NW VWNG$VXD<;(MAV.IU" M223D.+;C; QOIAP"CCD%G,B48,A82O-.$Q(/Y7AQXP"=TW?3 &=EO&O;1;GC MH,0C5!W/VF['JN\CLRU,I8I[S8][&)YX'H70(Q2/I+S.(,7SIEX.8G;RO[]@59_'"9NN77S?,^,%KI59V?G2Q M+D_*[YYLFL,4":QEEDG 1!P;MM(9((:S ,YR 6-&L(!."0GN(L=&4;7&T7.] M:1!;A3U;U+2#[<9*82'LF8\:]';:VO#@5M])5&D,,SJANL"T"QRVOXLS M ">=6]RO[,8WC9ME^.MN+LN-VK?%S%R_>E<>F&Q;3&9,9 R2LK9$F)U38C9- ML?T/U!IC%%.SM?++D7 5/;[/P//SYR7@PW5NH#X)ZY:4_E;26/H:H^NH+Z MHA.(FYS%#LI0OF <\Y3W]1V/=2X,HWZ_6*KBZ[R:VR5>'@U9KJK.54:;\E^S M*A]!_N=F5;)G,[KZ8;$L?[%>+PN^*9N&/"X>6#D?3C"%LCS#(,.: TP0!8S9 M2E\$$8&16QKV:I# ONPWPK'PZZQKG7? M1VC6[NC \*BR//K)QLI^GD3--Z'!(-H#H23]/1BB'0YE*U@;JC%83*(:C6@? M#MNPZ_"HFY?3[77V*HO4\ZLJT/K5 <9MU=*_KPMLO:OF]$-O("8,J8S3FAH*-I>XS)#S&Y$)NG M)KE_$.0.)(X20>?7@2LL%;O;3Y>4'>=Q1=NMUP_"PJY6-*3J_/FN&=ZK;_;_ M]M3I.YN5Q^1S^=NV(>PN6K??93S15'$)9"P$P!+&@""*0$+LY$"-C%/KY=!V MT&%LS&K5GT3VO]&>%9/2.=H9LA>]]LT$]U\E-S^U9^S[)FY?V'LJRKL!Q6!Y MY/X:#)Q5WAFBTQSS[K?JVF3%5M4LEB]VGE3&=4PYHR!#60:P(! 021* $)8* MY['"*?(+[.W??GS!NZUVOEU2]C##+&B C[3US$(]'1?$#+H(DRS*GW=R%^X]MIU:I&)4Z1HV2[OV:SB%X_3D/@$O/#[@?)%X]FZX8WJEM MT[G[#=:YZ8HQ^\V;KGVLV^OZ;ZKX^FVMY)UY&;*OZM/&'OSH#5NF_K3.NZEL7 M.P.BS:H:J"JJ3O'E1#Y1%AL7=3;,S&;#1,^&H\K+AUI4-R^NMX7JF?L;O:-: M\:C2O)R'6BW2GO*3LG&9".?W=4(MD#OH)WM0+[$3+,?.8[>;>$9:K7MJ/*#? MOTQ1)IF6POB-E"" C5,)S)81 Y2C7+),ZS263C'5[2W']BKYW<[VEE6S-]<0 MZ@Z?EF!I)ZM[YH;?/WUX?&>3]>\>WWT)$+\[L?&*"UA_N'J0ZW_LGN&]6PT3 MM#M1?1N>._U-YR.9Y4;M9TK4V[UM#8-(1,QRV[U$F.<*YU(#@KC9K9F'+64I M-8Z=]CZ=N2YS?![%E\W3$UN^V/<3J[3?UN9[1]7:(7<^P0D'8_^'.25H>\IN MSW-ZJ1IQ!B?<*4^+O*$/?-S,/W/VXWAA1[Z9E6NGY/EV(G:X^7REICS-*)$T M!:D2"F"8(\LW"8AQ2B#A.8RU+^DX"1XA\]@:'<#+YCMB3V%/SG&#W9%X@D/9 M,_NT-C"J50Y(/UX0A>(@-Z'#$I$7$"=LY'=UYR&2VU+=>=D^SFQ/JL8!TSSE M211R#7(W#@H$8\_$?=#?+,OE$_FZS#5<:XD%0+$"ID]4Z8@(+%Q7S3)L#TC9P)3WUDD^P+&=D;1 MZ!@U2D962_]Q) <@ML>W;H6F;[?##Y5.4TG.F7[39)*#&PX^G>2<.>%N.;'L <3>=Q_7\>M2[>$"I$?51V! !ZK^Z/S%]*O] M\ #G:@V(RWV&JP7QL.J@)L3GNJX#M>OQE>711UG1-\UB2.(4)D#2- ,X33E@ MN1) %KXN*T,\ M<[&Z+(';FZ)G8'M^;]3:1Y;5=H/P_C0&1(T%-FNBMB%JC+ ]'P/V(^\.8:@& MY1TT&+9C>7>(3EJ8WW K_[#I&SNDP3'A\>3S(WI02KV"9C!>M+936._P3H/% M\\X:L!_(._^!7OR876\:B#'2-.5 $JIM5J$ 1.$<<)YEB I,),P"OCQ'VS;H M++NO#ND][(O4MS]0'\B^_BNSIS9 OF -\W)\I88_OF!XO@9#M?8IS[0_JV?S M[?O&5NIAN?BZ9$_5O,4/\_<+\Z5,IC&'C.22&X)B9K.%F09$PQAHDD"1)S'E M?J/.7(2.C:M*G8UWWR@=/5=:3VQ)IM%[+^[580ALVPJXL55H7'MFJ@K2G;[1 M0P-II7)4S*-2ZG?Q'XH20F.9 M920'.$$9X*G6 )$,9BDU3A5172AFL M@=_L:++6:D_O9F:9*O4/.[,LT*RR$9'.^1EEPPTF"TPRK>)&-8CL$LDX7]>] MK_14JC1'B=0@(YP '",(F&$60 3.-,V$B'.GGA#[-QV;+V)U\F_F[-&=>40/ M\E5;.S5-#OQHEK<WX(05(IE+ 8DI9C'$,4>KS$-ZNTM@>X7=:*U%.2I/% M;%/F9#1]JLH-NMKUF>[>="K 2KIQQK#KTS/C[!D35=8T;:F.Y]B];99NMYHM MU>8!ZS[#81ZLD_'-"@W<_S@4@*==DX/=N>,(UN57-B_^69;@O%G,5XM9(5D] MV^[!:-*4Y]SK]\6\;94>T[YE5;CSV#;,$L34MVMGF$D+N<9W=.'[PU>N9YH=: M./]IIB&!#C6E-(A.PTX?#0GCR531H#?O-&JN"D_^N1>>+$??/2R+Q;(*#7Q: MK#\KL?@ZM_$Q<]E\5^DZ%_>/?=^[^0O9A'<5[*4%=2!R M8KO+1)^'@=UK2%Z/\ \V.B_\,OC.U.N(8LND/=^[#CE_KZ/%1U/YNM[EQI'4 M'^;/F_7JH_JN9K#I,8 1$B3!0#%A6X\G M L2\UK!0O)WV4 MND6PXSSH,UBZ^>"!$.J9Y/=G-E>*3J(:L!["O0Z8A)Z]?$;2ZTQ3OFSRQ?G( M5R[ID,A=M0=]7ZP,.?V'8LMW<_G6N+G3A C-H,P 1W%NG,T8 :(S 60B;0VC MCG.W<9W7A(R-$YJ.MI6BD=4T>F?[*AA=W;MA783T.D.$ JIO_Z\+1G[9\RT@ M=$NDOW33X7+J6\PZ2*]O^VR'_68S!]@>6M[S6?&UVOK64\=0GC*5YAHD0FKC M"=A0#V<(T!CI.-$9QM+I<6\7-=:'_GFQ; Z*ZF*T>F+(4?/=#F(_>/=E_3241*)8*FDVND@ G/ ,DX1I(&6=) M'C.2Q&HZ5U]M#_M']V.P3LHX/2:T>DQ.5.KSG&RUBHIRNIZM+#(O#+5R].IN M6QNW\[3^H!XHR[G4?Q)M+8A*$R;;43LODVC?C*BR(ZH,"9@-?0N.H5*D.^DP M;-[T+3"=)%/?=+-N//GOYNFU72!^%*LI$DFJTIB E.+,^*4: Y9R""1*=0*5 MII1[G?[OW7ML/FBM6O2'5FGG*\[(4(J/F"<6) M2 %E<0ZRC! )1<)5[G0^YR-T; ]QI3,HE8YV6E6 4*O#G(G+8"* '"">A0)]KNY:0'-[WDUIO6TC]NEC(/XO9;!HK MG@G;PRXG.;4QPAQPFIOM4T:R7!*B*FCKS;*X\]T=.6+O1 M3V@$>Z:?$\:91$;CZ*==:[I&Z MZ G$GKFD=>ASK;M%N(>8D5PC$@DN A8* ,D(!0DIRD>2Y^38'H+5.RHV-]TH5 MH^_U67-5?Q6$ ;LMW4T4V?N"#,BA^X;M$VG$7\ZW/+"63:H_HB9T\'!].4.Q M[$VX]TO#W50; T_?!*HCD=\FHQO3W\G_W*RJN>"/BSLI"ZL)FSVP0GZ8OV'/ MQ9K-2EWXL;J?;8N65;%67]3R>R%4I4]=>&4_4(U 3*7,"3;^K!2Y87_&"* ) MA2!-%-1$:T3\3CG[5GAL;X0RUP>4QM@M]=8:O[="[\OL]J88T^+U_/:X>_CP M9M+6#L?6AXFES5R(]&)IWC*K;:GIU37V?E4,!7R@UT?OZ@[Z2AD*_./7S&!R M.[8KM.C-R]%>1F*Q^OLO+X_F3F6FB!(L0S%&(%$9M2./,6"8:D!88K3%<9)3 MKTE/5V2-C? /5(VLKI%5M5/RS36(W1@[$' ]DVU'S/S;)[:C$:JKXA5)PS9; M;#?YI >CPR4=:D4>V0^U,B]1VSZL+CW9S6428KFQ\7P;?B@_.)4)DC3);8.7 MQ%*(B $G,0(ZUPGER"8GN]>-^,D>&Z642ME*/*N^1ZV#)^+7&:5G''MFF K" M6O-M:=G!&+A*_:C2/RHOZ ]KCQJ3_C ?J-XD,/9^92C=T+M:DN)YR^'*4[K9 M>E"JTO$6-W?5WQ:Z)EC&*8. HH382FP.N%8*\"1/A,A$ J7LV$>_2P7V8)WS M15V'O==!OW.+?+=*ZS (]4S;>\H%K =N-SU\V_M!RX3;#;S2VOZVLF"G\H[Z M*&7U=J-L?X?'/Q=3C4BJ)9,@T\*X>TPD@-., &19AHQQ2GWV3%ZRA^;RV>^ M2CA@G=D9P!W9H3\8^Z8.A]JR]2+B*K('*I.JE\NUA(6P5667L1NBGNR,]/%4 MDEV&QJN&[,IM.D;5Q3'UG6&V-[5A:*]XAJ_R6M7*,F@^#?]]!\MH*BWQC1]DRTSIH"=GD=MQCECE..$@ MBR$#6/($L 1KP#))12XU992.N(2*.;1(&S;NX&;Z2>S!\;*.F]+%_*MY/)\>ZDFT=KI)4498JPCI M-&$2299 0)(8 T,Q$%#.&&!*8"AASA._;).Z@*S*A-I-MXH;=/3H:?[)==+VN&[O47?8^ MJR=6S*L,OZ;MTZ[IWI1@FDK".)!Y;KN.:SM;CG.@4XUCA$0B=OOJQFZ>Y(75($( MR4WFH*SD!<,Q-?E=W#5A:_F\,!Z5.CNW76 M8I6FQN&1"<"(8, 948:7B*)) MDA&"_0;/7I,V-C[:*AM).]]]M577-U_K&L*.>ZE0N/6]D]I"9A6-=IKVL8]R MP218YM8U60/G;CF8?9J]Y7)1-P;YM)@OFL/V*@W@W0^;=*JVL_AXFBA%C4]C M_B^-=V-K8#5&()8LQYH)H>/4[YR[5>;X3K,_U(TBRZ/3Q?J;6C:%]3^I2O>? MRR/M?_-CEW;TW1@F**(]L\R^KDUZT$^UNC_W,K[0&9U ?-,N;U#.<3;_F'?< M+^PAH> WMK8\]_)X&,DA:0QCF0N0YGEFV(A3P!.9@YBCC.>F,T5M&3\3B?-D^1S?I@L^W$A[*D9??PS:RQODE)'=8L0%["[2LQ M@MR$QHA>PVPWP#A$FL(%#<:3JG =(J]TA99;^0^W>C=?F]O=2;FT[7.K/SX6 MF:GSDAY#;IJ1:+3I*O+=QULU%6K8?NSKMH_W+DXKW2Z M_K8W9W-+-5.19@HQK4$>$P1PGIC]6J(,"\ $*2R42E/BDV5]59H7$0R0C_B.3]F=ZMKT,J\=DC"U>9=D35T=5Z[V6?J M\QPN\N.-U7(]?5@NY$:L[Y=UU7!99IJ(5.$DAD"D1-C6VP1P&[/2"DJ>YAGA MR"DO^Y* L;D)M8[ET4VMIE?I[D4@KU-#"'AZ9H,.R#C30)OYUYY\<^W>4V_^ MM7OB+]YVD(>\S:CFN6[]G/^C_&ZS-#OW.NX 59S'%"D0Q\3V-I4,$,T(T&F: MP"SGG+JY^\@-3^>'8UO6]OO50K8-#EDJTW/(,'MQOLV3MG MQ/XS=_;W-XZ9?UNLQ&RQVI@5]CR5OW:+$7W==L/1HSU%>SF)=T$D]&CT M9S;Z%:,O#D>_=DV'C@V?-O;1N-?OGIYGBQ>EREY63?+4@_E:K*:I@H*F.040 MYLSL)-,<<&1\1(%ECO(4)PG3SET:VN6-[953:6S/TE6M<[0J9RD^-TF SU9M MCSX"#IA?YY,>D.P[QE>!>*^C1MUZ(.4VD_(A/(@>#1C"@CE0TX5;0?7KLN . MT=7."@ZW&:Z;@KM-!QT4/"[KYFO4GM;[7C^S'-(%4IH(H('2B M ;81 8I@!F(FH>%X(D62^$1+^U)T;"^!G3V1>?FNHL4\8M]9,;.!'* 72[!B M,Q4]L>7?U;H,Y>W2RSI4-O:V_&YNZA@6M>?WT?V;#Y/CI+9)='>PI%^8+4O= M6_G:ZLB:'?UD#?]Y$G%E/JNB72._2<2T^4K:#C?A_.2^ER20C]V;FH/ZYWV# M?>S;]RXO0"V\[0JTUT#D**$C9[G0'$O ,B@ ACH#/,LXD"ACA)N?&0$WE+Y? M%>[#*J]1Z5YVO>K<\\=C$=S(O1]@>Z;KHQ+V$M(]O8KK=LB"%8/=H,K -6*W@W9:.A;@GAT'59K[K5\\ M QV'%XWHZ:D4ZR64<=[F4-/Z#F\^[)"^LX:=S.8[_ZF.6X\-7ZE_;&QGTN_F M/Z5/,%40QU#1''"A$CN_DP).= X2G:M8DS2E)/8:4G5&R-C>LSL=HU+)VM/U M?+N>A=-QNW C2'UO#'SQ\7?_KP 0RM$_)V)8E_Z*D2?.^[7/=DUA?V0_/DAS MMT(7HHR:5$?L4QHSE",N0,)S\\SS! &64PKB1&8HUDF.+6]Q<#3]/:V M"P8>\U7 M#Z[AV(AHE_Y0#@1?16RK:CDRO/JIYYSP\.OJZ,V\YFKU[0K=/@MSM]:5G='. MT!&,Q&Q;@]>>BWE1OW^-X9AM\ :;D-DJJ$,:6],(^OUBN>U8NJ?*:BJEA+'2 M F044SNX/:D&MTM*!920$BSX=*Z^LK62CXZY;&U"G1R9;2! 'RF.[ M!4R_'#97<*YFL+7>9+C\-5=[#K+7G"^ZJ47B>Z/IN2JV[4ER1H7Y.J 8)!C' M -/,>.(T$4!*A%BJ1,J%ZM DL4WNV/SK6NW(KFQTOAK3Y;CZIJ5P#: %![AG ME@Z$;==NB:Y(A>V7V"KU-3HFND)QH6>B\^4=*^G9ZEL=2\YTEJ 8QB!GW,XH M8@Q011. .(4YS6@LH-?YP.[68R,>JYEG7?P.)C?&Z&;\$ 'T'OH7GM@:JI1] M=^-AZ]9/##HI4C_]1/?G[RAV?1+Q/OS!WB>KG,=F2/M;5?UI_EU--'SW0WRS MKLUGL]5YI[4RKSNBJ.)V^AA,!;3%LAF@B$G 99YSE+$L1MBK-<:@ZGOQR "] M-CZIM6U]6*H=_21K WXV/XM$DZM2_D7MC/;GG0&_'N[<-LY%'X _)R?91[8I M=6-L5'W$+OS1#P^OJ%"(/FR_/ T0/T^B+191 T9DT8@J.,+2]O#+&/#5,*#R M@[]^AE^8Q\!I&<%;*Z)S;K9+1L]72MP'4.2 =WPNWPM,W?>^0*17LI97W%0B" M-7@Z)V/@QDY7S#QMZ'3MPUW39MXHNR>>?9A+]>/_J)=IK(5,,AF#1-LSM01) MP!(M0DOQW<<..WE@D&GZ2Z7/GAC:YE?7GXS+L)F61[$OU^6:7;BI6K2 MI@@1DC.;[LH!5M1FO]H)VBE-!!%09-+KN-Q!YM@>]CT]HZVB7IW;? !W>]T' MAK%G4NB$8/>F/NV8A.[M 2*:9IAADF3TKH\)Z%.:?"&4RET+0%#HU M_^D@>VST4ZD.2MVCG?)1I;U-K2KUCTH#NM&2Q\(XTE,_/E3[RZFE#<0S%6:,R#MVJX5:]7ZN00",[+C1Y"">B0&QP\4?E!+;?-WNJ9 MXD0H:%MDTM0XR#B&"-",9("D$ N!*<=N[9<'TG=LKX_?V(]R.M7\I-9D5G*" M(19[4KUKN.DQKGRHK\#UE\8(%[;O5XE+.*_-Y0B_#QXI MV^/Z7@R4]#VB[X=?#OEPJW4U"WT -8;+8Q\.TX-,^ '%WM ']K1'UIO-T@YR MG&).$&02@EQ) C#*4L YT8#$',<\XRD3L5_;O>L"?6ADF%9[I;X=FJM>QM1M M\Q<.IYY?PZ6BYWKF3:):V MI6)O%E)-,54PRQ@"(H;4;$T0 BPF L1YDC"FE4R94T+[\8W'MH=X4\XS-,I% M5COW^/\!6.UA_ZX0]/R8.UKO%>,_9VJGT/[!C0:+Z)]3?S^0?_;WW5[3]4/\ ML%QHM5H9%X+-WJO=*T7&*1$H)T!3B #6F6TD:?[)H%":Q2C-8^)SC'Q=W-@> MS'TUJV3PQ7RUF94CD;7R[8?; K7;VSL<@#T_ULU[^P!#JVH/;V\W4 *]O5N$ M#?KV=C/\^.WM>%4W0OE5S=62S>[F\D[:T>VVRFU=?%?O?MA=BIIFBIOKT@Q@ MG&N 58QM.J_AEA3G&5-(H<33\6^1.#[/OU:X9!1VH+(?H;1![<8H >'KF5+V M<3O4-:J5#4EE'/Z4,MV_+OJ'@5$B5 XYY;/P2 M!0%E @($52)2XY8PROQ8Y%# ^$CC[LN7=X]?/#V.0] VK__Y%[M^<;%L&- M$()#VW?X+@2J_OD=/BB%RMUPDCEL7H8/#"ENJY[BU4-J.?S5;W>CM3Z_UB:2=J[2873:G.*1)) E)%;-:$H(!!E &= M9Y!JDBE%;&F2_C M$S/HW/-9\;6,@YL?"IL'\M4&D6+",>$@B3-BF-I6DYO-(\A0QNR(-^C)U)[R MQ\;)6[UM)EJC>+38:CZQ/Z]U[]2QS7EAW&BX1[A[)MQ:<]M=I(%\3_GH?@_R MAW;(NS9R\P4N;$,W9^FOT=C-%YH+#=Z\;].-]SZIM>W182CX>R&5_.7E]Y4M M1]FUP13KXGLU5G-[2!83D6MD6 ^K%.",84!2(H"AO10)B1DT>VRO0S)_)<9W MD+;KTLJVVOZ;']5U6 LWMNL7WYX)SW;3*CLE->K;"HN?K 51,?]YOSONUHI> M=N+=00Q$?AT4&)3_N@-T3($WW"GD5(UI!C%)N(S-=CS5QLDC&- $:D 8)A!G MF*24> [Q/2MH?&Q6GI/4E6AB3],00RUNFDPQ(F(ZFX>]RY2=1)_, L= M1;P.3:]3'\8PNN'B.=_U3P\\<.?^V7YP]:OYX'KU85YE/_]-%5^_K96\,X^Q M<=[*7[YE:[5M<3#-<&[8A3 &54 PQP!3NT<<183AE(2JT0.,HZGF_YCVY@V M"@-6:1Q]M2I'TG9.U$;IZ+O5NIS;(Q>S&5NNRL*JLMIJJ!$^';\IM]#H*-9_ M0'[N./ZGQF 252C8#JX5#I.H02*JH:@^$EDP(HM&5,(Q@B%!MZWC:X\0ZJC] M"-Y2O2]-L/%#-ZIQ0R'/7I*_=9;JE%4E(:8I@R"A608PRP3@"5/ =IA(DRQ- M$$PZ%/&<%38^U[NJ3YDMYE^!>4$^1;.=VAW*>LXC[/;J"(-:SRQ?P750QK/3 M,W ESU4L0E;QG!"<7-4#/'$+JS<*>' MXG"X6<]4TE1>EF'7YUKO,ABK&J4](^7N*^$8#@^+[L"CSM:+J%8[:O2>1*7F M5:_W=ZTH^\>SO0$+%;1V%SQL9-H;D)/PL_\=7K'GREX O/3)[J0LUF6Q1?6! MJ9:*L3C&((&< YS%"A"6ID A\\6.81(+MWF^@VH]MF.#[00&L^,SK[73/BSF M;V+Q]&1VDRM[5!H5J]7&&O@*+3=:OQ'7J7BTZSS$\4#DV&XC.M?,Z[3;1F-^ M.;>Q!& 2[2"H/S;&K\@K]&8)^549LD/+J+XRK].HQ77I!FG7TJK,OU[3%E=\ M>VG=XBR\VV;N;;%B7[\N597'/Q5Q]6*LG0T4I5+'4&-"4Y@#K7 .F MS-7XXYV7\W5=>+GOZ-ED?/4R3\@ H6-YMN\2! :)R#1)&8TIAS M+;V2/KPU&!LGW6_6J[5YHLJ*@J9II=A:XUO@Y;T@CJ?7?<+<]R%V@^I.^?V: M@EK_J#(@VEH0\"2[*WBA#K2]Y0][KMT5GI/C[ [VQH6RB M7%HQB4H[*J^OLJ0>[A!98Z+2FE[F/'3",_A4!S\M7FF&0R>H+D]LZ':[#K'" MCVJU4NK>/-C,-@7\:"-136+%R]'C2#AA"4XDD)!E %.FC1.)8Y G.9*:TY1( MIPVLK^"Q>8R5ZI-HT2@?S.Z6#E042ER_5^;+]:KJ>? MS/?A7E?SWC:KM7'LEF\7UD&?0IK'+$<)H!0;:L]E#B@C&8@SE$JJ1)(D3I&0 MJU+&QN.-=M$?E7Z.G'(=R>LD'0R?GAG9'1IG-G R_9KS:&ZPYSB:?^VWG-7EN 1[- *]O4JNX*,$6( M)&D>9R!3,K%;:0A(8G;6@K,LR?(\H\2I"]ZK:#\V0JITC]A.^6C=J!P9([:3 MN8I+);E;CD M9NU_F3^:O_W/_]+\Q/S']JOXG__E_P%02P,$% @ ]X#Z5)Z,@[*T;0 ML?P$ !4 !C86QX+3(P,C(P-S R7W!R92YX;6SLO5F76TF.)OA>OR(FYW50 M8?M2IZKZ*!12EJ85(;6DK.R>%QY;8!([Z:2*I"ND^O4#H^\[%[N\YED=)]/E M[J+NQ?(9#(#!@'_^;]]/9C]]P^5JNIC_RY_X/[(__83SM,C3^>=_^=-?/KT& M]Z?_]J__\ ___'\!_,]?/KS]Z==%.CW!^?JGETL,:\P__3%=?_GIKQE7?_NI M+!??_[CCS_^\7M?YM[[GS=_>_G1U?2^#])C^<__\[>W'],7/ DPG:_689[J"U;3 M?UIM?OEVD<)Z(_,GZ?KIP4_4G^#B8U!_10(!R?_Q^RK_Z5__X:>?SL2Q7,SP M Y:?ZI]_^?#FQBM3F$V__V-:G/Q<__;GEPO" M&Y^7?K'U_Q7_ZTFIY\G>'% M[[XLL?S+G^A??8>J4&:9J&_[O\_^X<]7+_VZQ!7A9,/D6_K%^;^O;]F1 /R^ MQGG&,XXN'C];I!L?FE5Y+B[_Y2Q$G&U^.\DXG6R>^B*NULN0UI,2M,9@.,@0 M"$P<.;A2+ ANI0E&:!?*37XKO2LB>"/^%:9__+SX]C,]^.*@4M&T!DH&GZV#HK4*].]B+/8@LJ^_[2;5UY7Y M8IE^6BPS+LE<7+PN+-,=Q=Z$ZODG?OX:EO0@2%^FLWSQKZO=:*&K]:*!Y,[4 M0N3^Z2?BNN!RB?GMF58>9&[#V9J,*&X^V4+C_^,T+.F)LQ\?\.MBN9X8LHK9 M^PA66.(#68*H)1G+$*VV:$UTJ8GR;[UX*QR(_G%PB#P[@<1[7$X7^=4\_TH; M[\3%%)&I#!JE)P9\(MJU 8]:.$3N;-1- ''CM5O!0?8/A_UEV0D8/BW#?#6M M@C\'=&5!QLC 5F]*<1>)?.'!^N"4MS'+XMKL#K?>O!4D5/^0.$BB(Z/BU7P] M7?]X/9WA[Z2Q 0)NOG4K M%)C>47" )+M PAL*X)=DPC:"_TCRQY>+T_EZ^>/E(N.$*^,Y+Q&[(C"*!H!YX/5;0<7U#I46LNT")"]R)A6LSO]X.YTC MGY2BN/?D'AE&^Z42W !%411>RTB\E<2-:N%LW//JK<#A>P?'H3+M"1@OZ=MW MRT^+/^83PXWF/!6(Z#7MFU*2 702='*,9.68\:8=+*Y>O%WJBCT35.PIT)XP ML=D:WRW?+Q??IO.$DU"8SV3;0"5!7[+0$$A0P(PC)M"&XG@[8-QZ^W;HZ#BS MV4RT/4'D_6*U#K/_;_KUS'6*2@@O#"$[$1><>XB>W&YNL\LLZB1*; >0&^_> M#AX=)SP;B75D<%2K]V*)84-WX5)%- PB2^1))\XA<"7)L;8QJ!*3YH?!X?K; MM@- QRG.O44WLLKKB>CL_9?%_"(#0VQ*R5($XC^!LC*#+^0"24G"R,YJ60[+ M<-]^XW:J[SB5>9 (1U;_1TRG2X(N%_'3=#W#B3(,1;2*L%HH-#+.0A35VV'! M^Q2%B.JP57_[C=NIO^,!S MD<"#S]X9Y[0_[*C[QNNV4WS':^MV&.@X)7FP*+L(!UZ>+JNXSD[@*J1)!Z>K20KH M?90.*(91H#"04*PU($3A+@46DV^1L[[_[=M!H_L49 /1=@&1-W-Z&HEC^@U_ M#>MPSA8)AY&C*T@XRDNR>O1=T#Y"5I$SYGW!V.98X[ZW;P>1[A.1#43;!43J M,>[R95CCY\7RQP2UL,Y0Q.N8(R\HIU2_$V"Y4 $S64;!&B#CQDNW*YOJ/@>Y MOR"[P,''DS";_7*ZFLYQM9J0$VR5EA$2"@9*4T#LL!8%RN1TD=F$W ('-UZZ M'0ZZSS;N+\@N?:L%T"&C:@W M1H%VRBNC6-'RL-CS[CNW0T/'.<<#Q=@%"(CPDUK&L4A_^_B%Y+9Z=[JN]S9J M9#WAVFN1N(%"=!,W%$U%*0O8*(A>3[QBBR.KQVC8#B0=9R<;B[D/T)#DEF'V M9I[Q^W_''Q.#1IJH#.@0,RCF.?B0'?",0EI).V<\K KWWM=N!XV.,Y>'"W-D M-+PXP7FN5<2O9^'S!%5$Z4L]6;,6E-46O+>QUHX6Y"@Y+X=YFC=>MYWV.TY? M[B^\3HKQ7T]7*4H"L/<12>'60"X2$OOI#VI*%X^; ]/4# M+]X."1TG,5L(M"M,G-TS.6-"*!=]U 6DLN06HW/@%,M@M2O6Q>(,.ZR.\L%7 M;X>+CC.8;80Z=DW#63KM"ML7UX]82C%IYD&D6BEL70"7%0>>;(A<".G<8.;^D7^UW$?O?[KZ]^__CJ5_KFX[NW;WY]\>G5 MK[^\>/OB]Y>O/O[;JU>?/MXD?\M;VD\_M<$5[AU)/_!^]^D*/H?P=;(IA:M& MXEUY/9V'>9J2I5BBZ!)J2W&7O&)BB$BB7/ 2.!#2=@W="1Q$?.ULL814W M(#A_Z=EZP]EZ=?&;JX6W"UW[FI6+=[Q8K7"]NN32>Q(7,9%P?N0C?I/S>>EVS$6A\@ M$*$H5LXD$K5GX)@V7 NOI7PL:MD?-;<(&1<\A^CV7I@<(N8NT/(RK+Z\F.?Z MQZO_.)U^"S-B9_5B_3(LES^F\\__'F:G.$E<>JTY!T9?02GE:#UQ!&]3(HYT MX8_>.-T'/5L1U@.:#H+ 8FAM= &R7S&NSTM8IKAZ\2U,Z4,S?+U8?B0.7WU/ ML].:(7R1TO(4\^:@&E?KBQ-JEJ+2GF?PH5[@ER)#Q%# ,A59Q)A3>*P[QC[@ M.XC@<;IJ# ?*XVFO"[ 2'_6BY^H#)J052)S^CI?=HQ?&(. MA"'Q.F5RD:T-X6/TC-.Q8SBH-9-]%TAZ,_]&="^6/XB)"8]!*U-OEI="8D%K M(09:#"20P+W@I?C6;OOU]X_3R&,XI.PMVRZ0\7Z)7\,TO_K^%>TMT_&;E8AUDC MR[/XBLOUC_>S0.*8YQIF?*WIE(T=S<*5S#W((&M%.0G$&S3$2_$\IFP,>^QH M:S^3\S ]/3C237(%S83>A75Y1[R$6F3^%L,*/]3^K^_*7\AX5H%-G":I&*D@ M64LKBVD!@5D.20L;;>""\<>*:?;!T*,$]> B-P%1.[&/>%1V%5.>O;9VV3G! M3^'[F:#J>O"<^<*+ &8"R2C76ZVNT/)0')F,Y,JQQQJX[A?N/T1-#VYS$_0T M$G@'T/GS8I'_F,YFDY*TY%:5"G2"O% 67*F=W*27+')31//=ZN+=/7C!36"Q MES#[V(6N_/3?%_-TD2,P$3,6 TE%27Z=U!!J/P0A?/(R,/38^@CP7D)Z\'G; M[#H'B[D+M)QQ,#$\,<:04.X#.>LR*#)U@>R=+;Z@=+44:9!0:)R>>(,=>^TD MR ZBGK?3$*>SL_SU/&_JD[\L9B3T577%US\N12-=,$;K D:2\5/91O#!:I#, MZKH/!F]: V1;VL:-A@8_=A]$15W8GFNE,ME1J1.0=4V, MHPC('NNB=B##-/W =4!0N\%//6P]JZ4)C%;GKQQ M4(QRH#AM[R&9.HR'*2^U"*'Y:?N#Q(R[Y0T'H0:B[P)%+Q?SC3S^.EU_>7FZ M6B].<'G!UT5+BHDSR=?.EE!R""2KJ,%SSD!XIIA-&(-\[-;47K5#6] U;EYP M(&PU5T@7,+MGJ>22G8O&@[:5!ZT81%GKP*WT68B8M6QMI?8T3X,E!P>"T('" M[B#8>W017$MB\"BDLIJ8X8P<2889?/((AJD01&8V-W>^MR2MFWUO.$]\""5U M8:QN'M/D1$6R=#4V="R-A[BKM: ^P0Y>#*FTMCL6AND T]D M!CO4.PJN&JFB"UB]OWCSAJFSJU3:*PQ,D\TMF8%*$<'G>K-<)K31DN45K1VE M>\@8^T9M&QW?K:P^2-P=>-C7VEF=T>^<$]F*"*Y6:"H;!3CO+.W3=<*]S;J( MQ]K6[[NO7:=A[&/@0;!RD*"[,"XO5K7&)MP)1"5 M3> D?2$!:8C>92@"N328>'"MG:*GJ1HW\!\(3HV5T0? 4CH].9V%-9Y=4:FM M&)?X!>>KZ3<\J^I\NUC5@LYWY5/X/M$4=^;"!;EYN="NGTE^L2#$*"/M^DZK M(6XJ[D+BN'F!H: WH)JZP.$'7(?I'/.KL)Q3C+&ZQO"O6*9INIX4Y5$K,MD) M^4W*5BW"S"0 Z4-@=I*&>"H-K5444EH12M$50A'<( M61EPR?L8@]%2M7:[GJ)IG+''8R4V#U=+,Y@=MXG;^XTZON!Z2O_T)B^M.KK= M?,4QVKL]PM0Q>[U)SX,4FQL(!$O%>23XL "Q*$*/,+S]R<0Q>KW=3)J0K-\M M-Z_-F[#X/2XW;;4G@KBV13A :VLK[7I2Z6P $[-+)@A4S8^0MZ-L[$Q68^0\ MGM-JHIXN?*Z;?)VU;G]QNOZR6$[_$_-$HV7<<@EU!$@MPM#@=2:7DNGLH[=1 MI]8._>,4C9T$.RK,#E)'M_!ZLUJ=$B\VE!252Y BVRP5!X[;#-RB44Y)F=DQ MH'5&S=C)L!%@M8<:NH74]6$3+J>$WDE:&74<=M8:(O,DMF"S418Y5\/ND/N- M^!@PW34"N/952!<(NY8M?G"C-^BB1%V'IB4'2G &P2O:]UV,CN)RH;#U%?0M MR!H[U34PTEHKIC>TW=GON==.)F)!LD*ALJ+]WAFFP?@2E-0NB^:QSB/DC)T' M.QZZ#E)$GZBZV.Y+9,YP!&[J15U% O+"TVK)M<[5\))SZQXK#Y R;@W-\=&T MAP+Z1-+UO1VUT=:E0%I'!@K)T$93.+!8Z@A94X/>H>&TJZ?WCU;_29-__^ZLWO]..K9MG5I]XS4(IU M)_8:Y5G/3J,OX7J)3<%]D$%GT*@,8;,P\"HC6.\<[7]%8'-WXP%2#C]*/'_@ MIWI9>Y(%L<"M!J9Y'76=:-&A,>!]<4C!" N/SN\[*&>\H6#<[&@+?=\]/]Q; MPB/6]ZV6Z]J3,9^F-84/N/PV3?CB^W0U4=*JH!/6Y(>OS3P=A,@L2099,DRF MS+:J[Z,77$,'_72%C(?>W4GF? \]+AH*M0]0;(XLSSA8_;HX"=/Y)(KH$GI3 M=VAU=CDC^LW!9;+%E'JG=JM(?SMDW"5@''BTT>E=@!PHX!%14MV(R<M@$C.S1@D&69=,4M&"Y&-K]P:,V42GO6E] M5G&7BDZ.5/?W/QH)N .(?,!O.#_%JX:-*H4BK0ZT3C391O+7(;J(%-G;(C%Y M"NI;]_2Z34,G[NF>.KU3-GN @/L!R&N2TWU]-*Y&,JU62/_+FT+SHI) LK66 M>TY\"@'.50>.">53T5H].H?V SM0N:X,#L,%_>#;# E=9(67JW?E7-6K[*; MVM?,@0 ="T4'GC9G7Y@FL<68N7,N#W L>@\AG>QI;8S6X:+N"#&U[_AU__#C M8I;)D[,RL'HHH@)YA\'7IL(E %,\^:+0.-N^(=-#U(QKB1HH^U[X'"SW+C#T MY^5B5!6=!.^:EB85'U?HH\]KK.ZD8:V-A]A5K M![= +IL[G0_RNMK"DU?%2@HY41O:PD4B<'.10)OL*&"4G*?F$P$>(J:3$K V M:&DC\B[LR4>7?\!I3$U$D,\[4N2@&045:!U&) )8<,BQ<&Z-: MUZ<^3,VX>U(CA=\.U]O(O@L-AT-1. UT ZL\X)RG-B)L7^60ZGU8) MK:??\)(A'UG.FH$M=71321)B3@6,E\BXR=&6UC-"GR!I7(=H&%"UU$(7L+HC MI@F7J!7C"40A*ZNX2Q!B($<@H(A1$Q-^L*E]%T2,ZQT- YW#)-V38WW5NV*B MLD.4:,';[.NLL PNT7=>Y2Q,08ZJ=3KZ'C(ZJ7)O[$SO*>8.D/+[8KZXR<7% M4.6+A12\5#J7*B!& JI-46/T9#&UP&)%+H3^QKAYDJA.JMG;H*BM"KK8JM[, MUTA*6=]@YSJ?FQ&ZK"A9) >A0AV_8C($ISR4K+-C7C#%6[=EVX:N<<.UQF!8 M#*R7+M"V:=GTH. FJ3 F,G<04IVK4&PD@<4"PO%@=1EB-L[C%(T;P@V+L(:Z M&!5;FY*GB^5",<2&KP>7S220IUD$+Y RKY>[58&8? !6L'9*42;F6PFG!\K( MMG[EN"';," :4.@=N%I73N+%Z?)T?DI\G'N1B_GJ%RR+)5X.>\;5J^\D3-+E M=!Z6/S:>1NU17\^E%YO\VX6L)IE\C\(2.1RIWIP,%.WXZ#F0P\DR*UI&V[I= MTH#L='*]K(U[UXO:NUD!Q.+Y:OX%YUB/K:+E4J9@0&B-H&QFX+F2H&2*-@F6 M6/"#H/<.*9U<0FN)O,/$W86#1U[IM0C;%QDQI03(-2.SGQUXKVN$K67P*DUPG8"B/^F6!D?]%V8$\N&FA>-!"X=#YX3J8V;0*M(_'A=(# /-8>FCEI MAUK[UJ'E0[1L%TZR9P*7)A+OH!;S-A^_A-4T31PZS;FU($04%/F&"#[3=JH+ MSS9JEI1N?=9W+R'CIB#:Z/@)X.PN\ Y1\^MT=KK&/$DJ*JUB'=/"Z8O& (Z% MVK)7LI@$5\ZWGD?Q "GCIA:.@IQ]A-X!=OZ*T\]?B.X7Y!B%S_C[:;T&\Z[< MZ05PSMZOTU6:+5:GRS.C?77MUV$T3'+B6FZ.M1*$4F\!TP*2P10I7.O;T&TH MW\ZF/9>[""-H\QEA^,RX:R^4D%I#T(S5&^K$'$]8;Y$%%$BN9FX=U>U$X+B[ M[!@(VA/$NZNS7ZR>B_-N"Y;('%>%? _.D*2I)8/(ZLSD'# 5A\RQUD4Y.Y(X M[M[>+UZ;J+2+/,3=EC67NKDH7BK0:&I,W'U8DF[V_SE9OYT^O%I&>8KDGD%QSQO M?IJ=027_[]/59F3LI=(6R\U?K-?+:3Q=UYOXGQ9G\QXF&E%%Q RNN'KT6A1X MF32P$DS@EK9?'&2B^+$8'+D8OL\E-3Z4.EYG-W3S"+N27,;@H@+-ZDD(1P8A M^5K+J8(0+-F"K2\H'DCRR#7\?:Z%(=3=P<'7/9Q>;HB2!RV0\]I4)U"8Q3@$ M9A4D8YVSUG(>6[>,>(2<[9R>YW+7MI7O?RO__;N[>_OOKP M\=7_^,N;3__K)C^-&KC>\YHC]&]]BKGV8[(>F>%F$4TH)D(IDLQ1E 8"SQ&\ M-3QKI6UFK:.>K0AKW-HU")DL#QFDKY7&*3+P,5B0O!@CI= NM#ZF[ZFU:WLL M/-'H=1=Y=^##75)_)I%J?!=S^G&U:68ILC*BCNL2& 39\:C)CG,!PC&?>=0> M=>O8YE&".L'2'II^"#0'B[T##-WBX;RC85+%T#[O(0OR^10J"]'K!%9'F;+G M)*'FA1[W$=()9@Y7].TS^X.EW@%TKG7L/V]:&35FU(:!\()H'0U"/ZAA,;% M&E$B>9\+..2)G,(4((22P-6>NN@*M\V;SVY-W+B)J $@-HA6NCBV^X!KD@[F MBQJ[B^;,";6PE0]5NVCJ.N!;<0:)>4LF&+W+K3M!WD_)N,TEVD.I@;P[,%/W M)-52L+S.68,2ZXRU8 CT&6M'PN!%RBB\:5T]TWDS["81V'X"[@ BMY/\;^9W M,QP?%K/9Z\7RC[#,DZ)1:EX$)(MUFHV0X ):L);'K%4*3+3O!; 3B9V$:GLB MXN[-L,'4T\7&]NBT-9*2BQ$1M#2QWG_SM$.G3()DH:!/7H;V'6L/''PWY'RI MX:"PRPR\7;2R-\:^;HX@:34MUXVVPMNRFBBO&,_!0,':>,K5BMFLR4F07LJ< MBE&Q]W5 M=(WG[:'/CMD_8%I\GF^>LAFR7'L#2UI(&F3BM36^K:.\M0"MB\_DMY('VCX3 M,2Q/XT::QT1Y5^CHP+_<2/IL*N_UJL"S7>7B@N%-04Q$-CK;9(!+\I54J!L, M:DF!6Y"%XBUC?.L^0'N0.6[(>W3+/: .^X7I9LD]Q&%"G+9$6^>R&0Y.&(HJ MP>@.;3>,C&N_:8K?*E5^ZXVB9=1 ;+L M)<_>"]8:9L3$DYS&[WE$+-QH+)/X#0M4%W3_%(0 M)V' $__]4D6#M:?J)E6TBU8.#/!?S?-0B2*?O##<()0H7)U5E\F790:*\K$4 MGZ(+K4_9]DP4#=;,:N1$T2X::(JCHY9MOWSQ\=]>OWWWUX^#5&M?/?T(1=H/ ML-*^-OME6'UY/5O\<75Q/7LCE3"9H,=I5[/<0AWK!BFXDA S4O0Y7$GV'7H: M>/WUF>^7BV]3DMPO/_Y"8'>GLI-CND,1=$^P,*2ZNCBSNQD0!0IXLK4>K/>1O$B> MP"<*B%S,MOAHC62M2W1W#T2':P,_L+X?C45W$7T7R+F1':^I[7F:SO &4Y\6 MN\I3L.8GNKIA-@G;WX MH7[FUG'C3#+$4&&@LB-_A>)W8,$E1A)SF%HW&GR"I'$+$SJ$7SL%=I QOINU MNA3<>2G&I=0*QN242< $.E!22XBI",C&QF0Q">5;GW-L3]VXI0;=H70@M79A M0N_R]B*EQ2G)GB2/TV^;DG5&7,7H&'!6.RI[YVN#9@:%:7*^$8V7K1,\V]#5 M6WUL&U0\";X#%;0[[/P9[.;XN5YU&@AV;^;?2.B+)2U:\G"5U2I(,+PV!$6# M$+.N%VLXQ7_T7XRM4ZJ/$M1;T>R1@+:O2CI%V/LE?@W3?.%S7,PE.Y\F]F*U MPO5JXE((WHH"UDE!?+( ODY/0AVXMYD\CN:Y[/TH[:W$]4B8;*[$3L%Z8>3? MAQ\;"V\*<9"2A6Q1@7(E08Q&UZ!?,*V8*\WK#9XDJK>*U"/OO_NHIE^?;WE* ME$Q#G,XVCO-$QL"%YA&8HJA+%2G!1>N@F""#=%[%=!3 W:*KMP+3XV'N$ 5U M"KL+*_X!R=$X1;+;AJM[O1(@#M$ M-9VB[6("<=KTOUU?7TO%&L%D)MDE6E *R9@[C0BN&)_191NP=5)Z%_IZ*S$] M$@8;*:P+.&Y_WCE!DYDM/(#=!/,I"_#:"4C%2;2:D^%O?4]T>^I&GBY]].J' M(93609_@!SBK$?_J 4$6K;(TRM(.P&C)<9W!"/ M(U5YM5)7%Q:2PJF+:ZSI/TZG2R1N::&M?[R?A7D=^EYK<[_6CTRNR_JP9DA9'$5I721E[O#VXEN8SFK(_WJQ M_!AF>#6'Y%>,ZXG2C ==/!AF/2CE&-#VDJ%V?[*8H\VE==9Z1Q*[+/DZ&C0; MJN]0?'YJ=N1,TJR;Q^HUB?NWL#YG:),E/6.?UN#+,)NMWI6'^9]X@/FRH^,U(&4UF_<]'HZ#_-TOR 92JETRN"D M+;3@(H?(&0?M,$EEM1#-*WUVIW)<0WKLN*F5NOJ(FZYM"YNKC.^^5KVM7GW' M99H2OQ-:20JQ&"A.9E#,DV?#O8-0;'2%1R5CZS/M)XGJ,DIJAHM'=N[#530J MZNI%T$O7FKR+*Y$MEV'^>;.*5Q,33:#W*DA2DU7GT8%G)0.7Q&,=G<7"K6&S M=R^8;O6F+B.:UC!J+_-^XI?M13@)F /QEB!BO90=6 +O@P'R$GR(AA6KQ]M( MNXQ$AK)G RFM __N52F8R UY]3U]J4OK Z']W;PR6_]?DUG?*)S:%%^2'*>) MUD+]"XJ\;O[BVB+@$J?X4ABLLYFC M3JT;CAZ7PW&+E 9;*QW#I(.MXS";X:S4N3++:FMK92D4<)XA!!^SM Z#DJTK M4(;?#@8KB^H3XCLIL9O^TH>QK)AFZ&A5VJ@W@Y0L!)GI.^9\T2EY^O6SP^U@ MI52=XG87)?;;[FIQ\C7,?X1Y_B6LIJM%>7_MJ3>IW[+#U:,/;-#4:GN"&_6Q M>K?\'.;3_]R\X.5BOEK,IOD,^_-\_>7ORGDH%V:7B+W"*7FV3F-@@-EQ4$D@ M.",9.($RA,!=$:W;93MTE6:+U>D2/Y$R?Z'G_FWBDA)..I(< MYZP>Q05PK%X<<(X+(8R1L?6I:VL>QDWC'A_/=UJBCHF)AK%C2T/\+8;HH_>9UENQKH"*E6E;']+^VJYL$1<Q(YKA^6T,<;7$2T51ES\C"W3QPV4Q_;VCA[GWZ4!;N:5:.8^$0C2VZ(!3" M!'E:/H(3Q8%WCFD32XG8^NQA6 OW,7W!?#K#LP/!N^_9B/K:2K'>%&$E^)(, MJ$*+,D:M-Y6>.K/H?&Q=2[8;A5W;M5W0YX ME-K)&($,YR20@U6*S&,N$D*)"5(( MVJ/U*C>_DM3!/C[)0L5D4(+E-6,9TEDU(R K0A>)2K!1MN^N=^U=L++7KKV3 M6CI()#\@K^_3U22;:$L(9.F#(9MOZQ6RQ"V($BUY'-:XKO M"74;Z*$#1-VI%;S%T_V__0U/(BXGTBG#/'%84JV?P: @6"^AU,L.Q6MR=UN7 M\Q]";Y>V;F?,W,DB'TF!'8"U,G%.>7%&12,-1,U)@=@:R_ M$X;SDIUNC:'["!DW:!T/3@1* M:(KR,]-UFE$P5F:M;>N.8/=3,N[)Z6C8:J"6#L#U/>$Q[1C+524@>(NZQ5?S,G<9[6 MRI>-A^I$)D>4,V"U[[PR7M?4I8(D6%)(?QM$Z\J_!T@9N<_KX*%E"PUT *1/ MRS!?T9OK$?!'7'Z;UNX0U^Y"7'&W^D2/7-W_5[\N3L)T/LDL%UD4V6GCZY"K MI,AL%PY!^Z!KJIO\A<;H:TG_N.%"$T M.M%N!\C^R\<_+[[A6Q8"JZP"*#T107K'@HH7D MB'25G"-V- ,369'991-]\X8"_86UW8#N<"5U@+3K*^?%9YRG\][)=U90U(S\ M&\VA3B.G&#[0=S+6(V_O57%"L- Z);PM;>.&PMW@<1!5=@#1Q^.P*!PW17#( MW@50VGKPJ 704G/,IIQE:GWCNN-@N1LPME-:!PC\[71.@OP:9K\OUI<\:.3> MIR3 2&_)T(<$#I4%ECPYWJ8@;VX0[Z-CW,94W>#M8!5U +-?PHQ$@Q^_(*[? MUD]7)=:(CDNF6504PCF#Y+V2U8Z%(]B"K+9[=]FW/L]XB):1NTH/GJ5IHH-. ML72^S )BDLXET*K.?;["T0T\C372"JWO*.6\QY0LZAC56S4P24[Y X$S70;2< MMF3MHCU25?8>*!LL/AL:96WUTD&'Z<=O?[WZ?MY*^T5*R],ZCX%@CJOUR[/I MV1/GDRO5)0B\BM,8#CZR7"?.>,:24TFT+D8[B.!Q?:TAP7D\/8X_*FC[=@"3 MK-$R3 429P$46@TN10E&@NR>@QE]\+)'M?I M=U))!P')0W5^IF3E2^WNST2J<54 9XH#:WTJK' C=$^ENX.AJ;G*MRS1>>%]SWB%"]*4 RUH6K 4DJG73GK__PMV= #5DX>XNVNT MV4]6?Q83JV=G: >)AC:4Y,G_5@B",XW!6%M*_#^%NT=!RZZ%N[NHK@,HWE\3 MFHU-)6H.%IV@U:T"A.QK1;Y562BKF6C=6^GOO7#W$- =KJ0.D+9UM6 Y MN=DRVXCD@Z?$6QO$O_/"W4/P=K"*.H#9PV6$.:AHBZ1%4J^?2U:O8I*<1*3H MCA<;N(Y9 G).GB6F.G>'@A^;-)>&9U[BK0AU MGT+>/ONWM5+\UJ6]3;30-K#H#XN/!>G-#*F_XGYI>+U?JAHJX7A?Y\,9LM M_JB["OW+E\3&E':6U>JBWBM%31M('$I-_F2\QS*J4*LN_8%DL MR39]GT2R3+3Y6;!:UP23I8T+30;.8Q#2:*U2ZZQ@$\)[Z5XV-/2/K^7=H>W/ MH#W'SY603T?:')XJ\HU"),:X J]3!,5D %]OF$KRRWSTTD7]_(JUCW#3>UQC MWE*K74YD>1VFR\W5B=\PK$Z79S-1]RF9O?]!AQ>^;D%@H_+5RS?].EVEV:*^ M[-I T)BTK6- _<9ECH*#-UC %QDKS+C UG,^'J/GX*+">YY]-6?(2^8%!9 @ M;:!5E"B0#%%F\%8DR1)GQK2^W?0H02/7:[7"Q9W*PF9*>!:FI1:L7^=T[^F) MVSVXO>G9@H%CF"*5I>%,&9"FGHXQE\ [;< 8'Y./L3C?^FKK44S1B]4*:WIL M(^O\;OZA[LI+VGLWP^.O%H9Q7$2K(SB#=7I0W7.3**"*S,$7%TP>S#IM26/' M!FL7]#QHL(90U7.T80=<,=KRR8-;L2$O!#T*Q!!#D"9PR+8K9C)@L,12K")F6D#)//JDC2C-,QM;D-4)$H\+F(=@VTA[/0'R M/H;.C^UICXU.4;SD54DUO9A(9 ;!H9"\!.D<:WV^L@59G0"R%10>@EHCO70* MM=7EBKUHT!:EBRE5)UHIXDDYB-I9*,8'E:Q*V+P7U39T=0*V5F#8 FP'::8# MM#TR1C)(QHHK'E*N94@\2P@Y^VDA7':#N MH.E:N0A1F*]746QMXRUH,3LAP!HF1:3%9_7_&1/;&C,MQ\3NHL .P/K \#_: M0$(NRH+WB@/9=04N< N1,69U3C;+UEOP 3,9^QP?NQ,2MIO)N(M:.@#70[?R M0W**"Y' ACKH#[,#'W0!6J4B!QW):6[=ZN"0-AN#GV#&_VG&,9X1;*;*#B#Z>%\'%#IYER-(72^C):$@,%8@ M:J]$%L@5:]U+\+]*,X[#C&,KI76 P'L[/10=K6>)B+:)4RQ8AU5G9\"%HFJ1 M$&WWDSCD/P=K"*.H#9M8/.RV__;8I+(NK+C[?X#6>;^$Y[FP2Q !F] M ^4K0Y)^Y%+R(#E#V7Q\XW:4C6OZ.LGRM-=A3\B\?FIYE[_S=:QBS KKC-00 M2V5.0#0Z@9#U>-1E7V3K.&4G CLY86Z(D&T.F9NHJR5*\BYL#YZM,JGP >KK[Y+3B7-4>\2 M+2 MR?N^U>H$LRBY@.08;6\8)3A>$EB&WJ.)6JK6;L:#Q#S_,J(VX&RCK2XGZ%UO M:7G %=7['G/X?=0GB6MT^?3Z>S[@IBG1?=<"<\)HF$0H7EA0ECGPF#.0UF,= M!:&Y:'T"L1UE!S=5//U*.JXQ99C=D/F]S29L\24(!M)G@KS?7(ZT#*+3:%Q@ MSMO6EW%WH:^?#K&-D'2GJ^)0RFJX,0YLH?;O!_+PPP:Q5@/V_=@2:2PS&9+6 MP&O%@6)U$ C!"P2&S&+M[V!;)]&.9+.NVGZEM#BEV&=S$OEV$>;553@_]IQ_ M)O< *3HB/5RMBN038X61*+++)!2CP9L< ;40D>5(T&Y]#> O(TE>9&U:;/ MUK6^*[\M;>,&K4=%9$,E=0&_]\O%5URN?[PG&:YI<=7;C(YZF:MQ0] B0:ZR8+L!VM8S>K;_@\BR,IA@] MG:^E2\Z$#5%A$5 6;H= N0FT\EKQGH;#F(>W6U(U[;G=L]Z^= MHCJS@&3?\VE:_S4LEV3@?USP^.,VA\$8(Z*L&4I-BZRVN4CT(R^HDDG"R]PZ M7MN5QJT :?XN #F TIY/EN4B&+L*N]HFB!]^_B"YF"W9.6YZQGEI,5D+1B@D MERYJ\N9\[3DG>93.N2Q;%] =)SUS5]J_X\5QW27WDJ6 /BV,)E%JWODFQ#U[-(N.R"G#OG6:V5T\5>>Y>KS62)BS-B[D70P7G@Z&K. MO3!PS"?(PB:;LX^Z^=WWQRD:%V;M,? DR/961Q_PNC:"Y]?%:5R7T]E='B_8 M0Z^C8ZJ SX5< DX!>V3* G=HB0F8%,W97\ M)L'1QA"$@U(XK:PZ!=[K(,$6S3W7UEC7''J/T#-NYFX$,[>G*IY+>I>]_*61:"9?< M$C=&!!Y!8J8UEC0#+TJ P*+1@G/+7&OWZSXZGH5OOPLR;MNC@X7?A;-UR<6' M\,=O)*;E-,Q6Q-&[\H$TMOR&JTG.3B4A"MB/ZX%9N^I)( MD$8:4 43U':.@$JF$IUD7-IGZ8/?.,-ZH+!D8 5$ M3>&-LK5K$(\9C#.))<=+\*VGI&Y!5B]SZ5OB8=M"LSV5TS/>*D/G/1&,\2P; M92"G4-N6HP=GHH)D(BO)U.C>DF'Q=E M_0=)\YSTH$O.&!B8PFGWC]G7AO,9N%(\!LDD$[<*].]&AO<\=]QTP5 X.%2 M'>PY;S&L\,MBEM^ % M1_!%N2 4<=*\[_W#U(Q;_CXTI!IIH0M$/2BKMY=-.(3)7H=Z"5V;#"KS"$$Y M5D>EH,P)@VE^KO(T5>/Z/^/&_/NIIH,]\4&.?L>+Z/6RV8+729;(P"G49)HY M!_+N"IB4:8U9YSUKW;]Y>^HZC=[VQ,6VL#M,27U;NTV5ZX1C$4)H P[/5JNM M:1,)+A=;A'1%YM8M!AZGJ%.@'8B$;0&WNU*Z -F+E$Y/3L_.'I#(2-.-QNC[ M&6Y4-\\O3A;+]?0_-[]_D/U)MK9P9!XX1_)1C%?@8L@@@L=(WDH6HO4%VU:T M=YJ>: O<413=12GS8P*>*,M\*MY"SL2#LB:"8U&#S=$5QXP,S6=^/$9/IQF2 M(]G0717R7,HN-M?>WR[FGS_A\N3L^GO;DHM'7C!(N<6V#!VWU**4X+!$4]M5 M2%!.R7K=P@+WKDZ:X5JZUL50QRIW7H?YYRG%:.>]$W!]V:^TEK3],9W-)LQ2 MV.Z2(N>Y1%#USIY'RZ'.G&"U)WLJK8N]MZ'K6918[(*Q[K4_' M;R0NG)$4<7%ZK6G')">K9=$,0HS5#5 )G+0*6.2VD'O BVN=%GZ:JF?1-NH0 ML#563%]0N\9$5!3ZUUM2W <.BM$75\C1P&"R\"X+U;Q?RKV$/(NF4(T M:?X MGXL3]GMML;&>?FO<8^+.8P=QN!XG_KANEI%:9,85H,L$-X)$/8U@P(2/T?D2 MLVZ]-H]=T5KO"ZSQ+SU+E222F+<4[B6M+^[GAX&OSEU*X$T%'$_)P MK1.?HNY9N%R[H.CAJM:FBNI@-WR$GU]^_!;^]V+Y#RO;(@4:_L@!#A-4E0B(80ZP#AT'B@*+*=GCH MWR,"O#K.3L93O, X(*>03$D5($9;0.L<2'H2%@,JI8.@/:(R.K!'-?*.:X$B)1=W0TBN*SJA43% MK'4DJ]#Z?.%QBD8>;#Y3&!M!!(N\ ,@\+Z"\K+*>SM]."$ZV0!:%9K6$.9&B% MA. X@V2T,YMZ5M\Z$;<-7>->4QC1-NVIF@[@=KRZ1-E,QF'9NW47N0F)%G; \-K#9*Z**R\K;YO7:\QI2TT1@/(162D*TK MHV@!65LF%>O.! ]3,VZS_:/O@GNJX5DUU;^UA)HWU7_@^4,UU=^&G2// M::T]I ,J3;U>=#^7K).VSCZY 1(&5D=+,K! ML12!E:)9_3LM6A?9/4G4LSCPW 4S6V^+>ZFEB^WQ%9F?Q0_$H-"LP)*U^HYF16D1'%N]@45:][XXBFB1N^HWQ(&MQMA--7(J"#;7,D_E]:K M[PE7=Z^=! E M.9XA9EZ[00IC[5/[YB$$C-XX?P",'4TA7=BV6T.=-GR'V>9X;5JFF"_64T(M M%>H,J8[F)H]3@O,I@-4\N>BLBFZ #F7;D#9Z2_T![=P0VAF[?\L'I"5T2CX( MR?==G$T_;W1UP8F6TLDZ^J0H5J=/(*T=KAVD8)(6Y)88\V0D\/1KQLUY#6BW MV@FWGS07+8)"5ICX"+/7>+7%&[V9:ZV!I[1IA^P)]+3C%^8,\XR%P 9R[Q^@ M:-R$U["6J*$NQC9 YZR\7N+T\Q>22NT6D1(GTH4!A>0I>IDD2!%++BP46AJ[ M^%#GSQTW5S6\:[2/^#K1_,O3U7IQ@LL/&"EZ6$U<]M]A?GG34>KRZFF%Y;-"YZ= M)D S)W@=S<;!>Y5 *ANB=LY@:GVB\CA%6\')/2\X#:"+L6W-I_ =5^_#CVNC MU2[O6IX+\[<" MDW]>8!I:_&,CZSPH_(#KT^7\?#C(Q0H17 =>G(;@4Z[Y!PV.I./GMO,WUF_G'=9CGL,SWG\]\6,QF MKQ?+/^@#$^5\C#H%T$Q%VN0M@H_20K#:6>^8R[YUZ\L]R'P652F[X.JV<1M: M=1WX9_-B;' ;'5RNY,V M]L;45UQ.%YGX7*X'1-;YC^0GO%FMR'&89&^C#Y$#^9S$6^$!7,J6I!><2CXS M\DR.@K3;E(U;I=('\@[25K?6[7WXL;G%.(DB.)MT!*VJP$AZ-7_'P =IN4>C M@FS=Z.=QBL:M2ND#,(J&.&;->"[\ M.% ;MXBE#XCMI(T#-]17\SQ0?'KM/C:)LA863N>?<9[JQ<\](M+''G=X#+HU ML8VBSNN7U6^][RI*N P2&)D:9YT&]/6N<9)D93@*$,I$9Q+W2K8N"MJ)P 9- M99Y^V2<2_2_TK_XV<4)%K;(';NIT-\]L[7U=![N96(]2LV)L#'%<4CAN5# < MMNYI,C.4WCJ][_6(G=AT3VEMVLX?.JB!NX_P4XNK%>(#Y2"_A7J>MOZQT<;5FD'R+5A2!HIUM1U_1G!< MTD+U20GAT5EL?0*U!YG/R>#M@K*[\P&'U>#851B/\G>++V,-.:5.@?>\'LL$ M"5$%!.$52TD$3,(_9?EV?>FX28_A<3:H$IJ!ZT@;ZDT)''*+>O>7#+KA;L/8 M*!LPN7M.DQ\&(G +RM%WWF0!&B,!5AGK9.MKU?ULP!>)G0]8FR^2):F]\E:D MU?^%84FB2;;4L3@Z*06J1 4.13VVB2Z%%+AAK2>F[D_M<]J.=\'<3MMQ.WUV MD"G>BM-?3_%WLAN?_L#9-_R-Y/YE-9&"V#)JLMGA-FZ'C_]L9@$E9V-UH*1,M6C\ "A. E"!2UU=DR7 M44SL%8GCGG_TA]!]-/?<@$E(PTF47/A0(I1<&R %)R XQL#$6$0)D43:NLO= MSD2.>W+2*3AWUMXS@^?KQ>ER@J@#ES6O&A5)$^OX6ZX+2*^B15V*\*WS9KO2 M..XMXC[!N;/NGA$V)]['(+CV((VL/4-*G6!5&#DL&"0ZCX8?-6]YC;9Q+S'W MA\6==-6L%'H@#/YEGDF*M?WW9:.;LV;@.1OI"GDF.:MZSJ49.*$U)*N+S%*; MU'PDQ5Z$CGNQNA-T-M%B/T4W#W Y2^E)?E%!((\9K$DQ<5;/2UN? MZS] RKCWKX^'NA::Z/(VR,[IYLDMEW>@3#J]9H1<^FWF+K/I/P\KW$M '>.P MXL[+CBCHQQD=J7K B^ Q@4D203$9(0BA:47'[*WV3K-G?7CQ1!L),GLVNEA' MSTI.@434M0@_ NV.R!SSLJ3F5U4/;^G1R2'$+MC9L;W'+GKIXM;J _Q@<=02&JT:)3,S&3=D7?<2=Y_ '#MI(D.$@2/6^2/I+E-D?]F%EX@.8;9 M^\5J6M7YJCHNJSH"X>UT1;+,*B#SA)E\SD1C6A_ M3J$I MU7LI>4ZAQBY8N9,S/5P/(YXAK9;KR:5!_C,N/B_#UR]36OB;F=O92^0IQ=I1 M<^.V6G B&-"VWAHQ*OCM!LG16ZX!B7ZZ M&C!(R+H1::7;06\]A8P<^W6;@8 MC,U*\,)[,"(J4-HCA3@Q O.A:*:3BKP)5AXB8!RL-%3LHK64Q[ZX\#',_U^* M1U^2%U$6R_DTG \X3RXE6Z>GE\TE[3J_P@6*86P1# V9VX+;S1)YX 4C(J&- MWA:-A=A#C<)B_OD3+D_>GR[3%PH*KO;G7WZ\I.7S>;'\\:[4R787G\B;%91H M8PY>"N#:&5I!+@,MG *>&VE3B$*HUM'>GJ2.F^QJN%<=4V5=(_,!)L]7M I1 M:1]^\F&8_4L?VHHX HZVAVTZG'4#W8D84+??S M7:%$$YB6$H+6A1@H :(H"6+1H9@<'6M^X'2'B%[AUE#UBY9ZZ !(=W:/MY=C M9ETTL3;?!)LW\U9D (J))3BD92E"+):W[NOP,#7CYOP'V6.;"+X'"&U=V!B- M<]X&T$%S4-F'.@&=0W(4*25;&-GWGHM0CY=NV!,+>U><[J"8#@!WDZ._;F8$ MD>OPC7[[&7\]KU3\0#;_/2Y3/8/5C#F]N98M772]^,OJF/!)\EDI3!*TC)J<@SK"#*T"(862 G/A MS5/TN]+8V49[!" >JJCN@/ARL5I/1/ FB62!NU!]$Y[!2>, G16.2Q+FP 5H ME8IQC[V/ J:=A=T=7"Y;:);HA8UU-A%%0J 84S53*SWM*+#92^@=0.=N<'UI/G^CKR>G)V=70\[^GHPLR0R%B2Z#X3;5-G/$H(H> MLK(Q1:.QQ.8MFW;]IICI17AMG8P"O.+F3 MI983R4TB,4AM#7&C6E?&/D73N/?)A@HT6RIB[+/+\QDUY_?1.$UYW M)6#<.V.-D74T3719._AQO4A_^[*8D,]3#J\$?(JT1@5_ M=U_S^V)]5;4E!!>VZ PJ"P4J%0-1BP*I8/!>:>E=ZXDWCU-TZ%;V\0NMLAM/ M)[QO?OE+/:FX\!:O.@UR43BWUD$VN6[57)(Q+05,U"DQ;5G(K:]7[4KCN#G5 MA@BZO=T-JJQ..RW?%>?^#98??-80YFG =LI/0(QG@TH("Z'49J!*&=*Z*H0S M3 Y9RMFUGNH]K)&Z*I]]5Z[@3L[>5YROSA?V,I #L('_+S_N+(D7=4+#U;+0 MZ(3T5D#(2M(:5 JBSQI$9K($PZ10K2/#QBQT;>)VP=]M$S>FJI^)2R88]V?? MO9G7PXOI-]PP_7X6Y@=<[-CO14-8SIT9;&16S[?42Q@G4:Q,!1SC 903MSC!L_KVZ(-0GH'WJ$'I4H<, MF@B!!Q2(M9=^\PE5U]X_\L8[#@1NYW?WU4='6#HOP>-:8PE20$J" B1G>5V/ M'++UPLG@"\EB(#3U4"B[OR8?@,0>8AT][?J8NW%>6^D%V65E#9ABR&P+46\^ MU $>VFIG=(DHU%/^U;8OZP,1^RAR,:!4.S ='T_C"O_CE'AY5=/ G^B?;=:- MB"&R$B.M&U=G;TA+WR4#C@QJ84%B23,FXM5Q^;4PLM]0FV\R5)U#JA M9:X]A")]$;[6_GHPM&18P:A5:>Z+/T3,R-Y0"U4_#9\]Y-X?@,Y-KF,J:.4, MH/065!0"@F0&0O:B>,.<9:T/IN\EI#O@[*/DQZ&SA\1[@,U3IOLARWUU[,J\ MC5K6*0!U #%N!$<5P9X43YKHXU4S<_(#J9ZW.K33K;.X^I^;,=_;W9_/ZTK M^UQ7JQ??PG169?]ZL?QS'=_\(N=-8Z$P._O 1!6*G+3V9 )4(3_71HCH-$@R M#3YHFU+06T4/QZ)X9.M\9!@N>L?$<]X6GI#+A)=".VN= *P\@BJT449.^V_R M:),SD7O9>MC/4+R,''V-LVJZ L@S.<#;_.;=U_K40Z99;O?@(0[HGF1@F ,Y M\K\+WQSCHB1\!IT@^&P!/;<>@S-9MZYKZ/5 +B0OF=,1>!V@XAH*]3&9'0 MD9.3FB5$[10DZY3P*@F4VXV;?_0U?:!@'^4M!I%D!X;BS%9>Y/@)_#*&6CYC M5+WXFBPX*X@#9JUWM*%C:7UE] 8!?R]';8=L._MKI ,X[2^X*[;G^=9*+2I[ MF74!9(F12\D#!.%#K;=GWC#C;?-1!4/P,:[U.P!6NR8EAM9Q!SA_=?)UMOB! M>"UFOVCGF2WW,1=@(GE07$:()3I@)AE>)!F&W#R&\%=3QM=E EFX-6&1Q)I%X5*$#;#@,4121AT92X75_>I]_5>7KV6! ; M0C,=F+E_QU6] GS6QM-&P:/A0'O#IBF*@! E R:5D5J)Q%SK=F_77O_WXKS;Z =+Y"K/!B8BJ7A^J(VE*211Z(:T"P["V62>;V[H^^ 8!X^Z+>ZOQ M?CCL(=,. /' .MHL%%I+M-[>S?'<:&:M6+U;6Z^7^7JJ:\!+E6I3P\#J_?_" MCW2:>1]Y78!I'Q!LY]8?K)%G ;9/?RS.63,"?0H>@?Z,\/^W=V7-;1T[^GW^ M"V9Z7UZF2DZ<6ZY*;)?MF5OSQ.H%;7,BB[XDY23WUP]:I&29%B4N?7B:FNND M9%G+.5@^H(%N-* RR^"MU1"4B%X9IGPZ4;+Y$'GCAENG!-MA&AEYJ,J'Z;(& M":^N\O3K-%_?#@_!D*,I#(KEM8>T8>#H:T#AI61!6);<3OU*GQBH\N#+QVW9 M-V[2._Q:?IEP^SEU?+.BMZ994R%Y0.#910&] 9;R"8 M9$$XGUG*S-G-2S5MP/8X6>--E3!/.;[=& M;*KUV0;05N\KC("(F1)8[V5T!IVT.W5U> )/#[^](]BT5/2LJ=3[#;#V*9,3 M7(4@ ZO-H0TH9!R\$0Z8%I*"S9R<;7T#^43U[8-U-NUC5^+$NC]GM*_W F]* M,!>OKE;=%/\VGRT6$U\4K3V!@POU2FB]M>F%L1"8IZ5*\IC8( W VK+1^8%# M8R2V,H1&L.ABW'Q;(6RT=K_YYL]AB;^$Z?R_P^4U3NK]&X/DKWC,M=\R+;GD MJR2MN\J3U\K6F=85"R=FL?,3EG.RJ;9PZF4EBD^+)SYX_+7>SGE7A;)8S^P@ ML4PD+](':P%3IN2H, 8^T3]=PJA]L4:)YIWNAF!DY#.C#BQG5&CT8A^'Z."^ M$%:^@T_06:E=0%"I]A@-P8'7W($).BIN6;;\Y&5(>] _\DY@!]8P!A#.W@C> MX3^NIXOI$M_C_.LTX:T0K);6N]K#QD3R!#DAQ!0L&):-32))$YLWS!B"D9%3 M^',VBQ;0&+N:ZO ;EKA\=95FG]?EWQ>D:/R*ZR$)=Z7AA/Q%O>1W.Q$-M9%H MHP%CF*Q]*P*$NN7BBN-*Q(0R#GUI_1"ZQQVH,I*1](Z/LS6=%[/9[[2<+O:2 M3)#%8K$,;$D.%.D3@BT:C/<.#8M%;-[-;&TYAY ][GR8LS2MV&?73U5[A*NNK+N:7V7POCV1STK[>?KVW\&-.A7L/Q:E, 7/4X"-)2(M" M#HF;X%&+Q37FGZ_G=]O;*QN[?W7MY9]D1E/B M=Z*\UV ^K%:[]8Z[U+IM M<+ZM+.#V^V_GTX23[+-+14K@KM2KP=H#63,E/Q;KA5 716S>$^RD'.YF+\_Z MF+Q/-'5@:WO9\G]P^0[3 M[./5])_?7XV>H+8^F6@A^7J;C"D# :VMAZHI9LM<8JV/$D_"V&Z6]5R/W/O# MSG,VJ)7O^64V7W^I_AR?2"Z\$CY"5#7Q046?:2[!*JX2ET)*T[IDY;0<[F9B MS_7XOF,TG4G3X.]:PKR]GJ=/)+[:#Z1M"^&G7S-$0^$]F1MHWJ?-3CN>(&8O M0*64P0E!'Y"S8A MW^WRZSXNJ-/VPHEQ62=)0(PA4J*%"ARC"%!@1,.8MJ,AY!%X\#]Z@ M5ZEU8Z A^.BIT^->L#I%I\=]=-P!SK\+HM:WLSE&2ZEE@=>D=*BTZAL9G5^V'!P;CW5W/$!171S*?->I7%IK"?3#>A M 9Y#$"B\XWRHKNW/J1GS,4OTP?KHP'-MV);)6"A3YX#6)E A>\KC8ZGWB8,, MT4<4K6_*]K0J'J[)QV< ["/6L:MSZOAH^WIV]8_K<#DM4\Q;=PC6_K.$;)'^ M0-31@M*V7C_/#I11G#D,:-5&\Y=')G3O\^8^L'*(BC?'=0\F[PX\S+91P9$; M8Q2%F\9J0\1G\KA&:;!%Z9W $;.[SZ!M[#%K6 LM]0FVM7VJ8F*Y M*9"4/H!"S>W;V/W/L#T-KEJB1T0O+K ME!QD4#Q&H!" 3>)DWO'R&SS9@?G-+M[+R7O-+M['XGW )OCS_BX\H7;.HS6 M,T;A)GV(/'!(D5$42O_YW,U=Z5_WZFUV!IU#CUHZ3ZO[L?.#VVM"VP\.)X75 M&ZHL F50=25A'&(P H@Y:UDI-OFP4T;P]+LZW]]JK/K9<'HX9R?Z6_AS^OGZ M\YTD:$5)\^E-\<^[L,2)RD%:A@*$*#4W*Y9DS$@.UJLHA8KUS,"OTVY]G5ZNR MZ>_$,2F*A:(<+8ZEFCO#0LF]*&"\Y#RHDIDUNR-^2%+/ODW7<2;0#0IZR24> M$\BVSI;?">3-?8'<7A36+CI=2@ *&"4H)PLX;P*0Y@3GQGCKRA 1TB#T2 MHSC3X(HPD",F[9S)D0_O]3Z0E[/OC]6#A1P%D!X,Y;'.&]^/GO_CBM[Z M:?JE'N5,1%"FCDP%[T*]S*0-^"RK I2QF U#U?QP^#!2S[]EU5$X/X%^.X#Q M<-?V[YZT^J4WRT\X__ I7-U>Y1?9:,4001H,JV Q>!8@Z9S0(#%K=IHTV,-E M]:>8/?\66L>8TGE@[#D;X\,7_*.J-04A@]6L;>,9JZ.&HYXD3UI]G50S6"@O<4]2JHM/@>?IU=AS?^-X5]>SOZH$?%Z M[[S.U/LP(V> TZ\K-[-X?QW_%].2OCI=_/ZFD*\H.%U>SW&BM(F^N Q,UZXR M*=5*-DM9GW4\99V$2G98,QF&L?/O_G5Z$^L 8AU$?4?OJ&SNP]_;?>0YQ!*L M!NMI958N)7"T3I.GTB2A$GW&;L9L/\W.^;?_&G7GK1%.SG9%V[9'3S[G[AAX M52(11"A:& TF* \JJP(^,0/T"68O4\@G/MS<3NMN-O'RU8P;P#KZ52DKP:%@4 )&P4@4_D33& [G83=S^-?)_@"(Z, B M3M.?.=JH$B59X&.]IQ:< *\T RMD8,*ZX-CY'.KLW=O[N9[Y]X>=,^DW?/.5 M'R3U\L_Z*39M.;S3FX;H.KP_BXT:#_]("J$+[YK&,F^U]-Q#\E*#BA:!4EP) M0G"7@XDU>A^BSF(K1?TT)E;,6!$]V3X/]52T5C13_ 91:A85PY!RZQ[-SZ0Q M<4/,#=>H>!_U=A"8K,9FORZ #E" MS[1U*131&*F/D/-"D):)5W0(-$I0V@B*GF, B!?@L MHJ8(_S30ZZ'35#.U[P:G W0P]JYT#6_?E'?X%:^N\>U\EJ_37.7?POQW MK-.CUQG4;:=0+[E%:0&50\K>@X>8DP)FDI4Y+HFCB_QY>C6M"?%R^A6_9XK2B^P+<2'1JWK% MAQ9O[Q*@HX19"J>]:'W??B?"QNTV,1S0VFNE Z@UV M/C)5L. *7G(P+8P3O MB..8;"Q&"I9=ZU.*XZE^+O,9CME].+'N.T#[Q>7-S]R_Z_+ /OLD6$/)MA5@ M/9FOTII3,J0*4 [D:W(NE&A=JK$;96??U7,OO&Q._&JOO(8=1EH>?:VSL*J! MFX+Y0'GZ']/EIY^N%TM:W.8'G7(]_=#C#[3V)+S1V=7ZK;_<>^O?[[WT[D!! M)ALHVW"$MD1I+-,.7)("=&9&*N--U*VK3G8D[?BLY-'7?"!!OZ"?_WT2F2$; MXS71JL;!*='RQ=0>/$HZDW3,NO4YWJZTC>O;AL#0CYG* %KJ\NS^23]P$[P, MX\;6CSZ!,WN(B1.[M! $\SIYD%;4F6_9@L,ZR]UR%M"4DEGK&PFG=VDO2:;S MJW!Y)_@7?_T-9Q_GX?A^/9!VB..;U!==I!A/"C#Q0*7%U<4!H-FS*> Z="Z.\^E>OT#1]37[?N*$RS= MCS%UXB4\"U$W/'.7Z\4=_= MX>)JXTIFX;0.!7A6M;I+2' Z%V!9>6,=DJ6VSD0>H^<\%N%]L++IW9II8\15 M=C%?3NZV]K_%#>'RIG0F9YNT41$"T[4]>>80O$)P+'EIBBV)[U1D1&^Y!R?Z MUS$(A M?1/$;"-@',0T5.RLM93'K"V:79/K_6OR7^\GRI*UV+JMDX0E&5"^X3A1G(07 MIN1H2GRL4G:!Z=\_SK[^Q_J)*VBL__$-&=_>-R(,VBAM=I0$QZXGNZ EECA? MO/SSO]ZO3W&-%3R$'$&'8$")0.:@> 9DS 7/-4:^6XWAC\\>)X\:0-D-1#?R MPO#R>C[[BZR4UQR\%EX@VBBM MP3K6?J=JOB?\P@\O'J>,:ACG<)Q4.]C6W9)<_7I7V*!*YK(.8O:H!?$3:QT. MUDYV ;FWH830^FSY*9K&W;!MGHX.HHH.H/7$WL_+/]/E=:XEU(L%TO_Y0_AS M8KVBY=0@:$&&HQ)]=E/UQ;2TTIF,*;0N8#^ S"[W0P[$R7Y'^4G-H$NX=F@QY>/#D2T]PG+ ?XR<^8(A.T-+,,CC)%.&.@G%/21@4:S$(D;AN MWIBZAP.&H$.=#V,KV[4!AJ8(PVH)C P],\%FGY23F H+Q(*K?5%ML."E4A!%],&KF@'KUOAZDJHNE]P# M$+ )K;;JZ!Y@ZW1+6%6481P2(HF,*P]!"PX\:AMSX$:IUG5,N] U,L@:8V$O MJ!V@F+'WM]87O2^N\L:MWEI!9;A-P+RC^-R(6#P#BMV\$R\(F\J W5>HQ!GUK#ZC%Z MN@RF#]3\KJ6N^ZIA["7LEI$_-AEY.Y_.YJMVRZ]G]YID3HH4R4532W1%/<-P M%J+*$0(J&8)&GIS?:77;^]5=NJCC\'0"'?2"L!],I5XX34O,'V8O\,7T\K+& M%#5ZR+49_O]@F-\..*)(4!OK2KWE*BDDM$C<8H)LE$ 5H_/:[(6X@TD9M\O, M\ @\C8XZ74;O-IU_NIY7=4Q2B1PCDX#9:U"&).EE]B P:X,IB!):7P[;A:YQ M&]&1:YG8* M=\+=8 -YQL/=<:HZS](*BE/+;/XY7"5\$R^G*Z$OAJRK>/R-)RBJV(/E$U=4 MI"140,S A \$M^P@<*< 74&M*)-@\KR[+JR2I#HQ]"$=W"55T\_T(V_*>_KJ MHM#;Z7NK'<\B&?JBZL6/6O KT0'%&624RF9OF,YY\_I$*P$=2?EY5&GL@[\M ME6NGU' ' >717+]?AOFRSLU=W9%C(:3:1M+$C%#G[$",+@ F7E0AL:0T4/UE M(PZZP/E),=C:# X'Q',PAV]17JC]L)33H-5-E"S]04[4& MU'?1T^2LS> P()R+"4PP!&<=9^"8)]D&8LKG9 &UE (=5\P,U"_O<<+.W'\? MB)I#P+N7"L\%E^M3B_ 1)]9)Q-KV%[F6H'*]4B4]@K,D.A-E*7F@7F>[DGCF M3O:$6#U0K>>"VL>DO#HEYA-4A6>M#2@62<8R%%K'0H(F'KEN7EIXR/T=)$_-,7*#R=( MK;31<$9 ^319 M743_8R#M8-UT$,YO8>G5YR]A.E^-52(K!0[B'7W::,&X'1D\Z3R5'\2]OLC#I.(Y",BEA@WHR61Y+3BQ M-CH4OG#5^LKWPY2<1_BV#SX>* Z5@,C=Q+[+?SO;'YGP#>GA#H;0^%E;4[O MR>5KE\DA>X0@F>7.QZ3=3F413[02^_'-X^*EA2YGS00[,BQ>A\_XIGS'P_K2 MJ3(R%[2.2.>1 H*(X!)*T,$);Y*A!;P%.K82,%X7VF,U.FLMWK'O'+VYPEOJ M;Z^5.RTC.D7D2O*E*BEP@6(Y4[*EE"+H8G;K1?G#H\=3>R-=S9H)KH?,:]-7 MOOCKKJV%T=K:G#E85T_[C9?@O)# R20HH\RNL-9;9X^0,VYBWW!-:2WZ'E%T MK[>!EJ%0BBDAICIP7?D(H?@ B,4[(4,RD/+*W]:_:1J6)(3"C(XEQ.X#4G TR: GZ/2>X6M>P#I\=)Z@Q2AZI^$U(- M]= #K'ZTO!=XE3Y]#O/?5SV<=-#,90U/2@4>6T\5?XJF M!)>!VAC@[@=9%N!IPLWF'"Z==J?7?][5U$TU67%@+%L M*<^0SC:'U39:>H/3,1K?G/_>0OP=P.@'(?UZ5WE5#/ER+ ID-J+]_J\??S:ZE9A& MIYUWS_]YNDB7L\7U'.].L"R7.1-&(+ B0&5T$%+*@#G17TFFDEN;TB/D'.LU M'GCTMT'&O.2L% ;0C'PJ64."Z&F-SBK06BJBMW*G,3?'L=K)4/16F-AT&\TT MT+ H;2#'<;-<'^L^U@]IZD0>(NP$KB0%RJ106S"Y:%">$.,96G#*2AZ+I&^W MKLX;T)6\3Y\P7U_BF_+3[/.7V16I9/&FW+VP%OA?+9"B?RS3Y<;(=*=-\2X& M<*)0#F!HR?5,9PBY)"V4DD:TEL01Y/;KB/9!U*8C.I7^>@]OCJ@7>^ I3?W4 MD!5>C\'*L7K";AP4ZPA6F!BIEUN0(1;/,R74O'4..GC,4\LA;\N5IE?7]=+1 M%UP%[XL76&9SO"?XEW_2F\FPIU=A_M=-JE ;J=5"I]DEO>;CJRL")RY(4C%R M;3)"HG4;ZAA#<$EIX3 M3!I-\(&$:NJ6"E(>[+,GKB):Z:-ROG59P192QBTI&!:"Q\F] _B\+ 73R/>H]T4D>669EJBWI-(2FW&B(&2<$IV9 - M4:?FM\9W(&O<#?2AD-9:'UVF"*]QN9+?VUIQ\?GS[.K])Y+Z(7G"MD<=GRSL M1&2CC.%EF-?K_/7V]LU+[J#$I4V8ZBC?X"(IV+ ZVH9#=D%9DR5Z85K[^BVT M'+W";3SWWM:OC_Z^ ,'$D3FZC0_IJ/+6L?2>B]B M*.?R;<=M\PTOPF*:+J[RS]/+Z]H4Y?O=-I:R\8X+8$D74,$5\*DP""$YE1#) MTEK'T@>2VJMCV@-#V[=)AU/:>;FM(S9,GWCB8(YKR(W4K:BS,=A@8@81Z@1! M40P$J1$,@4%X"Q_Q]76MXWQ3;DQH\>9Z MN5B&JTQVM5IE[W8ML@_*$VNH7:U%-AE<'631X$*'C;F,/XI*& M5U@7+FLO-B>Z"%3 (UTD(DKFMA/&+SDHZ]"!S7Y9T ,L> ="_M M=0%.=+NX6"[GTWB]O,E 9K?)">:WX:_ZP_<&7"\FB=A$GDBF M*I5ZY!3!V2 A">^*5L@T&Z#([TBJQW6GIX?QB?7<;SBPSJU_$/5$9^6S# B4 MUCM0K,X_J=W45)&!9BV%<*Y6&SO7WCS\' ]\@\6<[!73@[AYD9F*R"(65",EK M,@EZ,:5PU4(\@0R3?!80NKI;37(F??L7WF*[G MT^6TECVFR^N,>54G^?G+]4IG/QY]7'RNUW G*48FI$'P)=!,<_' 4WD3P71;[;;)VQ!GW MMDCF0]2M$2AI7V MX(R/H!(6<($KD-RHXH.6CK6N(WZ(CD[=QS[:?\)]["_N#O+V31YN.P4FI,!, M,P6%$R]*DF\-.GH0TFKOC*&/ Z\\>_7D/!5P#M#Q$Z Y1.!]XF;=#LF9)&-2 MB=9*C13O6X0H4P)!Z21:3%;8YL5]VXCI"SL'J?II^!P@]_X M&Y[Y:4*1"RE M:C(K4$PJ( ^L@7&O*9XKF3=O3O(@(=T!YQ E/PZ= R3>'VQ^O>M\E#AG+JM M$7OMB1V(HRA*@*+(&6L>>#*MMYJWT3+N9N'0*]9A(N\!.DO*[-[AE^MY^A06 M^'8^^S@/GU>S.5]=_3*;)^03S1G/RE$Z:0VEDX[B05=$H*!0\!!L8BFT/H;= MA:ZN_-&!"-B$56MU= NQB^OEI]F\#K9:;4CR2?"HH\T:DJQ%DHD)\.2$ 6W M2,%!+*5Y=+T;:5WYKB&!=IQ2AM_S67^C?HA$]7_^V_\!4$L#!!0 ( /> M^E1"FGY?3P@ %DM 2 8V%L>%\R,G$R97@S,3$N:'1M[5IM_]3JU^N7 MHTOR=O2/=Z0=-)IDI&BJN>$RI:)>'UQ52&5J3-:KU^?S>3!O!5)-ZJ.;NNVJ M71=2:@B8897S,_L&/X&R\[^=_52KD4L9Y0FDAD0*J %&%&P'G9SUG=/Y_5W2!G8\D6YV>,SPAGKRJ\ M"V'W*.X.QMTQ'#6..^U_-]'(.E;W;;19"'A527A:FX(= MO]<.@^-.9D[GG)EIK]EH_+WBJIZ?Q3(U.)["]OZK[V:C,P-WID8%GZ0]YU+% M-RV+(RFDZATTW+]36U*+:<+%HO?SB">@R17,R8U,:/IS56,8:AH4CWU%S?\# MO1.TSCW-O<7'V(W@*90>-$-K\^!NRL?-UOJB;HNI&9ZW7-\@BG M&M33F-X?W(R&;X;]B]'P^HI^+' M^X\W'SY>7(W(Z)I\&/2=-ZU&B.;ON^6CMP/RX>+F]<75X$/M^M=W@]_(17]D M0Q$V&N&.:OJP2OI4"7*3:RVK) )E>+P@9DK-BX-.]W37M9!1QI"H M:@)BTVL=E:N#IPSCTJO9-T_C8#,H7?C3![\_*>%)$';L+ S)E,Z *)AQF"/# MFRG7Y/><*L2O6.#[3"I#9$K>2)609J/V3R)CC)+@=U4R3*. Q%)A*R@;$'#2/&J=AU>4%#.#)]Q_ <.\"^)IJG&X,4+(@MZF<"V 3J/HX%M%C M$DU():9Q'(+RE-!T0?+4J!S0 TSL+L=C6"E)\$EQ*DA,(WREB$PP#QGIZVU4 M2"$"K:E:V"H)O06'A&6?&M\Q- :'%$X@X!BV0L05"@*LEF)SM(0A;.93'DV) MSNW'JOT<%!2=6 <2K@4J!RM"YMQ,T4&=0>0,M/UF:)IDZ.8,FS$R7JQ/P_, M8.O[ 2"0F*<88HN654BKB#ZLCL5JK9RG2".(+52M^#T2N>40A,U:_*H(.6XY M*<.H6\!:( NQ0F0!!OU@: 0]Z%YL5!-VP>G^H"3X5@L/0@ MXYCCHPO:D% %#AX8;CX6X'(6(";'@NNIK6ZK)4B-EA[M,^,Z$E+GV,Z2II+" MXR13,@*&KS4Y1%@P0)SYV _NHBE-)T ND(]NG[9]8TEJ#K8>1M67G@>)[ \4X4)F;U\&,-6S*WUE0'3T$Z''X$*#- M[E,!])"^W!.$=H-&R\[")6C< 6"H7"K[/(ZJ-LM&-->[-['I;@R(B6(DGT!E MKK #Y*49UX[ML!:DKA\KH%<\NM2>T2M>-&J0$-,LC%ME&&:I%'N:"6TM$M M9\0JAV,+KPC6A0Q^&X.MB*R+[8'MS+*=O0;Q>%] ?!QTPDT0[TQ5&UC>G>1V MAC0N@QEG%JE4RY1:-J<:46ZUI(4O5:R$$H*;TS$7W"QL5M\VK%U8#G4.4'Y- MW*NZID5=TK@K',IRE2&@M5,A4205LJ&%.$95R&<8%+U%W2TEQ Z\ZQ^W"SX'5FR( MG*F]K!S+W#QNP2Z9@2YK@]7,\>U"[,!QW2>#.">P10IHO[7KIK9I2O509EOP<[(&YK.#FHV#L M!1'\%D1Q:/"@?O6;I\A!G7PMRO=I^]5Y)MLO=\3(R@5279&4Y[K N!T@RE(D>8V5VMW1]''! 7 M19I>[G;F0&]MWO52S65>)S+=X69Y"/1%:"LV)OY,80NE488--2P9[5%D%M(4 MFR"\4$%6??+7F/EUGB X<(Z<,T4FV7I<]FULMU%5]YN/I3(H9V/27TDEQGJX*6H0D$W(!6#J?2L^%]!YX$6S_$VT0 M;$#@2>+H5>:.<$2H&;>)*TK'N Y U=!403,-O?++*::/3-!%CZ=N1-?HM.AK M+(V1B4/WS.8@E"[%#[$.VKZXN!5P0(?,_G2J6'=7_?0?OBH(WIR'VN7=.XY^".R_,'#_0/ZGZ1 MVFWB1Y>(^S6!E.9]+XO@+^#_!?SG2O#]*8>8#.X@RNUI-;GVASB;0*\[];U% MVS^XAYM)?Q&YYW]FG,'&S=P5-S@%WU@UH6,DB-P\WN2QZY:/7O,M/OVE8W?] M^?R_4$L#!!0 ( /> ^E2U;E_R2P@ &(M 3 8V%L>%\R,G$R97@S M,3(Q+FAT;>U::W,:.1;]OK]"@VLS3A7/!OS CJL(QA6V,G;&)I6=3UNBI0:5 MFU:/I 8SOWZ/I&[ QIZ09'=,G$E5,-UZW:M[=.Z1T.E/YU>]X6\?^F1BIC'Y M\/'M^T&/E"JUVJ=FKU8['YZ3=\-?WI-6M=X@0T43+8R0"8UKM?YEB90FQJ2= M6FT^GU?GS:I4X]KPNF:[:M5B*36O,L-*9Z?V#3XY96?_./VI4B'G,LRF/#$D M5)P:SDBF13(FGQC7MZ12R6OU9+I08CPQ)*@' ?DDU:V845]NA(GY6='/:@X:@?T/PT8 M64-UWT:;10GO_ MU7>ST9GA=Z9"8S%..LZEDF]:%(?D M6DYI\G-9(PP5S96(?$4M_N"=8UCGGN;>XD-T$XN$%QXT FMS_VXB1L*09J,: MW#=XW6^JQG#=R-3UNF9YB*GFZGE,[_6OAX.+0:\['%Q=DJL+TGLWZ%^0B\%E M][(WZ+['*Y3VKY]T:T?\^/#Q^N9C]W)(AE?DIM]SWC3K XZ!^$I1=:D C[__ 8[%\"W5&.Z M$:#I@MPFDS"A$0BDV,(*A)"DP7)$J,R#@^0VUV:1U@IF>)) M"1J3B(9XI8B<(A49Z>MM5$AXR+6F6+6H,J6WW"%AV:?&.P9C,&3L- +&L!5" MH: )4"U!40P&8M?F5 3EA.2A%U"U@+Y#A>(3('@WXP-$#/G"(NVQI9C J H016 MW'#:V1-2/2%1+.>ZP*CB8Z$-Y+0AU+[T=L/*\AK4=&',AK4O VVMG4/;\%YH M7NT=!8W#$YWC*1<,EAYD% D\NJ -"%7J#HWD 1!BIR\SJ8 M4<.F_*T%U<%#@!X&#P':.'HN@.[3USN"T*-JO6EGX9QK; (0*I?*/H^CLLVR M(W8#K5XXOJQ GK%D^MZ-:E=HG;<*#6' M009<;!NE4(LBS"#T0>EPRQFQRN%HX17!NI#!MQ&W%<&Z:,_9UBS;WFD0CW8% MQ(?5=K )XJVI:@/+VY/+VV,7"$BEX^X6@-]P5]!84W)_1.',\94/+HPBJ4,P0%/V( MNEM*B"UXUS\^+O@<6-$0G*F]K!S)S#QMP3:9@2YK2Z$N'Z*@XI=E_HDD$&(/"'M3.#<\Y<5G#SD3/V@L3BEL?YH<&#^N5OGB('=?*U*-^E[5?[A6R_W!$C M*Q9(>452EC/70;KB*PNS+] =&_)U:1J%A#52Z66J=R_0Y70JC.'\3S+"2$), MV'(F8)_K9!]0!@%K2_#X:X5TL?[X[YF ^6ZM94GHSA9>;[W+VFVVW;E=5C>& M-(-4%("9W=7:_7$H.'"1I^GE;F?.Z:W-NUZJNQ*9N31%$\ +"K+LD[]&YM?9%.# '#EG\DSRZ''9M['=3J%L MY[9!7:3N2($PRH@Y=QP'U+B#Z!Q>99_Y1#*3\8S;])?0<7Z>KG):Y-,TE@N. MTOE$>BZD]\ +L/U/M$%U P+/$D>O,K>$(Z!FW"8N+QUA'7!5@:DQ337O%%]. MD#[2F"XZ(G$CND8G>5\C:8R<.G3/; Z"=,E_BW70]L7YQ8#CX^I1NVGO!AB% M_ZP8.+\V4'77!FJ&;9:UFM56_?C)XGJU\55E0;5]]'4M_]38:N/PZ=(=L[59 M;;>WF]B:"YH/'*"A4YJ\*35+18-\%7>"](XT[M^+L M[ QTR_ MOZEQS\(^T&!%.9]+^O@;^S_C?T73/.]B> 1N5AN M+Z[\4;O+4 MO ^E1)LL@@BP4 .(F 2 M8V%L>%\R,G$R97@S,C$N:'1M[5IM<]HX$/Y^OV)+YMIT!OR"H0DOS0PUSI2; M'*3@7-M/-\*6@Z;&>K"0RQA.S]Z.:YM ?PEO_]Q-H&98-OB!)QB3C"8E-TQO7 MH+:0,NV:YFJU,E:.P<6YZ4]-9:IEQIQGU AE6#OJJS?XI"0\^J7_K-& (0_R M)4TD!((224/(,Y:5 MG;Y9_.Z;VDE_SL/U43]D%\#"US7FA,0.G#",[&:G1>8.:9.0'':L5BMR#@Z< MUI\V!FGB\$(GD^N8OJXM6=)84.6_VVH:!^U4]E8LE(NN;5F_UO30HW[$$XG^ M!.H77PLS6\8DO90-$K/SI*LAU0K52ASPF(ONGJ4_/25I1&3)XG7WA<^6-(,Q M7<&4+TGRHI[A-#0R*EA4#,S87[3;P>CTKU41\0&:B5E"*P1V4\7L72[8G$EP MFH9],^!-W$2<(W3)4VUU(_( 4TW%]PG=]:;^Z'CD#OS19 R38W#?CKQC\#YX M[ID_^L/#5RCUIC 8#TO9\6@\&+NCP4DENQ?R(\%X>C:=G0W&/O@3L _AS)@9 MK@$SS]68;:=MU1\[A,$,!L/)J>\-80/-8X^Z2G''>J5*RW_KP6PP?3,8>[/& MY,.)]Q$&KJ\D3]R(G!NXS5,:*.3-R 1Y@2I8)F.C34(G$, M: UK ?'B^Q1#SF%+$MCLNZR1'O42KW2UIQ+R9?* M7.]"+0VLHG+[T3M1(2[;?*=C'+8=U>DEMG<95H[+0X"A#P&F#+=E+<=H69U[ MQ99A?Y6L:;0/OT[SB\$:]L']TD<6JV.TVP]+K*DGK9@X+(T,R_YUS:E5"BD) M0SQR=IOI)=@W3SDQC;:K@Z???#_7I\PAKOWG>^W#GM[>H/FJV-JNUDR9AG^/ ML"C][P/RUC[PSY@LA:CV9.$_]J)]OMNN/(=?Z0]0GK-Q1IF#"EG3,2.8>\8]HYA[QCVCF'_L+ULQ[!W![ ?KFAO M,.S- \F.:^Q*_2F1[%WM[VK_Y]WF"YY]?,5#_B.>_8U)B+]@6+1@2.2:1:,5X.,OJ@/H)EQ!29)0A\K(8GU=<5_ !=)#??EHOD9/$14T"90$1R"!4U[4G:1;1#K' MK4;<=GM-4YV"WB\U7ZX#WQIZ%[7=U(']U8*BCD!.&E(,%;DN579()$O'(09= MLVM'?4$L! M A0#% @ ]X#Z5/W7B0AH ( )A@6 !$ ( ! &-A M;'@M,C R,C W,#(N:'1M4$L! A0#% @ ]X#Z5..=K"NU#0 ;Y$ !$ M ( !EP " &-A;'@M,C R,C W,#(N>'-D4$L! A0#% @ M]X#Z5-%?4&A:'@ RB,! !4 ( !>PX" &-A;'@M,C R,C W M,#)?8V%L+GAM;%!+ 0(4 Q0 ( /> ^E1J1 !+GD$ !KK @ 5 M " 0@M @!C86QX+3(P,C(P-S R7V1E9BYX;6Q02P$"% ,4 " #W M@/I4GT'+)!RY #BI0< %0 @ '9;@( 8V%L>"TR,#(R,#

&UL4$L! A0#% @ ]X#Z5)Z,@[*T;0 L?P$ !4 M ( !*"@# &-A;'@M,C R,C W,#)?<')E+GAM;%!+ 0(4 Q0 ( /> M^E1"FGY?3P@ %DM 2 " 0^6 P!C86QX7S(R<3)E>#,Q M,2YH=&U02P$"% ,4 " #W@/I4M6Y?\DL( !B+0 $P M@ &.G@, 8V%L>%\R,G$R97@S,3(Q+FAT;5!+ 0(4 Q0 ( /> ^E1)LL@@ MBP4 .(F 2 " 0JG P!C86QX7S(R<3)E>#,R,2YH=&U0 52P4& D "0!+ @ Q:P# end

LZ9^0GPYO' MYDB]M&O\X0/?7Y-_[&']")>[13\=K&L;%4U>Z< (AP?5@1M%B05#D\7H79V" M]:I@?;X#EN>)!1YE;E$(J.X91UJ+A'S@5 ;FC$J@0\+9KF.^K*R(Y>'1<\0; MEK#:6@#4 F"5=NH^ L!I:K4-!C. "N*,<];P$(@744I,ZZ2X5R8 9KV2W"1, M!"CS"4X1!$#$R/) $8@#QX@P1K(<-)9Z7:IE18UK 5 +@%H O X!D&@$_3X0 M+KSB2B?MI)?88)F;Q=D0ZS3%5R8 YMS(N0L7B90AJ[!&/#B+7)(4F>BX=DDK M*?C:)M-RW9A: M02H)8 ;TL"$&LHXXE'1A67+AF1A[D%FA2\0'$]L>+528"Y MQ-%@G%:!H&BR:Y_*B$P2.9 8)/=$":+S[""&U]7C.[S4$F <4OAE:.$6\&]H M_]@<;VMK5$R)V/P7O#A>UK'M'[2[Q1F;4X80 BJ>Y?O7R*5=_ZUIW#V/CI ]HT3\OT*U8M\WK;K0'C7Z)2/"O M[QUTX;:A 9AXTN\E ""@<=MIP/?^:'M8T/C3@\;I8>S'QA#N/'G3YA?ZL,X4 M^WVXR[!7O.\K:&OT@"@;0WBP=?ATVQ\V#NV@<0Z+@ M=;+AVIQ/#>L-V0UZ6 M[\ *VZD--SH%@&QW&]9[H,YA7K&/[1^9?C8:6\?E:_G+RSLTJDO[P79]+#Y< MK,,>]&,,:'0"3S=^CA$\W##VCP<;)2/GG7*V4WP0%M=+C??P7<WZ62,"(YZ9CD744MFF<=4)^:YCGS_4[XMH8Q<$1]B5GQ<)S,* M"FS%X6)R0KY..=&)_]^7\V]_AQ-'N6R^[W2:1__I-"^^=. ;2>OCMT.0#1?MHZ:IR!'TL[N5[SO%=6:DH1RNR3$%97(L& 1C6#6*2<)CFQM MDVS,UR(U@!\[^7"!%DJJO<^Q6Q)",(K!T1MNHC(YGN2));IP< M.QS9V>3,3V?/_,]^N]?_$S"A%UH]^,8Q_]:$<#TA[-%][S4/*7HDE&&(,TN1 M3IXBZ3R6N63-*Y#V>&->TD\(H1^/+4!L@3,95W[O'0.FG__O?P&!J5\'\'LW MQ"ZH;OFG0A;:(?SR6P4K?QW&.*S Y8]1Y[P$%EK@"IV"(=_I#4!TSL#1W"?N MC42/)PJB?T2._U!_O=;ZF0)E& 3!7-<'Q!X_M>2-U1EDW&L)MXDGL M9A4^ZX3Y9J"_%;^ENS7$L>)5$>C_,YBH@H.-JPIS?IK\P787OC0_SK0*7:FR M7("N>P*8F"]XUX\=N/)'_/6T'8:'8[M^ZE.5M8(O/V(=@/%H>/-'IHRH3(S M(L_MG2BT=2)F-F?J[\/^>#$G]B BUX_V.Z 'K/6=[9S:\\':+U?-#[ ]IO?O MID=?U$Q)Z#?*))NO@N78E5E+X["?\?*_VIBH2&C"+#G) M'1-:^$"T%T(E%T70^PH,KVRC_.L7NSD^T:5NZR+D]$R[^LBEW&M3,_9D20,L M.IC>VVD^F<&34I9$9JPS-@KF(OWA^=7]NN)X64+T:T$E<:L; M)@LJN&07OO:W3L]_?VN"_^@ -P_V->:$6D(0"'\)2B$E(/BC0MPP;P@5*FJU MUHB@'IUD2=4?Q1NIC] 7+>-!$\6"%X_!2S!>N1WC CCT9Q'?C'WX-[<%)QYZ_:W>+918? M^K6Z5Z4;9($XXR M>.A[@MW\I;=]\K;%$K8AB%GZ8LD&Q_I)%DOI0K>](W_]'N'%!UQZ33"LU"R? M)QJF9YA671L-RRZ%!EW_E^O_DG-=Z0+]%7[6K1@[>QN,3/:#7-F/-]!KX_<1 M0'AW^.ZE^VS_%T;9%Y!C.F,7P5.T'GYT'/DGVAC>+."Z(H35R$:+1.(5=5$J*DT.D&7_5\YIQL+-XF2*!&4 MNF9BFR30R^FS]UG&8);8IY].[,^OWQEK419_G'[Y_.6E#>N!>7^S3U^?P[SG MWS]3A,9_1J??8_/D>_+U!$V:S%BL!%K#P7E>D#+=<=U8=RS?T;')KFXF'(R> M. H"!WMV!0/7=A]9=2[%G1XK=XK!M'%YZD2!9SA>8D6NY<:6:0&V)F'J&UON M]!5W.C1W,E:+73'?BD,KUDV3.W@CY^J!'YBZ;5L&M@@WF.$"=[(&;N#UB#OM MR18Y"DWRS>6,YPG& K&R9'G'BZD*6MQ#>6;;M&W3=8PDL9R4A8&?Q($=>3&/ M>&QYD=*[>LG9%FMZEV=:$?/"!%2NP-:=Q##T,$JYSED:.7$06I8?8).)T+\S M8^M9W0I%SBTY$09 SH&A&WYBI#R(_32-D9R!L'M$SKTN(;-[;LS5/KY'R3AN&2NH M&,=!&V[,4S_PX2R- M9R\L?^#XP;%P@B=P*?OO(C_7,5-)7> /'M7MT6: H^@@O M_Q1%WPM%K^K$D>_Z%O<#W>"!H3L62]$Z]G77B[T(3![+#BRPC@>FW:=>A>KZ M3UW_'?'UG^)M]\#;UF\ 4X]AAUU7=UGJ8B.O2(^P^7/*(N1MGAN%WK,79C"P M7'4%^'A)^D&N !5)WPM)KZHK3AKZ9A(#20 YH0NJC$$D M'?A]:L^GK@&/E7D\R#6@8A[[9QYGZS>!KA^GH- %NN-X7'?@0'4X6?A7G%K, MB1@6-L?&G@/?N#/S4#>!CY 9/,A-H&(&]\(,5C6)T'""Q/5"/0F35'<,Q]19 MFL9Z$CAV$G#@^H%)@<^&N:_ Y]Y?!M['U=6.UU6WJ+"Y$[OIFS=G]_21_'.F^[1@LBA)F\>39"S<8 MP#'NR8S;'QT=V*^C&*IBJ,>HURJ&ND>&NJK-NJD?<"^R]2BU0K!O0Z9CEVB= M.:EINIBZV52)>D&E3G8IP-2^\]"5I3Z-N#BA M+(]+SJKF$U652E;K3M7%+(':\ 'Q\&Q44< ME2R>#KO2DC*#&;1HH<6L&FE3MICPMB0YUKDJM006@#7(DV^TAB+5*C;+JG11 M%^1ERIR+&Q7XO6O;TITJ_38<3?:S4,6GKZOO M^KMU>OX7'DA@VC;H? 'H?+YCZ:'+'-VUK< (4\:HW9!I#;?YWF0%8/$!,&M# M\?[9B,VH*C20RGB>M(6JMU()/$^E8SG0>2ZKN^(74RHM/KP99S@&;B*15F/C M<1%3=>Y9(/?D6(MX^5+5^1,BMF&QQ( X62SM'R&"^%5D,3^(3G=-G;4,' M./9T/IN7]4%66C2?:?Q2SO4-.!J5TJ,B?2"E1*G,MK$#<4C@>6(J! RPPHA5 MHD'$O&+G'-F=>$$V4Q#?PAR<)Y48!6 ZF4]@ELDDFR&W'&H(0.T"7SM$Y?*& M9]UESVHJ-;69C7R]/+_YB@>$%20#ZE>'XNF.DIAYX$=<=ER6N8<3< M31/LFVD-M^40U)7,MU2U%UU ME0W;["]B^PWJW8>I@&J^UPE _B1PYEJIE6KJ$3V M3H+L7KOTW+9V[ZNBFE4'7_VU/89J6HW9E/;X'>O!@_$")P$J\)BJPX,0H)KQ M2+EC$KVM<@VT/9F/9YF^X*S4JGE4Q64V%;(7#Y:O1@'",]-I466#ALX]>8V0 .:;I[+>6#& M6J6"@1I9WMTTZ&5BB(.T[&C.):E1"S'KU[*H*B7O-E=G/KD\^^VO*/*M*$E3 M'5MTZ$[@,9T%=JH;1F)$;N3&;NP_>^%?U;(#D>@@#:/4F=_\S!=@JL6&X1D! MR"K7#$/=,5-'#\S(T2/3C5G@^ZYKV7CFVUQ)\N 'P.R/X^;X5; M0MOND=BD$E$3,RG^TF7>=BNVLG]'P69<>]E9J4*YS2CWV^7)R[\"US)2FR4Z M\UU/=WQF )M)+#UAC'DL".S8M+$YU;ISX/9LYHX=KA4.[!,'0$7FGN$Z26CK MC*%!Q;BKAW$ T(]<+XU"EYEAA-VAML5C;&0[ ]1!IDPV9;P)?MRU_ZW"CSUV M#W///L%^/L%8GTXN3B[^LHTH!*:-@< @G8"*4SWRXQAL<3@IRPH#'V/[C>&V M8D"W91I!%%@L8$EH@"Z2FE$810RLNL2,70P?M"12@!Q12'&_2''ZZ3?W%-9P M]AK&^_3F\B_+-K@1!K&>)MA C$>@J8*(UQ/32!CW0COV.*+$MM34&B72FV@H M=FT-+:DZV&2LY.2)?CB!].[T[8[(]0X88E:B/_+?:ZIPFEWR1/_.RZ+!+..) M81:((^/TM[]BWP_"R ]UFS-7!T%@Z5$2A7KJQBD'9#,-ZH/T8 )%G>]^SY=; MW MLU]69&8"58T4VV+CF\]*P!(C0=^663 A^MM6GQJ38P,M1LTA^P% M&#>WF[N^?5P7_,TU(L!I)^!OZ(:^M:NP=I;SS5/=[-K$"%S79HYG)TGH<#<. M4#RX=FKPV.!^XJXP[U7OU*;V<"WM(+FT=R7F$[XL^1+;)[_]Y87<-3W+UWTW MB+!G KH?PT@/7-^U4B?TW3#%6('MO6!W1YENXR-!A.MDIZWS,CJ6:WLV>N:S M:P(!@@<@W;6.3T2ZX5#3[KD'XKL0GOOOO^Y_=1=OKK?[(_)^\N3[^9K,^ M==P\!!*:9V#9!!9+L!*"G9I<=VS,HO9]0_<=TTU]EOH&"W?LN'G86]>VI:;H MC-F$(V6"!&9( LW%.$]38:'C]QI(7OBMUMSJ,*$L3S(1%K74I'- <3W3&3XG MI?3C;-QIV\,P\(^H%^91->Y4B[VWEJC./ENB'C3O9;5?Y^;TCLU!^U?L:6MR M9WB<#4L_D:U](HSL-VAD/V%@?,PNMX/B('V ;Y+]T6_8WJ))\-X*!3\N(-I; M.@LK9%/(]F#(]@0JIDL'0,13]*9V;:'[J!VYEX+DCS[?^ FE$]\UN&XMUT#@ M,]YEOBV+R2OA?0*PG4UEYD[U"Z%ZX_+AU9O+6 M7,"_[9-??X/?_K1/O_^YEI5\^L>_1G]^>6/].?GM^XGU]NOIZ]\O_OP^'O_Y MZ1?X=PSOO[$^?XGMTRVMCVW/#US?U(,8LY+3--69SYAN,FXD!K/"P&;/7H0# MS]M7L;Y'5L1!\F>.:1\LRU"J>69WEF8.NN89BZPYQ(#YW4TST3 M_Y>$KF5'ST"K!:9YYW;QBFDJIGG,3/.N$?R*:1XIT[16>SU;490&B:G;3@Q, M,S8-/6 6UYF7FHYOQC:/^+,79CAP J5I*J;YI)GF7=-:%-,\4J;IK-8,LX($ M.*6+K7\PR]-Q] ",$-WPG#2Q@P1DJ/7LA6,.''O/11A[5 %WL=C9(DMOV$!WILN;;N6*ZO M1P$6+4^MQ'$B'KCD'!B8SKX:&/>H1X%B3(^3,=V/YW,#8U*\YR:\9]4QF7AN MY%JFIWN6%6!V?J*SV,:<2,M)# P/]WQT3/:I3Z3B/(KS/+C[4*E$]\F65EU_ MCA'Z,0@//0VYI3N.&^AA$@"#,H/02RP/SCC%!K:!LZ^>3HHQ*<9TE"XZI1+= MD?>L>]#\"$XH EZ.::J!$>NAQ5- G\1(>6 [41P [W'[I!(]@?#'-VMY7JIE M]MZXU<;D^#LZE];X57."#>/Z *>XZ6JA-ZGR1\'#3M>;8OI.P$+FACK(&4-W M$IOID65PY&8.CT&G(:Z%..]- U ]U,8C?T B]Q'&RF$6ZH+J[8AV(?>V$?=W2V M*/;Q<.QCU?\2P(%PEMJZ[9HQ]E1)=4HWLH,P";AGVR:6"=M4-/QINA,]X.8'Y$VU>844AV"NO9D#E6 QH MO720QI(O\ZJN&9ED55S""%J&P8RB75D1QW-J@I+,R[K]85LEN*XX1+6"ZRW^ M?]6FF6Y4D+C>:I+!0"7 IRPF]'8U8[/YK"@76LJQX]D8V& Y+6B&9JHBU2SS MQV[31VSE5FB_#S\.F_>PR!(KL>$,O ;;3K)9W:0FYE5%7T?"PRSGKV9%_%47 M_=.P'#O/*]F8A@&IL#%,U#9\Q(7*TQ6-'ZA%7"5+C,K#IV'K!CL870J4IA4- M:UVI^80O I;K *HY %?48MJR)"K+>LGC.1T"+"N#::H;5>:4&.Q@L:9I467X MP'-1$/8;;VLT_;A<54M6>#+:5UA4%>/Y;/LK:UGX#\YEB$A-;P4XG3]'95O/ MX9SK4P[H).#P35.R[E1D"E MTLBH<^;8RJR%;9=.-I9BW*&T8H\%]AZD62.B606/G><9<&.6ST!>C(N+NHV9 M$.W54L]$;(&'L@$[H6GI?#S6OK&Q!"VV/KV@5F5S /A8KB8K$^V_6LA7T&*IP'K.R7,!17K RD=*V50:6=)JV!*_HFBS: M6%(-=)A[?;U+G59)LVC?.P>M@I"HFJ- -=3NM;/JNBD>8> \^H)J DR!P.R\,UT"E;IR M1GR<\6^RYVU&.Z ZUN/L*\?>?HBDV ;W@HL>MJ!:R.UW<%K#;GY2R2GFY::3 M/")\7()/38RPX4U4"!L^1$O UQ+ 8*&_)/#^IU[;RWII1]%YY>&KR'[ZS3TY M_\OBAL7#:)15D 6S;/+"C!^J0TG M@FTLV]9GR-&G9?%%] G=R#X'<";GA:BK>ZE-QTST1J^P7#T_SV1-W8)Z5P!Y M@,B$,44G[]K2E=R5FM7*3M^S:N-!UFV]L;CN=X M^@2+CDN&&NXB;%I6@%]5&FE4%_"UD &DE -914*MK \%YV'"R4 K*KY1/;M MG5>BZ5R-'N*!/$<,W* 8M_23PJD68@4;$9:>09Q%!&J1#\YP6F+9Z$L--H 4 MVR D-KPOYI7V!?9=)5DL%ICEG<[!-9(+10\)H(MU'523/0+=%]R(P MMN$N#J4=NTPX_>TR81KWWV;BC<3V][S\.&+]Z3%Q^JI6S&)X[O/7/__X_?N? M$U#-OG_XV'[EJ'B2 -?=-C=LKA<=?D81Q%?FR%AN]8,!9;;09P"F)$YB$# MS!''P7[7"/:W:#AQ[>P/UT!B%9-^8546O\R3UQGZ89->-8]X:.PZ^?[U^U^6 M$X? ?VR=>YZ-?3(&!A6PGV M.$K>W-*#*M,>8$6__G[Y^?5OQNCLY>O[SX\]/IZ/3UOR:G MO[[]^N?WSU]6TQY.OG_^^OD3ICM\@-E^-TY_?6.>_/'&.7G]"W92-V"_QI]_ MP!HFIYNJ '(6!VF"U:Z3Q-&=,'#U(."A'J4L]7WFFW%J/'OA#US44'I3>$*Q M(\6.'K *H&)']\6.5E/ W=1S$F:&NI\XGNZDCJT'1AKIJ>T%ENE8J>\$U+'$ M<5554L6/CH,?[;TVH.)']\6/5I/*&><@1;BM.UX*_,@+#3VR3%^/DS!Q>>I$ M@1$^>V&Z \^Y\B>([+J+F52+E*1(GNWU&]4U&;7;6@X]$5Q#G< MMW>WQH*7 @E.J9+.64I!LM59BP,4,*O4B7VI$Z^[@1> MJD>F&^M.R"TK8)%KI,FS%YXS"&RO1^J$(O+]$_F^?::*R ]%Y&L^5=,.X5PM MW3<8$'D46GKH>ERWXL!C3I :<.! Y/; <.Y9^)?.^.2$7DAR+RM>J7 M+(J S&V=I:&A.\#$=1:[D1X%OF,Q(W&"P"))[GF*R!\UD>_=NZ>(_%!$ONK] MLV+;7)>[; AU^6)6;_4S4"Q1WWQAVS-6>&E41.[(5F*& MMN[X7JH'S'%! 8A=QP[@?V@/V0//4A+_41/^?30Y583?'\)?=828B>OXP.3U M,/(P:\5R]<@(4MV(0XO#X89!PDCBNWV2^"K28Z=(CRU5D7H1Z[%S_OECY+(/ M%0@B"Z2M.9@52]T;2UU/! Q2WTNB*-5M,[%TASD1,-> ZZF3V)[#K=B/_6G=N@7138CJBVZ6GS2 >*(A$,8@'8!"K7I;4-&,6F;%NIZ!N.6!:Z0'\ MJ2=AC(4:3=.,;& 0_L"S'<4@%(,X9 "*8A /P"!6O3%PBE&0&%QGMA^ !A'9 M>N"Y3/<]-W5"QW%#BC,+!E:PK]MIQ2 >&8-XJ. 5Q2 >@$&LM5B-W#2Q_5A/ M4M?4G1!TB9#Q !2*P'7M,&1.X)$&83MW[M'\4 SB"62VG6ZO3GWP3+?.^=IP M@DDQQQK6/2XYIE;Y\*OC1D9$RR_,B;%MO M/L*H?\5_'C?_N9LW6?&?^^ _JUYA#M9ZRGQ7M_THT1W32O0 DPMMGR<\C#W+ M\SWD/[;B/XK_'!?_N:.S6O&?^^ _:TYG[B>)'T=Z&+J.[KBAJ8>^F^JQ:UC, MX)YC)@;R'VM?=U**_RC^\S#\YXZ^<,5_[H/_K/JTPS@Q?)/9NFN8(>@_9JP' M<>CI@>\S,[3@R"(?^8_W"!,R^\Q*7E_?6O$^?-=W#L3N&QQW9\F;=OC86/)] MN\0DUBJF?),JF9]>SDXRXY(8\Y=S!_[["TQ2R[1L5V<@+77'3BP]L'U'#[S8 ML%TXM2 AKFS>N:E!__)"% MZW"SHGKUBB@7=C@6=OEIF0780VJ[IF3H(!E?' MQ'0]\E+@0WY@<,>,@YB%Y!B[<]UPQ8(4"WI4CC'%@F[)@E:TH-B)S<2T#9V% M!MBF-@-]*$U2W;4#*P+#U(2S(]_8(\R.52SH4;.@^_:-*19T.Q9TMJ(%A985 MV*9OZ*9KQ;ICVH$>V@G3S<#GIF'941 FY![KDR'V!.+%WA.NGVL0>][SVO]B4<;7VJ'WD\+[-9QJLWE_%XGO#D;5E, M7E&N-?#*N+O'_&O2/[$!_X>>K$>FZD% MQ.^9>F0DANX[S/92QW&LB*'D-Q7Q/V[BWWNNZYZ(7]'WC>A[U>61.+85>*:A MN[%IZDX2!'J8X"UT&@<)\'(O8M:S%_[=*Y/M.R#H)RIK!W\GV;<7]>).YQ,@ MA?C%/^'+>BD35IYG.:7@>43=>R4UT[B.UJQK/!C:B,&_(\YSC4ODUU+ ?FTV MXK+*&)% 4Z7]ZC@A[6($(\&[6:EQ4=X]JS36(;:A]FG$*[[T7;V6"PXCT.RB M 'PQQ:FK87/,#;21.63YG)8FX$WT9Y@^-ZW4L-/("_C '8A^5@[NGK^-OG_%^CS]^GH]/OL7/V&KC6'W]:9Z]/C-,_3B[/7K]9 M?)[\YIY\?^F>O'[Y_>SU:093-_;I]W/G[->WX\]? M_G1.OB/7 VX$:_C\^NOWD]=?+TY>GS@GUCOC_WU_I#P"%VQ%F>>;\5>(.02H!Y/7J+2%YJAG9@ALRV# M.9X7A"%G5LC<*#2Y;]GN,XV#C)C""PQCN64+UOC.2?*Z0G M<.9:&+QXEVO_F@/S0:P<$&M!Z6MD07R MFP]\.B_C$:OX^[(X+]D$I'U6)._RMT497E1E$G%\R=./6>O MS_\"-NLSYGMZXD4@RTTCT8.0)7KH!2F//#?@7OKL10$HM>"L7,5[R?'+Y@BT MJ3@#!+HVGV+1RQ]NT+>;^P;H%:YM6RQU0 BPV#'L*+9LWP&N:9E_O6M1H=43 MWYV^W0TS7C:X*31!'+RZ1U6-G$#Q[%U.P+%SXF"&+/@/#V,;,<+ M@S@"%@RRT-@6ZP-L;2P5DDV,I-M!9JC]GB>@H>!SZY@UZ'P'[P$WC;@V 3$J M%2!@G(AU]/>\PNJK3/O&RHS/%CCYA ,*)'@%-,KB$;RX0*4(-2C06T ) H;] M%12E9H8!S)M]8S,.?##GYP7H8ZA,S4K@QV*#E0:H7L!BRXNLX@,-]#484F-Q M#$R&Y3%H5]EL)'8S'V-E6 &"CV]>@3J5B%V$ MV32;P20 GB(68J@"*,[X^4)L;P,320K815[,M"("E1Z>[8Z,I\QB A(<\92A M\C\?,P ET3:"HXM58OF;<8K0 -"HFE<(+#A?.-(DJQJE06,SC:9$K()_;]H@ M/E]RW-AP@[*[34&0@MIQ09)/BXI _;SD8X8:]L\763(;U:9WYRUAVSPWVE=8 M5!6HYV]]I6,NQ7!0O'QP!X+0EOT5LZ#SY^X&@=?: Z.RWL&4G7,]*CG[JK,4 M-OB13W7V(M- M)+;=;J[]*SJ&<#RWO=H%F<%B\MESW7X(RV6S;?WNTYL3S1I>@ROWN(05V+A# M 8P3EC/1!:%A_Z^!_<^K"N4:"IJ7.1LO0"CBT;S--RM2X?+67\8Q@N/RH M^6;#H_C8FTL0^/DYI_?@$;!]'= (X,<)"?P!2GQ\K_O@4'L)"E2[:*G\S$8$ M]_;;5 ,8@/&+SD;M2,OW%05QJ%5$L;S,M@3E+A%NT"\.6"E+F8TQ $@;0 #>T" M_:U"G1P#N@C5+Z)9OXE%3AH2H/6G\]F\)!U:XC&JIP5N"3V/%_@AF2-DX%E M+)Y74H6EKT%+_<;'Q12'&Y"3,:OE ME\[+X@+44%+X2GBF0H6\F)=:A!8!K\1^@+_!X.5B4"^^J__^!!.MJ< X.VR0 M;,9U.V)K/_$*-.U-/TC4W_ ]3[)-W]<^].8' M.,(&5D*[[_R"0 8KCY1O_%!R02*UU0,:?TDV6N<(AL#'P?PL!='';(ZX@";B M2!@*%;_JK/&=(A\C4=,."(\(KTJT1XCDT-(IL^HK8,T<277& ,PU9^OB'TV) M+R99FJ(U1*_*D9&;@>T[/Q]I%WAW0 ?8K%(3!RT-.M ]QO")(Y%(IK =6P&, ML"!X%N&%EF^)-A:KBAQ!-1!PK)$Z+VC%)=$/34X8O#0[ +Q#/E=,308N\DDR M^2.\^BC1#REL/6#$,2$+"[0&"H MGMK._R2(;7)[ )E$2PY>V3#%81(LL1K,!]"3-HCB7DZ H- ML;L./Y%[^@"O:F^9<-PF0H$1O[X'_S',\I@]K0_XO"19<)[H>-6&8O^8QQP+' M8DVV.4#OM"DD]55D1D> . F+'"V:XT##7Z*$5%XD<&"IO\T!",C/-ZSM-SH. M:/&Q3P1[KHBG5W@&R 79ZA- +56BPI5-/$[;CKFDJ&G!= E(A\I$W&, M^DO.9Q=%^57!^>'P\MK[%K3XY(]PV"-+BFD M+I],BXMZ"R"TQ^A#!5H;Z^3E _)DDDU5>-25$!2O "J7G;W@]K/)=)REB[69 M)8#'H$R4).'*C.<-'/EEG D. "]M &$SKP07@@.G0^6VGJH4/LV2I'J&'?VP M5U]G-.$A%3["@38N%FP,9RJXH; 5: 30+SCHX?5JI(0"-(Z+"F4/B?!H44]1 MFPK?V'A>^YW7=XZ* ?42%+I)(9]"IRQ> 8&,VL"R>D;6T@1 .74;\BW$J0EF M,%XT1X7C)71EJE4,[P12O*OL2M"*HP*&C!Z^(*Q +&XQ6!"JB+J8,'P$S;]S M #5PG1I5R-Z07 %8PCAIO!5C@"\HV?3D4(.-4D")P+0$+R/*XI(T<%BT.0@, M8X6 I <=$4'L8[S0NKB([O@<'X15)'P*B =?516JU1@> H;R "UL_/P&D0N# M4_#]:0':"QR[3O]H?TLE,G>97]_1!P^L2V6-+=)\*^W4E7L:1 X69<1]\1 ) M(^ G83;S.R"CO'!!\.-YX65 Q\2NEGEM;5E>P/F.$>QHV]%A;XGQ0UD3S M;"R^$[=9)Q_/X-](\6CKC5N7#"&XB J0_ 8]"U(S_1T8!"SM(RI"M;6.LY/^ MA*L7]" !B,%*XZK01@!]#)8B4)*#0XQ633D7T$)0 ]*2#P!%)2>EXCIIA;;VA=BB8PX3,"J'B=TR" 3#K&5VMC;,)@7I6/&\D M"*F=":\_P)DT;ABJ34_\BO"P<>MT46T@V>:@8PVU+BEI;I ,)/6;C^'/8LDF M XD*C[6S=MD-CVNO6%[DNM1KLEI7:1:4S+G03:93&!#>QEV,D%,"XURRCM"L M!XL]%QP(!BNP%2?H5.R\P;U&[*%^1]> 59=;@^U4SJ41CJ9"#@Y22+!T(X2FT>-;!*W)QV$!+A(X>!I1.4>"NV@><6YWEK7WYC)?F= MHGERCCZK13RN]25ABH_A)WIBRF8S4@G1%.W*E*%V4I3M-3,>Q&#Y"2$E)(D" M/Y_APP WR1Z$G9R5\/U_A>V$P( O%Z1P(3* DB65APR-?++\Q)+E_3*>DC!B MI3A#1K*DMS6'2&ZQ"^(+01.2S).-SAI?8\,^T MA+V42$$E%XRE!G/-65J6,I]*%MVL2@I5>2U/2-A&#VQP5G9SN$LR&BO><&;X"914AT#D\.-8B/T<&@)ZAL8C=*):57W(0PY-7X4>%H1#7 V]2PC8E<76O@[0H'@=U'&I36#3HTKZ M/C 83UYT#&10GM"Y8(*+VH,GM(F:@:Y")*_]5%,*DD,<0/26OH_GFKC\:(AY M DM88JK"F,'[D@8QFG .855(%13>'*R.5J\&MY_E&$=9H/>]16.4WUR IF'@ MM52H.CQY ^]&K4>R>H ^L-9,>D_F>)>'Z:UG3XI'@RYOGWR+++VKSJ3'QD\:%+R\92.@5G2>:XY;[)OE>^RG% MA%UM!;]7,41U#%&P/89(A0,=>BTJ'.C(PH%DO[%EXI5?BF 0:BI8?R4I9&@8 M;>@0T Y]UIQPZ-+?RY]O1TOWJBRV"I.P^*]DP'2-"B(MJV:=^T!XC9->(72J MH?81+( Q*]%NZKP++RP)-U3?JUD62W-*CHOB5V@\Y\"ST*99EU;DY"81WGAU M.NK&)LM52$%QJ=5:]_+F34Z0E@077!TZ!2E2 8]5:"@7M:XHO4;"+XDJTBB; MH@7&LI(&+"EF&Q0VSF>UHK@@;V_6ZE5+AI.\IH7WZR64Y.XI8<**/F5QDO7LB(X7-P8 MUV#;J+63J@$OHC@$H"_IVD+1K3\"62,2]MVA)+UJH*A.A:J)1R2^$.OKF$D1 M*57H8VLLW]I"JIV''?VVT831J" E^CI; _&>UUY..(F_$[KDB^8(.RHE!4)= M(EW!0EJELR"G<8EN!E)XI6[:16\[%T[I>LC1M;\OHW3K$E(Z5UM35*(EE32'"DFG\#+6U2AW]TP"&^%X'K M/*4VB-AF9+ M)8\Z#ETD&B1K&87?F'RHC/-9)G_C&"["NP["JJO^KUM]^S/F!MJ, 16ENQN2 M1T#=[>5>PQ(WD70W$K A:S XD 7A$C;P2%J]$ER7?-PK;53K!D$.4%'2_ M$8\P[HE^9^> +T#JW9"^&W)G*]OJX+HXMZ)'/ICIJR MI6N_&XV#Y-0B'C^703Y "K,"[U\TND>1@9?S6060B5]DJ-( VK A23][[-_-*' MMQX#.^CD">(->"4DBXSB%S[JLLC9MZR<5TW- -(A8 2&+CVL3](&5(@-K"]R MQ-"ZPQ1XX,#DH4R:C>6MF[0V"5O;HV:, #B\')?VB(C.2? VB<69] W7-[=+ M5Z B(J1QP<)D%R/XYH(+ZB(E&*7&LO-<9GS6ZA6Q=!$6FY6)CC!;M"$=F\8$ MO)HC5YJ7=+F,=T] UR+]%I?:F+RUVBFNV99O9R6XQ64,B_F2*Q\T!R" #%VE M4DL<%Z@8=D7#LNNY71-^ Q.\&F4YZ]S'C*57>=E4OPXZ8.8OF=C2<2",5,', M!?/= ER:FBQ4NCU*!O+WQ1*^T6^#%HDS:6Q@UD4GOK ![*"-@FL";+NGT*C[ MJRY]@<'K6)JV6"WL8'X)1U)&;=3JRD6+N M+A=S;ZLZ_?92JW=\HU5>8:83) M/R]C4H(1X.^E12#2C^I\AGXS=XIC;T(V5K(4@ $""Q"NI-7D]M^''X?:KR]? MOF_J!+6 ,*%\:9D"(N<=FU>B9N]K[RY@&DR/@A>7^;)N33?ZI!30>5U C>@ M.'(^RO06<4NHWE:2+PIF*(50-SB[3BG8L,>EV_!MLW3OC3NJ;%D'1,I;5;): M\8($Y$.;*DC&%5 QAG0V^2U+^1O+6P<^V\DKZUP=,1$GAJ*KF%>;XFKPO&2& M1R)3(]J,#)&F)*1=5L;S"0 A)Y;\J9"I("2/1=Z&B',7S$M&FHL@UHC/+KBX MQ(,#7SZ_Y3!UH8!N1"R9>"\.%\&%*-A)+>,88DK#W@1L@"[UM2+IH#VW%2BR MLV8A7'5R55 XO+=>\R=;2=K4SGVEV+R5CZZ2UR&H)VV2EM>++D\5OQR MNQ]^G^V;;1&*Z.9;0A30L O4U2?B@JK/I/EI_1SKJY&5XUK:%.E#[1EO?ZXC M.ZY'*W*HDR7>AB.4 KQ7S-!0\!Z)H94R7:Q&AW6G9F'W)PQO6ZL(^.3C&,)] MU$+Q/54+I3=K4<$/*OAAY^"' UJLMRX]XO9(M9!>Z:I-??S4!,]^!&EZ(J3I MFVW2-.]^:PO)UF/]:MM)D@G0>S6J)[EM%IZZ6"&6W\VAN:M?C.'CA'<\LWMBPV& MIKG]5[76I[!6;VB[WI&L]9C@JM9Z;_CJ[;:>:_HA]J+MH;]3@X[-'1:NV-/V M_B7F+OL7]O-A(+"F$!E"UT =L*O[/65HK.K!2[#8$>VW N56CTJ5C!1I,)+( MO-)J./0$MMY.L!7%\0?_C,J?7J!%L4L7T5TV__2 :#= -!40;P'$_U 42\P) MBEE.?[T6=I2"YY[@^5Y$^>]#F#Q&D"EFJ)AA/X"HF.%AF.&-F\IO;FA_&.LJ MV,FZDL[6Y[O@T77;W06'MHVQ-R15BU2+5(M4BWR(1=Y8/ES1_M.TAI;;;UGQ M413ANY6HN*;'\$T@MK&O<-]@]<-=6L+>H!7L ;9FAN; #-VC[VNM<.Z(<,X- M!ZYK*YQ3./=@6[/-@>=81X]R[87/S123C>C7NT.RC(,91\^0%,X=$9?I/4^_:TY70T;C\ M9)&%>[T>NHI -H#O2 C$& 3.38GD"F2Y+R[VI \I')@W9F3JC!Z8D :^?5,C M7YW10U\)'.2 #JX-*.38Q45G#FSO, BB#FEW?7X0!.J0^GU(]L )E"CL]QD] M55%XUUB86T7NW-'KMW-$Z^-T">Z^_5[CH658 ^.V%[4W"6KNLP-;H?)C0&73 M"P:>?\LK;87*"I7[LV_;'MC^(V?*C_N*1X76*#:GV-QU;"[P!F&H)+9"Y>-' M9=L8^(ZC4%FA\K&CLNL-+.>6(43'@LF/6_E\XO%%]1J:FI.B$.3#)T7N.;'2 MAB-)BCG6L^QQ^J=:Y2,9XSB@I59YSUBSISSM/FMZLGP)E8TN9M2IY@Z%/1[@ M;DZ-H<908QS9&$\M^OT.!2^>=!#,C:M#/)(@&(4<"CD>##G4&$^!6&[JCU?$ M\H200W'2WG"?1^#?.!JU_"Y)J4_Z5N4PA1R.AE\HW%"X<\YYA=Y8=VE-F6H,1:F*4H^!4A5F*LSL)V8>^QADU/PT8X \'>2?7OQ3_BC'FO" MRO,L%Z@@ M;W>H"F<=T)6GB"9_.R#G[4LCPN.:MXHD4+[0?;'CH:S#C.BEQC M>:+]X'I#J_DF+4IM-N+P'[9;QM^K[%*;%-1JF&.K80V[&0HZL@8:]H0S[!L?+P8:JP#(DRDKX>%90)<##8=S5AXS'N M[AR6QL9:/*^ -_"R0E#_\O$]PCN?9;D8E24%%;1 MJG"(=DT-S^HG1;Z])6$)<)[SG)=L!@\!Z'"8W_,,/WVAGQ?S#M8)7B+-]OIZ$Q TN,&3C;QESF M#S6/J=B$KU/2.VR4F;.90/4N/L$.A^;*!OV6FXG]B:686[=W.P:WPM)^L(W5 ME2PS(IC$#.12O.N6LA$.NZ"S=S!L/BT:RM-8'(/H1&S$#4V*$H$+2Y)G@#M\ MA;#+ :B!9?H_5\N 6#F2JX^"0-I^:P\DUAR>^FG$YQEL+(N7(+C6?I4@^&M9 M5)7VOBS2;$:;$E^.8TXH_K__QD:SUF."JUGIO^.KM MMIYK[B)[D>88[N2>V>S$NF)/VYV$YB[[?\C>]?Y.O>L_D:9X(C3%-Z@I/F5H M? 0#9BLL%-I?Z?F[@>/V4$C@[80$:!-IUN"?4?D3%H.U=G'A[JLA^>,"HMT MT51 O 40_\/*C.4Q)RB"+8M_O18&GX+GGN I*QTH9JB8H6*&?0:B8H:'889[ M*M+0YPRP7SL^UMM5N+F?PDAWPU2U2+5(M4BUR(=8Y%-+&;Y#)9]K,D5N K'' M631X:8>]CNX+O8%_XZ:\^TG04BCW-%$N\ ;!C9OV*913*'>7KM:!=_Q,;J=P M_J/-$C9-E2:LV-&38$=FX XL3XE A7,/B'.^,7!OW(I7X9S"N3O@G /&Y6'$ MNM*[=M:-GZ;:]=0*=]^E0N"3+BEJ#QS;/DA5475&.S=F'?CV3?F8.J.'/2/O M0(6;U0GM3$6J>+)"CJWD._#-FS8O5P3\L&?D#FQ'G5&_S\@-03F/LJ.7O>>:D_]&-I3PY\#\[9! +>] M9U&8K#"Y/_LVC8'KW?+ZYE@P^7'?[=S88G\DESN*S2DVMSN1A.8@]&])*JAHPT>Y1B/ MDUR,X6$RNA\=N3Q.]%#JX2O6Z;Z&7>6#]_)'&?"CUV00]C M>)BX[4>''FJ,IT NYO P^7Z/CEP>)7I8X? P";N/#CV.?8PGYCX_@[6P\5A9 M]#<%'':O51:]0H]M#A][J H('KVSIH]C/$IR4=Q4H5QR5O%$FQ7:#]BMV])@SG%6Y-1[_ B6_RX.,\J8!85?%_-8*_U%-=T' MV.9RJ_HU&I&XZJ!A.BVJ; ;8\+SD8X;CM5WEL3=QYRW9D]YH7V%158SGL^VO MK/7JVC<]7MN:E^-#PD9!S18E(S."Q@L+_$I6 [KS5HT0/ST?Y[]+3-,GYM6 M:MAIY#F1[09NG)A![+I^&G$W"?[RG[WXA&S_GS^Q%_6)[A6LNZ#3 T'UCDNY M$5"1#;^"N8!$JRYLM[ /&1F[3+SR2WKD.>6WU%\U7=(13VJ)[KCT60.MWZ6_ MES_?CI;N5:9?(SI );44 M,DO"HQ:D&K%/8.T7&8A:G&(*?!J$Q@1.+>4HP2L07*,L'H'0*%&.,)2K:<5G M) NR_!NO9A,\6UPMCA#/*^#D,&,UCV$*6'EYSO+L.R'1=4(-^K>%SG_3T1[481-V>C8@YK2:I_ M/-]ETRYM6DZYRIK&;%KQY_4_?DZR"NAF\1QT.]P"O?2S'$LJ-BC-5XQ XJ_B MYU;0 Z,B82]O".3,#9?[<3TQ5/[F#@,WW/JS,31O]9LY=(S@EF]N7VPP-,WM MOZJU/H6U>D/;]8YDK<<$5[76>\-7;[?U7'/#VXO$5W\G5^%FE^@5>]KN-39W MV?]#MMQ>A<#FEMN?R&]R(OPE;]!?\I2A\3&[W X+A?97>J$?31=Z]!=JUH"Z MSZ.[<)?KA'VU4'Y<0+0;()H*B+< XG]8F;$\Y@3%+*>_7@N#3\%S3_!\STM< MJ&*&BADJ9MAG("IF>!AF^ 3J'WV\PL5Z'['>U[WW5"O>W7C[O8Y#W M2XKH3<4[ALJT!E M!D2E I$7..(LB>&P1&D%F0HK?H(AP:3(OG%:' Q#":IH8OP0M$4T!MJL9-^Z M4^$#YM!=JGU1S8KXJQ[1WM=&,X=F_?!.Z:\]1X7K"TBL(D+8@=9>$>$N9VPZ M[;%L/F1KI<#)E8=LM2C3\T/^@],VXQFESZXD<&_*IKV ;35PQX?JRAR:S*X= M:-%\ID5X'G@PH?6(:>$! M%H]H'/*UR^X.D\X.5=)VOQ,@CRE94ZU5)6T?$US5 M6E72]KX,=]>\; @M*J$K=5XO;MF*6K,LH4_(I8GA!R*D_:&^QP\ MC>/C8R7V+:LK/A56\K21XY;.$84<:HRG1RRV(A:%'%N[;RCDZ OW.>08.Y=: M\@]6'N/:F.R[U%MRAGY;KJ:Z::$=64!IQW)+HN*-W];/N;(VCM$6TAG MJJV^LFE1S/8??:29N,\[:0TA37 M@">?SO,83P/$UFQ!*XO9E$49?,P$^'$G4Y@4T&^R6Z4DT^I1J:1?>HRB7UN_3(,95)46M5Y9*.":YJK:I\M4F&-!Y*>LL_;00W1PG5752U+UDFX%R9L*?%7'X>G@QDV= PHW M>E>?HX]C/$I:47Q4X8;BHXJ/7EBWK3(+30?U[6E09IB8^KW,>V]0P M3##HO"43RXSVE3J'F]9C8**$QX7)>4"/P<4XB4^!?$+$_N=/ M[$5]HGL%ZR[H]$!0O>-2;@14M'!?P5R80]V%[1;VT::E=HA7?DF//">W1_U5 MD^J$>%+S+,>ESYH3#EWZ>_GS5EHZ7-;Y#D%I=ZD8X3YP]0"K+>QP3?4 LUO+ M8GOU@.:AH?9IQ"G)OE[%!2^YEI0 JASW&@-1*!+"';HLJ6]#)'AK7(XG9 MXOC31I+E"A97%!;H[OV: A94OP)D U*-[E@,%<^\0N'T'1B4QL9H:;4=4E^IFI?4Q9Y6JM MQM"U;S?J56OUAY9M/VFXJK4>TUJQNH2EJDL\L7H*JKJ$JBZA$JI50K5*J.XA M$%5"M:HNT0TG %[5DE"U)!2#O%-FZR!P M5 *^0N3C1V17*:P*C8\?C0=.^,A+^SQEA=57"NN3+R3Q)DUY3/'<,W:IE6RF M2DC>N]S',1XGM83#F]I.BER>#GH80U5HI#<, MJ&?%)/J60_<'I[S6&?S'$XUIZ7P\UKZQ\5PVMLG/$2,R8QBFNHO:RT:AZ/!BM9WIBU>44B MKTV)O.9@)9L/>X5_RRIO63($']#-?Z1W4+#\., F M[%/QW'@QT"Y&63S2D@S>+2LM+8N)R'Z&+9MJ:V3R%X\T /18PF>55D2"R&N$PGF8@#&.!F0\GTS% M$SP&%UE%X((Z94N93%@-*"DJGY&E<..'=? PH)9"8 M'D0L0'*JYZ 4]VF)^;) 6*S,X2F9JPN/E)BJ .>AU0+$RSBK$\97< M>AQU':,'ZPO R?65)2W1'E43$HP>Z#%K!H!KRDN9$4%Q#]! MILLSU<08%64I4N]962(>$AV0H(?Q-TC/"]Q$0O/(V3@<"2@;1#\X-"SV*Z\3 M^6- 5MH%U5NQG&'8EM&HJ3ROL@K7"8\DG&BCTD8<2)\!-K/\:SWL%R"/-,M! MDP&9I:$BDX'P;+8T E #D,:$(EM64;,T$JCG6/TAQPV#8L3S>-%]DB@30(ML M F:;,H#?;G4@[I4Z:,3=ZT"04M!!"*U(.$U'TI6BVT:$+ M4MA,IZWA-N4I-0GZ%U OLNSVL$#[L5C/*D M0XX)KXN\4*D8HZTG W(B'8,XIC(OM'Y;3@DH>PT2LZNI[+M#%B^5+<&H#QE6=*6#Z)R0:2SR''I;.Q.J:/EPD4L M^88&78*V4%,9IYI/ISCQ"/4,Q%D0 *"XK,R-,B8GDP/G"#OD@\5U)DAVG 2+ M**)483$B,BL*+9X#+@%'!#@!T$$)90W$""0Q:&RX%FF@T01>QZ*2BR>3+9L@ M<%%=K'?049?:-4Y!KH]8#:*5K303 M)RD$'UG$8K9? QJ@9$Y:'$MD25'RSL M,QO5-9AJ)8PJ,&VB]Y6I&[QO*@FE6)K*7]WK*V#4E]JK<3%/: UX8#WL:J+:_C M@7J]Z=09MF!V*"X]Z 1P^UAV=NRPRFJ_+53 H1?)D, MA<.@@ =GV3D:JTN\K!K!&^Q<,H$DJ\JY-'*OJ=+XY(J\6IL HHJ\]F,MJLBK M*O*Z8$% M,M%1'B''!V6*U[Y+L812N(N%5&MT3ZGZ-GKC4'L' @N /:/Y9\(?AF[+W91% MLU.V=5"K;:#-D#.M&F53EJ?:2 M#&A.V#G74M[Z+$!KQR57I#JCNG%;)7>C0F^9'8&^4DQWC>8/Z MO*(MKVG*\@YD)G3("_)GD?IU=%Z;=XT;4'IM%OTV M[N['>1+L.Y0)7-_DY" MLJZ?84W[;U$+OKC"W6AV-'?AC1'^8J)4()MY*9]TNQQ,3D?%@QN%%PW5[JPS M6#=Y/@5[J"EOCK>ES=<]M]VN/#:MN;3=[<2\H$.]MSTQS^D6=[[JQ.P#GEBO M>,5;X1 _=@]OVFQC!:_,SDG?U,&+JHEWDY=KG\,60Q<6''.>=.[OLZJ:D_!& M#:5S$=/5?^B"%!!L!C)Q#'#K,XYMOG7[HRB_XM'4]VW=N[@6J'*!9-$;_"&I M0^T/KD5\G'&\QA\Q$=6#*C7=A<(D4\!7AG$B!6PYG^.UO@@\D(2',0) #>=Y MEF:PVYF6COEE1KH]UI+7(E!B\4UVCB^UFMT89AR+U;5D*Z)JY"-#[:VX@I\4 M)846")'2QM_\4K"22.IU!J"C:(,1JNSSV:@HX3A1_07YYR]UY M3/J&<5_"@8>69P<8G(0%'1C0@:/N'980U_82L7Y5VDKRA &7$=G=6U4#HDN)HRPVMQ% MS4A(%ABKN%Y-^U-D4'M6(WRX7'HZ*H1/3=U4O3D"]I&9UCS84N M9(!#&WK009WV"%:7UX"]7=HGLN*S"O@K!365)&0)IUF^N&I9,O**?6/9N,8L M8',%6;-\*I <^/^DT@2B@@F\&1\;U-J\"7A;1&-=>7X7O$$9((Q88,4X P$B MPY> E192(VT4GX%P??"&J8KP).2CTEV>8<@1>;'KP!$1#('2J9KI0$=$"A- M/U29![A+7%DG:JQ!8!E@A7/5L4.2>-!/AN@OK\H.SD-OJ+:\DIX!#%X[:P6G M4%]:(7[P;5VKL( ZFB.G'2\I*VQSB,ZRRBH$80N'C@*AD1-U5==!!6+&9.^< MFF-UWEI34Y:&1.8O8C8U %;,&T^>\/*L*C%$Z.OM/^83U+Z_(S%=L?QM^__[ MH^\,8H--9'OW4&7?-&_7O^'*-B;&T/5O5[Q?+58M]F"+#?Q]MH;8(2WE^CPK MOV\]!E;SBS;777U?7VR\!A$0+;3WU)+M-IT&]@'%XZILNQN$/^$%G:H)? O( M_1NUW4\CF-?4_N2L5$"\!1!-W2;@J;+4MX&>K;MWA][3!-U) >8$4>\F$.ZI MCO?.557(P'C8J"^"PNFR!;?)4:U=$T5TN^5A@\(=5K@A] YQ3[>'Y@9+"?V? M(LCH[^8_5@)T5&&Q6Z+(XRLLMMN^;3<H,/DI8+(]\+T>%K=4B*P0^6;[_C]_"RS3^KFGJ+RG6JF] MM^3/KKA:/4H+WKJ+!?](Z\_MA@JF-S L]R EZ-0A[7I(SL -;75&O3ZC8!#Z MZHSZ?486V(.'*;>ISNA^-<0]GM)3N<[YL"58[C@U0/L>[W!V(K@-6' M1X7YZ]Z3WE&9&V##SI-BCH$Z*Q5EK@CJ>H3N\ST#I]=D8P?!(/1N*H+V"Z$# MV\:*2!217$,D!M@[X4TO4Q61*")Y0D3BAP/#N:F]J6A$T<@3HA%O8%FW[.RF M2$21R%,@D3O=Y1R82';NQ]9@9I8G/)\]MYRA[S9U'%[\,RI_>K%3*:XKQ]G; MR7G#:^]AK*ON879-I=GKHG46I2!LK3'1SE68%EDM)8.FP'UE1 M?EZ*EG0ZEBU==.I984U4+#I!-5B^\3PIRFJH:1\YUTZ+&=>\@8;8;K5X?D\ MH!%WK]OWJEO)@PJ28%$C;$/3*>!WB+,B:)D_4\G$D0 B'0DL,,&"9;14HFFJ M\/.V*9+T$1O'+=51HXJ1[^' M'<#[1W\*!B.*<;.*NTWT5]PO$#\H') .3;U MFVBFH?]&Q43J5EY)5L7SJA(U^,]9F=0UQZ[%II5*?%NQ:-?R-@_!"W8EJWO! MD_ME1-:!&=%;T61ODN799#ZYLIB-;/$@RL*P"/NBM(4AZU*!3=5F*GTS;\K? MC(NX+I@CBB[QRVD&$[-9TWLKH8YY=5,OR["\88=O*;:U9[:E>D4L]XJP5:\( MU2M"]8I0O2+NTCJM5ZK@2OWNKDE5T9;7=Y?53VZH2/LZG M[7Z7*OC6I0]A$FP%W51)1"6EW89:*-B$NSEM[*1IG!I,N<=Q=2] M'ZOCUAJI5)-_86.J$?MQA/6)7_,9R\:55 H/2AQ':$?7'7X6M^XA'5C/KG&J M!:WY<2Z_1!R;7/IV'>?WIQH]E!#R(*!,R->3-0.7XSKSZ\!F.." M*NQJ+R. ()+H5T"_#UGU5=M1^AQJAS5O_8 ECG'!?5GO9CI"UBRL[P5(C2^B M?7W3!+M3)%F645X0\Z-63AP9/6^KZ YJCM\I&RVJH%]F$UA274$<10T>:J=$ MOC#\L8T1TDD)4!MJORRT*9!Q+*H])P5Q7#+L4( 52_WEB?.73% =&%D@5.9" MT*/S"J0_KWMO"Q)_B ;7LH=H__F) MK*M-_"25^XCK?=0'+S2HA&/?L0C5)U#7+GIP*C=4D=[$15Y,LAB;M="^^GTT MR.H3Z@NB<6JN@$2R=D;I>(XUP85&+95MH39WNJN(MB)(W1'G>4O9$8_97'9F MV/"2,"AJ;@C:"$ O9[+M+S&T!,N!8W=MX.*_?WP]U/YO<0$\I1S4?01 B:$M MC"4VR7X0+:EO0#I)/"63JB*IZMC0;E8S&5IS"XQ7)Q4P\6*"DX+63JO#Q;S+ MZU:_DEVA-WK<3B5F:/BIO#;#AX7=*5KUPE# E^=C%#8X\4H/OYF0R*+Y46/ MU$RUOHL!<=8TJQAC0PNA#N/8U0Q6H M9"-TV"-LF7WE90=FM#2#2 7,-Z[E^!C@ MIQ*&DXA]'#SPK#G#3G_+*[D2(!Z@HFR FE+?)?(0L"]%21UBTB5_1";88C4G M71J/?XTA"?7V#\'/=N1F5S(Q@5+R)2817CI7:1%!-4?K'1#6B/L6P]TS(J('O"U)*/\[(\7Q. M#_WZR_O#=U"Y%N=:'^J2, 2^/Z=^K4LV0@>LY+2H!@WTUUQV O^ M;7W3:;PD>OS@#2T#91C^XY+KTMCB2.NKUASV+:[0$+L!]?AXC)Q.ML39<.S- MJZ1HYW77H58%$ I[MM2'<*A= 1G1)6B\3I!D)6S$+DF)JU@KK#$A,=H^5*6\ M2N:)%!Q@)<&6V7D[T(:5;5I+TV6ELY3:$XEBB":1[D#9(YA5\K6JMVU4PF!H MA^9MNJCX[M"WMO]\^XX4CNWLO2-%, Q<]XC6NM?F&4<09[HYE/**/6W-1 S[ MUN3#WZD4^\?L4CLIJ*OJ&^RJ>IOV'D_JG(^K'O]N2""Z? XHM!:]E:H?Q&V! M:#= - _:TV"O^U]MZK"9Q,"2V05O[C,S_VXU31\PW'\WB(8]K+5\ ##\J-!* MH=5]H]5#EZH]P(8_G/QR*TIZI.7S=@/:84JY'IP<%&[L +);5@8Y=MQX KKL MK[^\/[32<7SD<$NUXMC)0>&&PHTGK%6^._V@-(>; NV6I6".G1P4;NSDJCY< MP>Z#8\A==9(.4(KDX BN<%+AY.&AM('I[E*: MYW Q3N]2BI3## HVI2!,BGHI2BWA[<=HH9G&CX.EJ%0*_0)[GL*$*.)K2^Q- M'5.39F6%R2.7F*^ ]^)%2BD0>QW@P;2V5D1(/F9;S M6;,Q'&!<5&W^XP_&T*WE'JXYJ\3O&<:*Q\5Y#J>94#X=IC)\F"F_S-EY\T633Z]S!Q_&%!. *>:EH.S'"83' ME?G XB/*?/B#"]4H!BV79=N"_P>=2'3 !)Y]0RDA'F-Q#'HYO#-E"XI%_GNG MM 2J)#H>,";"S%KH5/]H0\]7HJ>[H=N$'_"@B*D&!8I_8SFE^P)F23RK-L1] M+S IJ]E3G)6 JF!-#3L::N\I3AS-D+%(?,;,(R V. B1F0TT..()L!)V#EL& M37AU59M31BCA9#V)NCMRNI(YWBN8NX)-*RNB_()/=*AK M -FPUL54@%S0R 03HQO)L6P3%+G(G[XH)!^&:3K,8&UK12YQ:PUDW0UL03RD MF@Y#YBP>U=5+,/L#MBV9[1D1D$RP_[NTF?XQ0"E05W"3"+M%CG6J8Y *T^74 M[VA83!TG:;B;&!)I4BB%2+)<+&VDDY TVWQ&VP7YB@5G#,U&DMVZK(;[",IJ M.,-K%/E[7,(*;-RA 9JPF4Q%L?XOBQBGF#V=U\$Y69@OD&9('0FP+:V%HG6 M\]UL%ON_U$63@,ZR4N/MYAA1TP:Z)2XQRG@*F@U( Y(%9U1]LQ2U*>FWMK". M_&T@$M(H?9FA)RV;-E#$(6$K[)Q8S$!J(D5=AH5;6)BL#M M-^Z>[881==696^+MYJ.^"4I202]9"TS265M*1YB$H'!-:EE]_8B#6F9OP'59 MH\IF.J&U^"CQO?O59G0?8()[7BU/++3OSH90RFJ-,M^J[UBQ1TAMT RH@ O^ MEN4@O2>"UDNT!4OQ#)8X$UN5KM=FR*Q6\U%WEKFI&6BR&=)R02F<@,/5%I*M MK=026,= +!N4A03+&4S0="'3E31LJ9I+58F*#@-^-KF8J.QF:=;F4,^#IV#: =4XQ(19.D!* M"HZSBEA<6VZM@4]+8"+%>//B;BWFDH*+)']1O/!&K&(Y37IK^RCHJ/@2QIGLX8NW)'>QGRV)J&Z0V;PDW35H&. MG""4P(](0A5B@&('-3<43D?!,P1WGU$ESMIJSG*$8SY;V82HSBXU)&F4T4J^ MS)/SNKIB0Y[ZA'VML3C"0YJ/9XL:\O 2W1$EQ44N=EL YRFQ+B9Y.5H,1PJ8 M9+"EKVMU;VIH78G3 UD[!I8@7$3?"+7KLIV8I0]0GC.4XL( EJ(A1EE1X M"@SZRL?9J"BHL&@JBNP3%V@1&-F-@"^ 8!4_\D6].F(AU1ROTVD)0F&IV70U M$X[:EEJ%@$ $FQ9XGX%\22X@1JSO2\V:*Y7A5ZT+\%W-#5YU>6[+WS_4/+?? M2O$G.O +*K\E/9RU:V=WJ9*ARZ)1?>#Q7-30;4VX#D]JY"J0"ZJ@FE0^D\;. MDI\DUUO2)X1PC&69DZ3U($DW5EPTS6BHY*I8HW@-:XS5I<5 [(C*-DC->*E? MM6)H(<'-P.-NO!?N?!WMU_XW\#!%CQ340)]68N*$E!1 E='"=P[ M[]E1>K]_^>&3]NX=&#B?_N^;#]J[T[=G'TY>?GIW=KHFHZ_N/K<;EPK-ZZX! M#J?(D(O?'&K:O\'>'0OW,\>3[;D/[RT&UG7A;*O[*#DR8]T=J_Q8THP$'5T#?TW^I:V1F-5Y33HJP# M1>G0L>K'6[V#DO-+H&>J:?]65 X]."G?$/7KF)*..;%<$H\UMCI5 MO124,<^ES=LZ#RC"E&L4VZF#/)*8INW*2UTCXN5WMO+"]B1J(=!4[&HQ*H ML+[GDQ=]&#F#%?1Q(]5(UB,&JINC[82.LJQV$&\$)_IDSSG='#3+*6040NNS MKK"2/.QY)/S2U_.#B&JL:M)O)!S:30^"VJUTU2G7O5EH/;D(V*#P SBT)>^1 M?!^?%2$96(7U:UY<4-'>.?EJZZK+[0-UD7OR+TX:-&KB%5>:&DRF6-"^B]-+ MR'K6_:'Q48U8.9%N_7S1!B?1>N5U4AV74]>)EMZ\"8(<(_3D8 PI-K:I;8^ MW$"Z"VM$P'T@1I/?!VL@(U*+5[)N.XB=_#[A05C59H;[2PUEW.]9?01(DPB& M_C+>S;NI&:]DJBLU82..N-'QA"0 M[;(PHWJ_]0RD[ B9("N9LVHF;Y&(PY!6)+ 1N.?_W]Z[-[=Q9%GB7P71$S-A M1Q2IEZUN-W3_Q]FYYMZ3JRZ_79+)GI-RQ5?W=>V .5C&2Y<;4(*G&DN&%>=ED0N MPN\[90T>'M?@D$5'%LX4?3-&=\)T,]\P]*03IG?H:"7&1E\I6)FM%#4D$5C& MD688-WV/4WO /[JN'J*OGF.3MF58G-R](V"#?/WP>YD^+%DT%BJ8Y9=Y^!;5 M^2GO;LHH244+E?J6JR4HKS!3-YEVC '5D&*9YA%E)T>B9?I1+F;D5IYR$#8^ M,ZJ/ID3\>:M+BVRE/C&;A3'3>J[#E!,_K%R>/O@LF(U@2DM4(7X9$3=CSX0W" M$$E.FO"^ZE:&'PP&;[&FYWC>ZU49UA!%HT3/7._$3;X3#G?[5[8[O#]XH%Y\ MP3Q.),+)-PBSV!0GF(;5+E4Y,%INDS@P12 K0M4M>0>HWP3S5G]!V>?@ M*:;+KW;4O5ZFVZ3&RH:],.]]9!U'@M^+UM191]GS^4>*-%?T!D+?A@9J08!\]]V@PFHBG-DRZ^Q[[$%4"T]Q(B";Y3<&/?< MXK\!%*ZG4SA]6;NZO:S?83.?U& MTKH1C_C3ZT&LGS MZ/KHFU-PL_^4F,D$9&!6VR&MG#G^C3"[>_(_?TM%NJQ(EIK]1;YUB'36 =U1 M?S7#X4E6\X+"A:JGH-7JWG2P$_N+NMWSGR3FJ)LR[,M*?MFCFCOUBH M(AZ!O!22N=F)"1"O ,]D!"V;7MCGQ$>NBF(I;VQ^=^$69'I8!<*[]U39;V>7 M_88Z+N#PU-2DTI90%^#920;LMK.L/FOT2-=:](+2&? ^AX2?YFHF-VW&,B:4 M^-@4.=^(K5X_.[N9HM>1#7YI5Q:;I>)>M-5; #GOJ!\B#7EYKUM)FOT/@@62 M9T3_*]7TF(2*?C6U1-'>H Q'>& 1E9M:+J3K"\K/O])?]K/!MZ>;5);9W=35 MN1:W39$O63U_5M'LJ*Y*DD1 @$5_O=WD[.^M^LV*P!\*355MX)83'5FZNRP- M(6,F2%!XCRN@3 ![&V]=>H"Z^#Q^)%S*SGY*HWYP6KN#QKRUP='Y-QCAM4WI:VI-]AEF.$5-14- #_-;E9 MX)J2*5.@63I\==9K.Z]#+YHWVZ&?8[MKO\A[Q&6WALOC_47UFR\8M91ZT22O M)JXBDEFM,#:(?-&2!+Y613%P(4=>(,9W0\=R3^+X]4B^)IU&Q(#<"=CNS68/ MO;NF."A>%8W2T#Y,(OYHBCV9,PL1#.EOV]'Y MT;,9@M,0JI2+%E=;530R- T?; ]$N7$+;F%,\5>^C] .R"GEC\.X<\J29/Y8 MTU5&>4PR+N%+"\J.TE=*^GF84;MZV#:Z"RB\V[>/@QDKWG,D63?%X(KA_7HZ M2[T_.?FS(XXHQ1$]/1*''"%!1TC0EPH)NBZ-<$?IE17W#,SX+TGQ%$WYXD"1 M*\+*;.*)6%3A[U5.='-4.\K%QWN+P?(2E*4Y<+DH7>UO=AFL\@5G>[W^J7J* MX?X%C+>(3FN>.*1[]"45G9_XRN*,-$1QT&@C>*2\V@JEP.?(%EMED=PLE/S; MOF%$LJ2Q6,H5F?WSNE[>.%]WMYFJZQ$_7T)>ZDI3[\(Y\[8#+3. M*N4E+%WOV-!3/\0T2:S[A1<.=0Q5T]":UX9YAX @77W1" M!@E*"4D'DE_NU6=[Z M^4:%NPS"YER40_*@K-P@D]2K7!_RW[3<[@4S 2/XJB%"R3#O2:RVJD=;#"\: M8W/J<2-240FA8]0<[K]P_NA%YT5W11D]NZ*E";3*J:^/WR8Q$[D5@V/FVY\% MR?"UHP2)LN*,4X/IBO+MSAGO8$F2F=E:78FR':N80!0Z+P"2KJG\23%]'P( M>69N^?49^#1U3NF!1;%E<=J8P=':^2\N[_JYRI&9N3LN4T!ET[ZI]F2*/@D[ M222I\.NOQ9#H@S/P[4XK94EU2?".^XHLD4RJ*2SQFUL+,=7.4"^+ MDM,18=?5';K1Q-E_[FX0(<;E=+=#M9P3KT?,KH7+06GG=/8?^:6,F+J<(U=% M^ M])LFR[]]ULBP.4Y<<*A9]U^FH^];=R&[ETMJ*CY+)Z=O[ M,H*]X)(=*M M]"JIDT_2Y189+JF^&I[A!^%I*NGM1 M XC%;(!FJW@W:WI!M3]*VYR5]XCVPE:=P8,+_BD= M],#CP*)&IH6D%J4690BGHBAIGZ\1=E?T,[/ID"*<)SW5O< IQJ6&ZW9'YKT3 MA=%>U($CG8PI?2M\?U'L?SU@$(KW?AKKQFT>>+W^D-X #)GM*<1P<>.= >R& M:X)ZF(T7@#CE0?#&E>Z:!:#IU$P$(S;8!(HD^SS@NID'UR4INB',;G!#F!N> M[&-%J$9, 7:8>K<,CM!OCCU5/]8]V+D$Y>9,,5?N*(=W]%1_0T_U6;Q%"?2Q M4#R[^*D$;J@0HVZL,HE-*G"(.P=XC3((P5&JA)VOB.5,H6VYL-@Y":^X#V20 M"C"$)YTO)-P&S O++T2 "FHO1=N!'-2%CO&M!L=QV@T0,)RYU/&JCJOM+V?^ M@<^TTH]OMM)WNRQ (C43OL37UJC5V(SUFVMO.. MJYG. ?HB09"P2Q]BK%6#P:=]A+S]D:VB9!(QZ&PVD9,I11OI?G-Q!YHLN!,B M7GW,539Q"Q2QT3=41W)C-.64)+W(X$EQAFTQ31I]8#-UTDX/KLA&#ZNSH.*&;">C(VW#WA<19 MFNS#HCW+Q'4\?;XCRZ&F7/!(?( -'V2[ 0]$:'"K::T9Q>79FR=?R1E5W1VM M\O_H;#=%Q?&*+"^]*0%?"B*=&V[V2G.,)L10C8!@>SN+;Y0:/*)Y_GA$\QS1 M/$?2N$S]?7:>*]D$DDMDMNL3G1DD8HL-+&*=MC79V6^*O/A] M'6)^XGTS*TE2'Z?=I^%EWQ?DJ/S]#*5WQ7M\Z\_AJ;2N.O5(E:Y !\#LB=W#K8D?;Q)_*"AO7'^M'0&#T%H\VQ!;]ODZ MW6-A-SKL!B90]@1O3S(;K0M;EWXE!FF0LEIQH)B3!QO^/H8 3)-+),'DTP;[0SX;]G->,;]) M'UY:"%S$%P)5PK6EU9I!,K42H,-3*T9<_;I18"+#UXB"$1'-#A894LD MQILR?&ZI36@AG@Y_'K1B1>#@^,1D3E93&4.LF0D9H/"'58ENM RX"LBI4D[G MHBXWF>_=XYT>_N]F4U!7!/+_$]@2LTETOL(&M]C9&_R8W0*(LJ7XHH@!6%*% M&;$@0@')@S?0YQ,U!E 7T.87LNX61P4%Z 59F3=A26$>2-?H[*)KS_:&/2K'-[ MNFCQQ7MTN^7;IA;D5@OV!R;Y%DKA\';SILZ7A.B\&6"C MOG_W)M99I,-,DH148MB&HP/*_EA>&0!7Q7CPTK@(W6.&RLE;?O;,W1,1E*-Y MGFE#Y_M_-3PE$!]8I\VKV.>)A)=0:*_,ET<-+6(QVFW?Z2 X7E[3OA6VTC@T MON>NS=_T HCV:UA]U&M %Y7[]8#[#J]?R2W("@3X$"GC@'@+>QVT6"?\$#B$ M;!TIKWBUKEUZC@^%\$_A:7:*0>J47K-\=;7YJNAP>2SR7L[WWXK$QEW4%:$* M9\5EO;ED/TGVAKL?V0XL>O-/^<$9,DPGG#(7-P>9FTL',*=QHYHGY%KYMJ27 M+)IS-JSB+;%Y![B>G*]P%OU-&S:>6KKPX1/[B[8_/Z<3BK2.,_'"J\6#&K*, MCY\[V,-,:9[,$F$GJ.^UDO2E7+THYE]1RR;2$="UM#C ;B&\>:.9[$BEWD8U M@]04\ #4>3 FDWT1ABV9^AA6BLZ,;,S<[9SV,?^ @R2XI#J]-UVB-DW!P#&+ M]SW@Q+AEX"<\=CL( BS6XCXM\RYG]3@R]-28V&I]V(IM6:R5-L6VER:%O-H# M-+S_K"&8CV>M,:_MX8[+.!^^V8#BG%RQPK1P,D@T2GE#.0K#]5Y1EI%"$)I7 MSDXRG&)?N_L>;GA$&*UKEPX_T"\'M3ZEI'=<@$(.9$O+&U4:AY_KDOD#TA[/E36&0<,U3";1F%&9[:75M8;?M Z?W^!/LN)B MV&F]M;H1?@(3J#:S"%9N%<4]9$[8VQI.$#E4X9KA7'K3Y-QL6Z^ZJUPI.&0M MW=)A_"=0N!#-UX)+8[W&-O2NF=UD,M[P!MV8]]-O=+]O7OTBRI#MRTTA +)1+.Y";@0$=C52=;IA01&U M<$"[LXY/7TG\!\4JX(3"/^/T9HSBR0TA%*6%9&'].0U72$P(8@T9SB+NE=^R"##B.T3I?O!>D(OY@R*R"69NW(0+K* 2F M-=5D2"I?99J?Z5KK*,VQT4X#TK>0ZX298E2-IO,N =X-R(8X&?=O3V8O@^Y52IH[^6+6FUU>R+7N"<[PSW>BB(*4+3*>: M0N-TC7#:SL\IZ1,,>V;KXH& \P1+XHX_S0)IH"U5=1<;G#<&[]=BU5%HRKR( M%OI*H.I2-6%YY[K/Q-YTM:J/X?B7_^C5C05>4SK-A(8R:L]%>22GK$1^YV5= M+D4C"BFIG&F,FN*B9JGH>K[J6R#*J4@<7(U%B%4X6KCGSM;?BJG&O.FC-2JI M>%MJH?"EUW[PD9:#G<^7OFGB)C2Z:?2Z%$H5:)M"!+RQ*P4Y1<[Y$CW6W3KQNL<8Q MWY7<>F245_6FK ?4)?XB2 ;H'-;878%,=OQ0X@A.7@DQC\Q^L,@S:9^Z(_X< MW8=P=G0]&#(=PT!!YK!_,E@"GD\Y'YKE8"S0A#>I>%;"P^<=&7*5DY? M-CH^/,Z52X5;XE5?5<9=AZB4*F)1+=XCS?AEA]BPN\(8PD[>%<:0,P04L=$D M%7+52[]+?J'T83'\SP3.Y=($TB7E[LTA9RSY RCS$?3],E\X0V(KM\FO-"GK)*)/_(YSC" ME5*XTI^.<*4C7.D(5SK"E3[A!LJUI2>-[B,3H$.Z9K.A+NMYGP<;W15.E[5N M1+ZW9;=1;C? 9AN@&CCWC\8[N(A:AV*37RSO/K#Z%!6.$0AD"K^?5X9^2?>S M(VW(]WEUGF]0?W@5%BN?Z+EER#F$DB@$)7:N) IP+,8C B[OHRFO=-V(HF_X M.1N[$E#9>$C3>+6".\8YC. 6AA/6,.ECEXU^=CP#;;XIVCWR4K=9#LM.@;E= M3CRC4C8[&C2>L"PE)&"_C_A"(8PW\#KK 7]9YJAOF+SS'WW=Y9;$G"U[2YHQ M &',(WKF:Y4.><0%VH4I/9@6@@<9H4ZD'RQ4@PJ8H3/%F&4^"4;"#G5U4GPH M6UJ)V:LW+E@_DPZ'0[2J$5Q$<5:P/<;Z$=8\&F&F"]T44V"RC)JWFQ#I4U^$ MY&O((LL<7!'BA!FV78PPH!4WX%M*I,/[4FLHG'"/D^\3+*+!9&?US\+_RHH? M@\J^"SK.(%2U*9;G!?.SK8IFF& ?5JTDM\I=SFVXS9!GLA:GL 9U1'"A#I_$ MR[XJZ$ICJ%FW2=+*D4JGDA$)M?F9P0.+='"+*-D-0)@L769AF,>6(FQOG]DJ(9!)CK"+%,FY4#: MH=JZ#0P4GP"V!D4E<)0!,?"6[*!56WF>G?@,&O$V+/LNMHF;?MSVI8+%,F]N M3LEW1Q?E,X):Q>HSI9Q!MI@[GO?R?]0J2Z5C MQ"&"C6A).%LOP4*?.=R.9!?<:8[$SNZOF)898?T(18@4!OUGKNZCT,@)2H2F MB=OGI8QC^4G\F:;G8#WZ3#FVM.@<3CJS2":IBVAM=\Z^T;XEG@BVBTAJ,HFS M/2K\&E$"]/0Z1*H0)H0&3K>(Y.#_'@YZN[2["9476N*J+8QBC;OV3?&*C@_/ M.'9$/T.A 17.'+]^0JL?;C0(X MN=+[E4/EI^)#,+%=,9OVA3JZT>4V639E% Q)IF$?'E6;2&6T'GF?C/P&4V!] MC*[W-BQ:[<@VA "##/2AAM&514-FXM;-?_!H!*_2]'.*#: M<.?3?_"B>BU1"+GR""W:2149FUB;5)M,M%>$P81)]96 %1(%W6ZKI>\P*&GH M@(N$I71XK,EEM%\#=%INQ';DCG*(LX=^F%P]Z9<(_CX"03VL<;BQ00/5T@K" M+\$>PB!J_W<:P #1CYY[)3A#IS!]T+4&C9@'JQT.-TQ+.@;F(-WSU:'*X,T@ M]Y%AAO59ITD [N.I01QC>\(096R)!><7? _O.W5%;K5$%-3(*Z_"\EA54*]) M^E^BLT, (L^@MR.8/-10AMHJBOGE'\K%Z;>58T#T\(E5T1&N1!-M1EE'AA"> M+FLK8,7?T/2Y":7QO$:4*9BON= I>=<7O,E54QP%8 M49L3$=C2C'/U>*X\?YA%4C8G#FYK<8_'-P*?]91Q+%!!NWAJJ.$4RAP %HD^ MO>!7!B-8L@+4<+5\^#;I]63I92O7I^_7AXLBG@Y^E?24PU8M5$14?;)5/:1* M?,_DOLF(ID^/8#O'FTU8;+WZ,ER;.K%WUAVDTD-T-MQ)S%L&A].\_<#]%!=( M7"G]NQCKJ>Z*_1,; ;.#6TWK>'F4V\LB!Z5QC27._T)VE.1R]'J^$F' MA_4EQ\C[Y@[!@#%I/8PB3\9?WVG(+"V%3&\+..;EW ,XH&YHE^9Q&N:H*1 MB,\;_HQ;15R.]*J5= 03LO1.JK$!SBNMAL:;E0&]C4$RR G!XL M&W,-PJ_AS"5.(I/[$ZAXJ=^:Q(+K0S*FHA=E[KI*IJQNSO.J_)]>Q&)>1"]LNW((4F<^*AKYT'W-.([C>@S-D\C&75A;D8YK M&RS)"3^$CPN/D1&#N&EL%/J.X: =S'\F8IB#2S")9(X(E!2!\MT1@7)$H!P1 M*$<$RB?-QP5#Y$O<'B^K0_\YAI7^*#9TF MC)SF//+%&CD-&9_(!4CXN+_&.)&VC/M%$YBR&31A^5,((:G_*AOM3&X^U6#* MO:EVRM*'WDIZZN6+O[S,H(J<"N( YH"C_OC,L?"$-]UL"&\P^ C'><3S&;E-8IK:.;!:8&>*_S1## 9DD\"H^6%= M"$;A+"QZX MATVL,H9LV23JN)@]:S9U-OL^%Y:6=_31U>YT]A_U58%= (F0V 0;"W=8=7OT MLBXX[8]T6M@,QA^*[;[8,+W2B+?V@"Q'RM@2"^>@T<7YX2X?' EM6=6#M(_Q M1H$/.DQT%RF%T]U;OUO>.)(G$M(PJ:GO(I FX^P"1(?[N.=&9$2N9E5XEZ^ MJ\>]+%=,9[PJ.ZC^(35X.ZXVZYQ.'\,$I(^[OX24:8PMURW#P7&0K20O@(\=<$U5AH[,I3RW.OLLPGVDN*K%G)]/.<'BZ @[/HA==-^[7 MW*P6HA*SP,=YNUAZR>.59CD2P2K"&2\K#:A)K$<9"2:S;['RWAZQ.,Q#<.81)$)3EGFFQ^_V:%JO4 MF.VO]1K3^# +=A_),\52*P>9A6Y%5)LV:1H('EU5#/,O;\8.;L'!D4A M5['2S\5_I@:_\ZD[> <\CS+1TPX&M7,8NGE;+CD&49HI#J-MBAW^UIDT*P!E MPAV%5UE3=+5B2EFK/$/6G?>JIJ%D<&YY<,<:OM MCM/('[>>5I_1E=^KI,%.HQ:1?#2DKC)\Q$CBHYK4SM!U7CT(^9IE"7K>\-(-,P7BC@2.SQ )FJ;]5O]'.^8]_<=H&+=[6+6M!2%O4',Z9@ M=I:1)B^\JQFE5"#\U1M;3.K_Z@01!G3 HM[N&MHQ L*_D&S) ],.)Y!T*4K? M^AQ+2 I8 VF+%=W*$7,S*7]*D3,DXSTIEUY+?$G$'C,6E+;5HXR;ZYGA!(>+ MBI(\X8",S]79%>@$DY]R@TWS\(7IPPQ%&%8P1H#BR[/KAM!M,/.RLI-#@7YL M; !B-^)J3?\G/C+\F"S@WLQ16*2*A '[-N:J9(9JH=5@\!R6#[0U,O>TC^), M9+())E<8_";8+0SEDX_*!JK)7>@B%Q5ULTE'#O-,==*!%@;T\YN7@!60[#R7 M#X0*SYT3)B2U"H!L9R[S$/49EOBJDE%07+\QT2-RE+9".!.YJ#90TVE[%!3J M'3/R6&$B>6-[)W;8)N8D6@W#S66:NPOK$;Q NMEI+%$)W3TU3!]-@D& V@0H M2^Z:*LQ!SJF+Z%"Z^0>S(E3I>"#RH@.>7V?AY*XGY4YDG*E1 M"DM(W4H5?RZNRUNHD]*N)GD'#'95;HIE8O+/28^^@[ZH#GABO<^(?-!X1F33 M*O3RREZ*6U?LD,B;9<)\N<)QCN!5D %96$W.Y(DI MH;5@F9.@TYY)('(S/RY'\*4*_#I=2^,018Y,X>T\>'C$V1XS- M$6-SQ-A\"L:&'?JVZ+J-V&(P&-*%C+R(]9"?SL!)QL[5;M^G4&15N'0V*<#- MOBFYY%+[-V5Y?%G%RH<-"YRLY10&TFASE\MG%"@E_TIZ&M(K?-5=<"<\.P)) M$L_[_T91,0@8F6\MW&J4B:07PEY4IYRF8;Z1S[=)=D;E*VZ36YB]:6H$A*D7 MXUL:>O4E^Y180?T/(:KT6*0O*KMQ^_R/I,&(I+;FSFYES:/$XX"U0WA33!;3 M1^P>B:0B.>\+P@=;-5K8;*E1FY-KG.7TK0G#'A3D)]A?@L1\;%FL%^\YC@:> MX.ZG_D9@I62B2? Z3MXUT_Z//H0.12.=5GE%Q>0;K44\I/M^01+@*V'*T49S MA>1P:2\8%/EWISLAC"FE;Q@8LQ(J=&7@#ON=X/6$PU_WMA-8X(K'@:.YYR'J M*$=.>KRFMJ=0F;DI+#7L;!@H'N5:K&W5_'G'23IZ21(I!2FO60 M/H-(CS^H84[V*HR[&E$8B,VNX0@QG#43_47 .51'S!/#:.2Y=*S$<[ M>U&VX65:O:.>A>MPUY:PY3]8NO]YDNY_&\W]:UM,_,*C$/W.ZTM-;K%0N?SV M6QJL'!O]<,ND%MSKDIS?\#V]]4S5A33@9-ZSV7E1GS?Y=BU2DZ9\7GXXL'!: MR(#U/+A&P@PR(#O9KX0VJFQQ$2J;D%$WM<$3S6TGLHYN5[CBG5MU?56A@_Y! MK9+5OP?EJ]_"(%@7X1%4AO.(^79\8=\C35$Q(#7,T^/:J1%"NR!'."UP6 M[G.4 Z8V_.>4H6L4K32^..CP2>DWW-\G_"- -W=4^R M=7#>0#X0.W7!P6YLN4BC!E]4VS1EN<<[Q;)$>D_54\-=0:>@V-170K/@")1 MD\8:B)@>@6]R0ICL3\?97_XZ)7//^W*)72I+H3U8PM?#^S2[9L]>26D!?-I? MC*LD<*$!!Z9BZA0 '94;$Y0.#B<^J*5FZ:E543)N4/1'5%R-5NCE/.\YEAL. M[<:8U:6RX,^ [OPLZ8T8C&NJ@UV'DQX /B!LY?7X." _ RH&3H6I==Y2JB]J MAHV@2WRXQX*+S^H]0]G? M6\VZ'3UMN'CF"F+JY,+,$#A53'^X^VC<0\96Y].Y>YH17(2"E/DP)YBGX"KX M#^NICA#?010)%B>>LP<@PSH>9I$&(Q2*K>MFF=LJ8JRV+%O'RR9[P9I-I3J#?+HV%%+]G>.-&6074E$K/!HT9I*0U56 VQ5@QG24?A$?52PSX")W+B(G'3YJ7 M^8XG49E:EC4UQP@QR;3$.P/QP% 'B%I<>)-E1G\_23N3 I@:XA0I( 4LO+TR M_,F-=I/9(^ =B8Q&?"H6&9E/4]GEO*EK3# A:VEIIS!1;G&'D$B8""7XL2$Z M2;>.9M"$T&@C4.6\2%Y(:;S&NQJ^-5R3$: 3H#AB!J*=.GDB4<0&?NPXHVT\X"9[L(D1*^6>!EYH4F@J;DH*W-_23_GBH\.F=3QXR=YP/[> M+\]%RIEN?G1LFE"_#3M50V+@!4]H8C23[OZ&3@+_9Y@4 M+<^ZQ.W!*]%P$1Q>E)5<&6!VJ D MN^IK(%*YV5'8_H")$9H;AZAYTDX M-R]W$OW7]&X2(>2JN"(&061YW>S0+VA..&TI 2:8@O]+B*IK M8KWESLE^NX=QS.5K@UUN^C*L&_TJOAT6:A/V!+(T49R2CDC*K:R K1J80XJ! MLC$KXP36?MR42C)8G=%@NZX-1P:NV**PW$L-ZJ[M?3G0[.+X30TH)5X-B0NR MXR0IT+&ZHR9"+^K@"H1KA.F3R+UIVFY&JK/TX1=Y/B;AX= M<3='W,T1=W/$W7R".V57_.GL9V$]'?M&='7/ >4DN5L+G%Q_A):>^"JEJX O M:<&*Y]JDQDY%" _&:C5Z,W&/&.XB2?_&P7#[513>6U [AUXXR9C5ZX /SC*0 MQKD'GWSHC/]S[O$[]YT_*E#QFJS250(]=0Q MQ7X;S6EYS@XAO>WK<,9(5N? >L"3?_GV328+0XO 7XLI2R:=$?*/X'NRQ =) MF.#'2J'0@'%&QD%IG[H%$AMN8]+I3N,-XY!AB*2LVUW&%S/8#0M)=8'C M1'-?/68L]DCI&<:315-EB.X*)B""I2PWN6VYT=@X2;&CX5P:&GP\8?0?%N MBQ'2%%SWZDSX$&9WC -B\5X]J_9I/:[=0NCT8 M*=F(NI"-V%!(298>?"$R4(UNXT1-\%+09_NF&&A)>3,?3X^DT6+4++(S9W$- MT<(4(9)Q4W-ZD(><*VV+&Z@GK="F03<''!@-I*G+YD9+))4 9U"U'7G2LC(D M0+X$(("5YE77F6^TF SF5+*\:;8?O#DPN3%[\CN@= "3W[:?;P!IX]S#N(\U M*8G;=LJDOW6 U_+M)V>< (WL@"Q49QI, _V&:=Z(WUF]\I\UM]Z"C(2=FIY* MGHRIID/Y+F_F>;! )Z\_;(*?^(R2LN%HO7O]WU$^X$6]7)[\$,[@^]G?"+#R MKFN(8.AMP08_?.HY^JS"(]^8R)X]*GX[//&"A+8$E]P # M*^\9_&0$F5RH(2Y9]-#\LBB@$_F.R,^3+J$;ZZ'$+;KXQ'SKN*DD5DF/F[ - M[7F#B2&[/+#0'76>'IZ+,P3<(L(A>H@F,=5ILEYH^T1&YR]O!]7$S8"_RLWF M'@(CS2W3-7)!OIM)6UKQB#8*H7#:A$U!! *C'M!9EZJ)[X;?BK/')%32Y^64GTPD!8 M.J% JT0P&+? %8DM#XL9GK0%U=%@THR:5-';JMMQ\TG!9;4%,K3C8)]\)"BN M02"8#SR5'9N\!Z9+'ZD9IZH6-I;9NKYBT\PTB%*WU5I:!NH470%P.,1ER%BS M56H^V5"+1.O(\7?MWHA%1[MX+XIPXWY?, I>G"\E=.':EB,:W&P&3V[Q2D5" M^F;WJ7\%'>UPL!=EZQ9=^;@PF20=3?,H=)KAE1F1H65?/QH!]RB:E&$LM+7H M =P;")2 &R)\+9BA\OO!W51 M9HFLQ!MI8[KS2^"6+_-Z2%XA>2L3L3)7F^JHJ/;W MCK"@NA&5]ML3=^,ZG!>0\B\;"B[() ;9=,XW\O-%(]@1_HN(!+C*9_2PY7'N6P;_3\-7Y1R(1 MG&7AQV3<3/#F.I8X<1[5R$!9>5Y)*7,DR:%KIJ290EP/9%G>4&>.,N)VZ'/1 M#MVD4>- D_%D,F%JY&(Q/ =_98H@D]G+T"_R5!5RO4!Q]LDU*C$B0IJ5"":A>A' M705AG+L8LPM09%_M]X9CB&;?V)(FLE$J]#$WY;0@_;57#O#!\=T'""/"-B#] M3"Z4Y7]JZW"V#Y541(H$0Q/40G!P$&X/,4)W:Z(> >!FYLV[LWT1I.5'_0/WODDWCBXTM*;FY<(CA^^O%4J4)MA M06XW(WS&65(=01&1TA1*K4OUJ _&-:]V08'Z%]3MM67=D:Y>U)NH4)S%>$7# M&5^8X<=CJ*)JXO$FJ@EESP\.][)N8F<+%,;T'U7T66HH42"5=E),2[$&.Q*3 ME%@:"/01YJIO#2+/K;*WVY&N7G]PSD]GOX@LS;BX'P>"*Q>]Y%OZ8#ZZ@N*#M)I$4D:11QG&I["B!#"6VG*[](W@ 97$H>JN3.!+6_KV6X)GJ+XQ(U:KZ.D/!K M@Q$H1(D >N#U>& S7)_GOH$V2I8GD;ON5VV.0V*8T^3G,3_!%3='K&V'.)$Q MUETB=;1UN6TQB2-1@+ R=3><,20FDXJ=:Y3--](G&F767 W7:JM @PHSK$=[ M.ID9^@_.FE_,D5%!!(*E1#8ZJG^^ M<]VX?JP861M"_O#^S=3 1FV\?@-JAB>+W59>8=25!_EW?&?8M7M9.'IM)A,Y M0X,?"LJ2]YWD,+U.M1?K!#^O.V3)UK[SZ_8C,L7:D=NZXITYU4Y_):'C3?W-=Q\R?^2#9T M\0V;XXV3.NRP>%9DM&RNYA4%=\>'795XN1867 0/_JSW; "9XH_:!]:D=X=[ M8?;_]1&VZOB]PN.#:RXYP:C*)*E5MNHVG&&F,B'[3"H<-VTL3^,@S0UJYWW: M0"NCDWLUT8B%:8/,LNP>+@QV116[\>U-Q0+S+9Z-V=N<$!Y5?=>@ @@GV>/G M_ JE_&OI;BB%C1^],ZYFV0QV(3Z*Y2.7V"7UXSA7.<0JW7#KAK%3VZ*9'O;- MN%9TUF/P.=$ZCFH [:DA^=VJ_(!6$?6*PJ"L8B;O<<9+,YD=5["A?";*%"6B M3?*ILPEJ#+K9QRP09TK?P82[Q&V!(2O9[FIP#-1 L*3?,,\?7.!ZR<1:E0E/ M@4OG[FWL1UQP^SCTA#JS9KA2"! [] D>B9JE-WV<=,8VZ6D)UGPD5M&R4I+ M!=J-\113:KC[>;PQ,P&?('ZE@TQ1>KBA, M'J7E,LQB<2[8N? TD9;!0 =<0+B!M.L^\\1!T>LT43#W6T*U"NXV@U"E34%1 MTR;VCVCHMF?'G3)425Z$;@J2A^NEKH@L)7>_",0Z(K3Q>=+R(4+, %OO_1*0F'"VEXQV4K$-2!9R>?42V/')FJ(VF303HF2#LT__ M:0I447R)1^C:%AQQELYN/?$.<8*&L9$ILK1A>3>Y#^OY2TSNQZM<.]ES1\89 M/)!P>+0M;5E8_?5^F.1K^QYDCR1E?<9_->;<37***J8N_&,?;O@F_.XR>0P9 M$&ZDF@E.C5=GH*#NZ61=&4%/FL Y2.1+=R17*92^S?\+#0FB@,)OPGNSK\(1 MY0#1L4V$L]YYJ;/5TQ$8\>D(I'I0YAOFO?FM*;+X9;K3;UA_2TDN/RNZT6L+!&&MOU& MY9*XKIS1))_:M0S5[F2$,>,)RU0G+1@]OE] BA2"$43XX0BB.$X@BA.$(H M/GN!N9Y+%U[TB5SMQ50 J5VMF) CEU(>=_9;=2,[Z#IKA3GVVJB',LZ\3-3W M[T_']'5^ZZ3FZ7AVEPZTFKAD-YCII"KIN$;@0!4):;Z[VR<66(90M$.Q$.2Y M%!J:M(L,41Q#<56T9!/!ZV)=UZP S[$@I2+MAX4;)]/J95^Y7U!)5J@^4 3' M[!"U2*PF"K;* "A57LZ)EI5+/=Q/A=KT-B-Q+F\")L?!;TRM+@L_!6M!$ MZ+#L4OS30*PJ8GR6JC/&DY/ ;;M$Q>9F;6B#T&6*:IT2 .>U>;,F:4-)/MUB M&GN\HUSD4<,E.],4\+E)'DIEI F\WY5;F]P M&QD-Y>0\C*2SV82*E9?.D6;%MG:Y+C&4B^WF-RR*8^#)?\RNF:J&O8MXS$6[T=W MMK]S*8$(3B"O(11-1((*0HWM1--0(R-).4UJ&M'&G#67<$;V5'*/;)7< YGE M1^D>(F*J6$XT8#LHZ$U[/?S-.-8+^N(:"'_*%TUMN@+T4J]$UGR&WL([MR^W MY0?B-1O*WR52U2K<[@XJ),FV]48\"-=_RX45=Z2]) $#@YR[+3_KP@YURR"9 MJ!5;P6JI.;@)A=X^0D13!+CG5P$0GC(]TJS,'H[WM+ZK)LZLIP"Y(6QNT!9@U"?WSM*4=NO$407,C@D4F&36^@ M4S_;%7G#4G$+EC"2C:2N5M?OE4]G&(GZV;"@UXV"%(KX$CB=I#S M=3A&&4G0A9=C=P"Y9!K"8J>D,ID[U Z,R&0 ^!W!J_!/:SDSO-NS,%1IYY^* M2/9):>K[_I*75WGE1XJU9ZO 7H@;F>P7("L-QXWB0[*HM'KQX)$C66 _1N8? M^!@(;$P,0\4 5.!%)[GB_]!RB2L6)7EF9-I@7:J=W@H#WS;,,W4M M[_S;+\^+CAL46(,1. <7O4350"5H&NE#.71FVN"O?>LYZ^B M8G702DX#G,)A:P,9)S[J.BT,,R4 ,H!,FQO^,DLO44=M"[9"AZ2/F>ICXAKGGGEAHF4< P,SE[ 3 MOF)IW*">X76O91ZD8]!@Q]),.)[ 8+GP(@M%+-<.H$IMDYAX-?N:1K]1 M_>T(74FA*]\ QU,M/Y>8\@6WKEO=71JWP,;=[ 87N@25Z.8GGQ_O M.9?D(%UYL4-;7 [*)F!'G]>JNN%3+?)/"*5K@.M-^&"T%"2E2Z >(G*L!"=/ M3 ,*.,+HD=>DKS;%6OJ1$_>H8JG41$MQGY'1I=;DPO M MI>MPCHT;8=.LN9X(UR_L8OVW(8.+;A6?+"?V$W-IYD7DS4QK\%<1R3X"^!LW M09YD_1PK 85ORB&_ZLE-#:_'\I7J"H*13GL!$9K5E?E$Y#DMR*^3E!/J>>MR M1^(P9%MNLT(!""@CM\_[S/RY!2Z!4E40$OF:;,\G_7 &V=.7[ MCR*N)X+Y)!$UR/)WP/530ID#=\EXK4I-.#C=5BR9I#A&0/.X8,/%R8R#@A\L MOYV-UCA&.;Y8RYLZ-LWHMPS2(XTM5G<",<5DJ?@+CZ(_ MIB(6")%FDH\7#+ MP7P7#-NV=$ ?I@VE;J!%[+)V]".3L2NAR;RL$_,K(_!2@5@*.4>,+;P@3E"- MT5U?0M/11\VK]J?;K!!H%I=&F!YJKM="U3AHUWSV/WJ1N;#6[7;4N^T#T5;D M2EANQ.N57+"%BDKR9575EUSSGH1-*H!/T;E.6(&&/T85BI0&_;0Q(QU01=#T M^P'*VT&M G5U*RP*X75,";'NM/9B^R2!\X%<+D(2NL*T35/J_DWD-F#7Z3:F MY=WL]F]P>9H5,193!E0MOZ2)+:W-IE#N&ZSM9$T@F[TOBNULFRM/_=2FRE=T<2OB98[:)+B'HK7F926 MR)E9-?F%VX*\L-G -M]$=O)>"VL=M#0O(N_0,"NJ1&.\U825(=:3!Z4UO9*Y MMXZRK"3KJ562UI7/7,64<2O<-FS>L&'*O1:F= 8F5>%L6KQ=X+O<&%TWW70, M9,4J,T)\7TA!MC&@:Y=26V2)>8SE"RDYC4REO[I&;%N%\._XX7<4_77[RQML M(87N?IK.WZ5VN<9\DUNU3NF7X@<=6$X; V/.5.UB,D+7?YE8BXW21'32NZAV MC@,?AYPT1KA!E[&[PA-6L5&_] !!S>H/?MUXJ>(L.)H[Q'!B;:-U$,0+; ?5 MU%TQH-ZX*'Y2XL-L5"KELX=\#36$KI28(;'[U[,I[MTVLKVQ;SZ5D^U^&[6_ M,;F;Q\?[$Z;4"5S$45/5O@_GBE^5CE!_SF&O(V#0A\!&_2K@@6M^8K ,B6_@ MKMT-]!D96D4YD@U7/X>4.A1 -;8+/?(V$DN&X74EQ2[S/M[YW&3,MMGX;82U M3[G;G$A,^OB=T;K2%D.;36LOE QQ&_XVES";P^B>FGB+%G!LKK S$ZY\EZUZ MJN8ER)&T/]NS]"FT!H2\JV0-K*-B0#(?Q=<\/#BB'R+M!J,ZA293J&/D4)Q@ M[RM3C6&X%97L+HK$F@!J[N@?%4#WGA2%J_*BOXB/3),]5^L"=Q49^,4:[K&V MR5,XK6>5P^K3V1U7M=N[RZV[2."<)_!@C[1G'/2 NP4A B++%G]$=]1"DG=G91B M)6(+]B4TXZ?R;BD_:WQ*/N2%4$P*WQP[(K#=I: _GY*+X)AQ"R;UBVT(K@:P MG4^ W_U*70LZ8#B.QEIZ8!.RA3A9C!)(ER4A19N1R>;9H9C8(8:5W6%>5,6J M[$9=?MF>&.^4']3MMN*?18;;/ GHG126T)#J^FG:@,C'-$J J!5Q MUD#'Q3 MP>EBQLZ)3*@/O="!LP&Z:>=&O9 MAH^*+)%611,/D^4BQQ(KM02AQQKJ+,_WV)JEIGY"S*D2YPL+[^2;\V)76Q4$ M+D]$75.615DK<6WW3772;R.1^#9I$XVO@O6/="S1B0O,] M L3H(ZAGF_"-X4,"@TR5.=4N*B:2GA2BWZ8#];5121(7(F\_W/O:\)T;A7@, M3^C0Y![:)X^SE I@WO_#"'1,JW[ =5!=>:)J=EN\]=.N@$AC//(2;I%0.2)> MOCTB7HZ(ER/BY8AX^7S$HXI,Q:V%A@F1+3"X^A;JKP*L3UC8N?B$(FBU,_*_ M1+QM]#0I^OARNC@6>,Z@HJY?=RUX%$^T^[-;1D26I SO=SCQ8D]>SZ&&68B' MX$64O( '8^[8WCGF[KJ=MKA3 81)^[*PW.=HG>(@3I*3#&(1((^F'7T*AYZJ M?M%^I 12R52,.YE[+;[@1CX?CK1DGY[;-"KIM>429O"WB%)@22W+%S77-@6Q M(V]'/Y-74ARE2>(L2'!.RH6E0<\A'=R3[E#7D;1)V+ZF/T3)@PB CO-7!%>U MA)GP\DLW<;-\CQ8;S_W"];-F@L^="6WEF&P&5,TQ0C.FFWEDZGP[M MJFS:Z$J+U8N=0"1]HQ,XH_XT&IMH=A*3,-)X\JVK(I]N5*_684MWME-6Y1RA MFXYE4&BASF#\^[31F1HWX9A67260=OFF' X#4TJ<80L0=X.,_X*Z^$ZF&HC& MD1L3E[J"Y(CM/,Q..)$@* \N QF>#%A#&?^6FI.YJ 42#WDKSOHJ3JRO+&Y2 MD6F"F4GKU,QAK6S#(%,0QMT3#Y04HC(V2+0S!!(QH?U31L!<4@>O(SY0EM^!.W=/GV&S2DY*/X,"@+*K!J M+1W'M[ _N_-.=;4!/G9:C.*:3>']1[L'1# @;,,\^2$YS"-1!'ZCO%W/5JBV MH<,K['9W]]W]DAUT =,%RCF].9/669US3O7H6@G*+C%L? Q P),;_"+VF_%3 M'7[TN6O_6G.W&-OOZ&+$#(['563105CTG6A"*0=4@N5.V50F!9V8PE.K;OP3V$:^A&%)*$AQ\A9@;!2)!I//WA MGW\,KI94N) *5[0^C/BCA_\:]VMX_N.'CQ]F^L2E_,TCMH7Z0+X#:/8]F,GP MK31V3")^>':5K93;L@=<.KPS9=I.F!7I6G";7Y6S+K(HQ?9/N)KN MN75(*@,06AB5/R#SRHY91)'S^S*,'.M&U>6D>2$)^=I=VQ5:PE'\5:H,:>3X M2;U0:N1M$3M:D?Q-:NP#X(G'E[;UW#A?D4*-BC+L;WO_?:I0*#RWG<)N"6^:RW_RU4EM' I[UL7!-8H/D=4H MEV5TM(4'.>S57.]IH2:0U)9G1_M!GO>\OKCH*U- HO\L6_*@%<2'X_K#\^?Q MO]_V],47Y3ELRFN[@'?A@J$T,+BPGKU]^6[V;-%I2]0STI&GS.K;HEV$*^K- M)OSY&8%8Z,X,SQ<'X:+@UVLE0P'C@H$;Z"T7) 5>?J@R@KLPS'XL9R>W'LB> M:'%4SC=V9]!?G+N3PO96D!7F"8S3#$_)KQ_[E.X%KTM>$.$@^3PE8 M!#[C@@BFX68#B$]T7#N*0'3Y+QU=S-F!5XZNY7#[AXEN@__LJ":\4I#O_75H M"B8" 6.1E%DD"ZT\%)SVCC'J MLU9;=ET,!K&627NIO>*G%MZ$U>HPSD5 MA#.90SDS8 X'W;T./)W_)!;9CY;A/%3?3CG02501=D(2$86?[@B"'P-5;D7: MV59"WCX.CDXO Z2R(__* (WR](A&.:)1CFB4(QKE$UQR%%VF-8T/WCV4H(VY MZL3U0!DPUI>BMTGW?[3M5R5!*9@2<:*[7Q+.FD\:L'=?)]QLGM,71P[_E]3) M>1NKJE\D-_RKZ(U!O'';E)?Y8I=LDR0^3G)6 @6'W$/"\K>,LO#W/.;UZ\D2 MD9V+.\=LV7E3]U+ENZH;/0BE,@!)_SV+F2 /)9S-]HG(A@)@/,EQ=Q"8H<13 M?J5):#_]8$5W2Z2BPBJL)-H>L27,*?]&'W[PY>D?@PXZ&BW,O6=4@+3?2Q&M MH[))6/>V1&\,.=3P$B5)[>5&;#Q3BB$EZC;49] BO#&E9QELV'&,A!J%5'\1 M@,P+^N";^%9O[65@T%[^.OO+BS=O,]\ 3U]_V9/X?-AN887MH[& ^^M_WO0' MZ)-3/R [YS_#G(7H1C_Z%7Z;Q\39*?[ZC$I1P3JN0'E 8:L(FDA*@S[S-;Y0 M,6O_9K2<:!K'#D.\0XO+FS@L_=_[IFR7*K@B BT&>5_VUMF:A#S(Y#@23^X, MAW:]M3]H)9 @*-0-&H<6]EU$H+7,65Y8_?7EKP]^_<\$ 46F)UP.6^X@I*[A MOM+J@ZV+=.2!KY7*CA?XV3#8)1=%T/%A^,GPX]WI M[-F&FE#.0;AA?[M7_[TY.DW9X\?SH)=WM":?*7RQ;+%OZ;9^+=_ M>?3TR=FC/YY^._Z<;/^O<3[Z+;W0-__*"#A)J?N&V\WRBO!:$LF>(<1EYR0, M\L2-4JN>_(Y#\B17PIGV7@Z2)1\HBLY^N0*2$EG"\"#D)?[:4V;#VF(G# \^ M_E@$MT%]G!JF>Q=OO9Z MC6U/=992H&[G=[*>\"0YPF*3'+J]'[QGFBIAE>K G,&U=@K<[ MI\8YL$XOE71LN\DE+;1GQ<]FZ_JJ@,P!3K(\E)ZT%D3#KA!]KVTOY,M,AFXF MS*0NU\7A^7<7WRNZO.V:P?7WBVZP9]HZF8QF?!6_2_+=8*P8Z_':8VKG$JBCKV!7M0(6I9Y-O"- >D,5H1KOV6 MDF0M+4OB[U%'OGWGO"^7NFUA@!Z=R78.7RV6AZ>2-MP)NT#I96W[SG%RT:XC M7U#0"E$W'-8,O8E:O'8;BF&2'>S9\:CQ<_%,]>, [6;2'\H>K=Z4252F 3=4:D#Y^[ N!^>H9] 6DP;,9:<2,8 M=K*?/UX2UZM2W0.EQNL*?S)W*7:;O!> V5WSK#%6P>;!@]6@$4XG?,;Z?2F^ MU@+@!X_@S6;%24I#A.)*4U>H<_B:'8%O(1#E[S+I*;;CX(!QZ+T/@^%MI:$H MU6XK]1EE;&QTIH9GR@U ][,;:S&R-S7S71R#:3JPKF&D_R"PVK8[ 9--!0 M$+E$[-9W,[I V6FC"AW=G2TH0)@DQ.2QS!RE'47&"RL7!&]6Q6J/7,+,:B?> MV5,,D\D\H5+"=C5E@U]Y\BCZ>[:E%XR2"8I;T*9[46<(2P"' MF@5!P^//9I=E[7JY[1]&KO;>.ROC&RM36!C]%)W6!]:>U)M4;&H\7'N5;O5% MV(L;5>U-9'PI1[5PN.G@=O5=O)0O\O/[3N#TKJ2#SWZYE\* Z\EP N\H/2<6 MXKJIJ!#^G(:8+^ML]OK])E^'L62S7[M\C9GXKY)>KLR5"HC3RI,Y(;0&(,]@ M?5.QVU^=O;("";-%2&X/X>$2T462:4U?NWVK\2Y+_93DS?XDFD/ B#%+&222 M6AVLH@.&DK*.GL&:O?P8$8&"7ZZ0"[X#QU(*NG"I]]0*B1UD#DTIPC)Y[V;' MV?-P8&C /GGFSXAP0K77Q/ F(>N$#4T>-VD:'+2PQ-@D\43)K5X678)N9/@C MVA.%^W#ZP77DQNY5L0E!:=+/F(XZ8:5,LDN>#$/MQZG/I^<+^UD[VFH1N?0M MV4%]8\E-,>@W/"(_3V@Z,L7%$$9U4[=B4B=WAY%;),%,!FE=*HD3EQ>5O98* MV6-;(H5VM3$"@[B9EC>E/KHF9GK9.2:-V4[PO&;T7^8.<6VIB872IR=%)&RR\\9V0C(Z^W:'-RG)8% M3B'].B$#6)Z<\'WBPLMXO#)Y/6<^2[IG5H9)#(?PB)I)43-_/*)FCJB9(VKF MB)KY%-0,9W;_)]=V>2+:2F]J"8TC %>YL:7+KN8F^"BUTK*V:RK^,2A,#]&D MVFOQ.F8(WR'?$N*:I5T#B$4HZ[X)UI?$G=@^0JYKY#?^.[+&C:JD:)LN0NC?4H:=8_%%4X MDNY)\FX-,KAGQUWQ?RM\=4?YP*<>/7#[^$D##0U'$5U>!#>E\+SH@RFR[IRT M.DRNM2EW>Q'KW/LX(WR-FU=V>\ 76K#78@T_D3BA'?%G^Z+HA-Z :$4[X7'9 M\!R3F"#T(@UNIY4+7+ B'H_RI:='DJ*/9%-SC*$SVDM4.JG_>(7JR;&J$ MD0E_U*8XQVD8PL'VL!=\>;W"OW!-2&^KHDO >!G;3'V<>PIR2Y8%D[9* MR: &Z[_:4%TB>,24=&/SF' 0"WD6@WZ0E7=L$UT#U)>].3:R]T;< )T"RI1IWW04\LEBKK4 M42&0L$( "1G23.AR<]FHI@!]%VVHYMJ]HA5B7^6(52VQRTU:[7BI5554(KF? M/#W:0P!P>LP'_+*ZGWPZ7BO);E/7DR>HL!/D)OD90XF%OR+2UMS>KM#&\O6$1RF;HX:B$45GY_$KJ#ZH3<>@@%:Q(O.A?F5 M4D*:_PT-2-1[!PN\I+Z]R/)6(!=QI% =!.*-T,*M\F]FR4>?BR8X(+:&_W <>4,YLAU M%<8ZGROTXDKRFGSNZD@0D(0JLI/B*@:K5I]#'H/-JU10X[3%YR6>A,P9["37 M8EP/:B:2I'3$'9AAB+>B4'D17IY1K7+W#/V5." NT\C ,ZFN<&2=*.%I88Y" MQWZQ3I]XB-3*[4.*'3)C,=GL/"_W<%)MZ+77-DZ7. ;]=V[2;GE)^*(:T=ZM M=RTSB&+>V#X%,P 8-2]5= R /2![2V3$A1%M:[19(^>69]L89=#H1VFD;@2*,Q%W6XIG,UD5KE*'';_ M2;L@,1WEL$Q(A>FK4@*1=1,4=(2=RH^D0W/#3DN(0_BA2J!=L[P3%\XG["T/ M8W"F?S@#P6X!WD^,9:R*%'RWO!)?\P)[B3DKB8PK..0AUEC_H\_?*^BK[:NP M*W@*/!U>K'I&-6K&1B8[6FDIWY\[0$;')A M%Y\(Z0T! MIX(57*R+9;\Q7")JMN!!DJ7:SR#YL5UW]\F"O1[!$B<]7K?[LXB\$**@J%ZO MK*;PBM*T$;SB/7R)(SJH+XLU6\E("#SNNTUF)@<%A]>= YI!^H8/M*6G1L(' M<;7H'%+1$-S1S$KA>5Q3ANPA985$&0+/]?*M+G"->-UT*7BO*^IY3 OFL_.> M@7NTYG(FC:^-/H1.O3G- GOVA+\1YC=E6ECXE# ,8!$^%NDSTM$R@[;%SU96 M!#E:O5B,1"J4_BZW,Q MF4'V2N,&APR<("NFO\J9,3R!YT;*&1")5:G)J$UPGH 9H MK8C+[:6].)W]-$&P/#(7V-&T9]*KTE$6=01(3LF#$FH-KNTORFVIX9WOP>[* MBWX30FDE]3F=_4@AEIB:%*46Z;H'/!\R#_'MK^4.&10IA/3O>@*0Y J_N,D$ M1EXGQ?"E,\DXK *[&EGJ02G"VT+7:P)2[*N]* M&9KVL$M_]]'4;;-LD)1^&V'MKZ](]WI=;FF:*8*E=N6PAN^Z>O$>D_P:SO@7 M21Q#[]/B11"Q<*SB\E[S8G:)'B'5V:6=0,JIS"%0#4)$EC+!]/!3F9^;:>7O M?&ZN%[IWT^RF5[G1Z"SB7:9W<,U^]!T*,7&#KI-0F./C85(*A M]PV_+/$_C&DPKUK H1D.\9ZTZ&,H9TE]*@=!3SLCN,B%\L?!_(KT MJ%PCP79!4^H??=F6$;@E$0Y]HV3,V9F_55H5'&J5?_;5FUE#)R9\;EAH%$P? MAW^ 7VG75%&M<_ IQ.H9;6W!DX%CXLS.65%I06J5\9V$?@,Q+]35JJV'DE=U MH_4)$&Y%L@^?3;.HI3 *Y@;($QVD0_>>H+-2B:_[SI/URLE$J:)\L&[=6AC@ MU6IC"6FR^.VB[9=_6M5)PV^D%P);O^I>,!4*P3F:LL F"&XF9;'$PH(>( 1^ M%P/B[:B;S"16(,?H*ZUO"NB&&@@A%(-D#Q M'";?CV<+JY8/DF=%(R8EX1[ E_;>$IF8G8TT7..P,'7"Y/@H#4C#+* 4XLA; M7O_7JQ2-P2XC3M"V="@F5X3JE*5RYDAP]XX=MD+3B5\;O$% IS> M1.9N=1/7H@U8+_K(FHZX<_8B''2HL% WL48JI$A"\#NZ//+W2,+M66Q5O.>$ M5ZX0-L!DI->ZPYPQ<\PZMI&N&+&C( Q&Q0QJP4[L M<)'BAMP2B \TL0I:I_5;"C[JGV=?/?J:S 8=;'2>3WQ=<:E-49R0] G%X.?G MD!Y$K<1K0K#BTR!OGVPWDU)E"P9"!XT5B:#L[\1,9+GX\6C.9E\]_IJ8'<(A MZ#EM&BRC(BTPL=(,C:G5K^D@-UR2&(SPHJSX9X=#Q;/L*=0\LP1A%0WCR=>" M70I3B<[^1@DMID<>GY?')T(_@+I8@N]/"J\*XS+.KZ2(1'\Q\6!QK!KT>(BU M71)\@)WQB_J2P;;Q=W4Z9+NUZ8NC[# ON)6&^TL?"IUXJGOCRZ2.<'[-AN0XE"PPGLX'/B2'+?]6SB3 MSY4%P>F"QR'2FF&"J4;?[/W:-:9G^(+8RC1[=N59]2X7@@V>+/*.B1LL%UX% M1\F&V;$SM8P[G[;65W_\FI*!<*)98-J1<$[=OL,>;-]S35QQ\-6CW5'8RQXK M4"M+"*'4.WGA.5ZCD!X'7DLW!@VQ95V3.8T^!/K0T%CN\#ZZJ44.D!F1F-6T M!6"BL^D-X_H@5(QL!+%2\GWSWBB*)"!FD4RMU>^9TZPCN),&KMI?KC?D*IQ0 M='E,<7A%9M^N/#&?R-V+8V\J6DH^KZPZ:]Y EL1\F(:B.L_/%?D7>]K"(L]+ MMLZ\TI27D=,;1OWHVW]%BTO-?4ME%\4QV!3V%:(CFC;Y%L4VPE2I<2CSBX:; MFD7*@+MEG2^5#Z;()MMWD= 3C732&#;Y#-R]+W?[%@$T0A8@NHE /Y-5T7OV_6,\7*71LO-MY?U3UZORH='L>AR(KZX=UZU M/,^P,Z V&<.=_W%5LHT< $!POAK'BZH9B?LHE?6>MK'(466SGT^?@1?'87,S3U P!N7!G@K> M8VXR4I,M%7(K# !J/ *RL7UED\X*K[)2ESXW11&89O*CS"3,K9>(QGXIPRR% M5]IE>Y+G>["A^JH3##8IAW0Y,72^ ;J$3=<-=+!3/-4H=DF6'"KEA#-6)=$] M4GTFB"45[Q.*%\YRT)NZ]X].R[QN&B246++LVFT;&9^NJ.2Q*<-_6ME 7W;Y MD6][4($8@!W<55/O9(MTF8=C*9/?W^24W7;)R.5@UX)'<\3UI+B>[XZXGB.N MYXCK.>)Z/L%]G;ZU'$4K0O4E-^>J:^%A/)&.-_.(WQ1BP;ZK%C0 U>?JE=0B M4&(X6?0=/(V++)).V$MX1^[^[#A]K&2J'Y$#GVF[4=. :D MP@=42\O])2B/O (CI'2U=U3#&J9>)CIF@E\(_X9CBH$H0GPT M3R\'2,*5($ .N+=0]*:(N!>DB^QJ]MM6\()'F34HMM6=P_YXHG@5,$'M2T9S/Y.!#\!KF5QUSUD#.XVBOH8NJ^\B P:=<$ M=12H4Q)) K1M;38%,^HG%^CGV[3C9EP_X'D(\U9EQ^#+G3]($G!3!EC'$S:C M%AN<:A79S7-)1,AV6]YLOSE:!F).AG&K7%IC65+HV6],APQ$+N%5R .9.(WE M\G__X7KW\[O@?QX\PH_^]!N?K\TU8GY^H4OZ..=1>&.G[O5^73O4[B5KZXU?HZ3U? MH6_#"G$#Q*O(O'_?UV9T9OZ?SX!^\W!_!O0VV_6[/WSNO&EXP<4)X8B#B_7G MMK\(6VIW]L4D4Y/1%Q]0A#^[\P'^+C.LGV>JCVG7FQ_%N[Z;GH:[Z24O_(W< MA6\Q7*ZZC>9TDV_;XL_ZAS/J0-CDNS^7%7X<7])WEVN K!@4B1;Y1DP\-@;_ M?WYX^N@C_^W;QW_\J&\> M&NR?OCU]_.CC'GOXWY[\Z9L;??,!II>G.*PB[8;__8)VWG(1K=H:>]*K&_7+@Z9_VR7LRC.. []V !T')$[ZF)I\B]Q5N MWW!MX\*?Z2G\"!-P@X]^UI_\4I?LKH=Q'/ 7,^!;WK;AG/WV>1-6ZZ[9_?O#@ZNKJ-(SP]+R^?/"L6:P) M)/*@6)[GS0/2OWSPZ)N'3\/_>Q!&^NC1=T\>/?XV//GIDZ=/OWFP+#X\>7*Z M[H(W]\PU!;[5IL#G:2OAJZ25D*+5L%(?,OK[T]E7JY):9_)68[#9D],G5#W$ MDU&F^[D^G?V1_@K?L[Z)MZBER%,AC\PM@14Q05[,WIT\FO&S56-B6&)Y*9W- MX&IALESZ]D]YF(W9XR?9[/'#1P]G7_U K4PTAB=/GIP\>OKD\;>/OQ8TC;X7 MMZY9Q]77IQ-Q^,==:;>XU#_/O?V9K^8OR*P]/IJUW[]9^_: 6?M^I]H*UQFP M;X\&[&C [IL!>W1TS.ZW!0M3]>'_/G[\C\?!#CUZQ(;H>2*<1Z8'_<(OK5_X MM?8+IU;I3=]0#Q4P6>^$&^#)P\?:C?PN;^9Y5;0GKS]LBMWL&9,R/'[X\/'Q MY/\>3_[1=_ER3O[CPT?_!P,*'H_^\>A?=_0?'R_]+^?H7W/RQY<^.?$?814> M_0D$;\]/S3X\>O+M0X@30S>#>!@GC,AW#Y]^J4;DZ=$R#$[&HX>/3E_]_.X> M&(>[>/O__O[MC^%<$./>HIB]$':Y3RP-'S?LY]ZP[Y[_Q__+&_:7_ /H8\-- MT!5,D/9NL2XN\N,._A+6D';P\V<_'G=PLH.#D[)00:$?R^H]FLZ.^_D+6%': MSR]>_G#;$Y[N0O:BUI)[]Y M^_*XDY.=_(9:D:ON_5,Z[AX]_L._?^:.NR^FN>[.Q_*[[*.[ZZ'\ MKEKF/KOQN6%_W+M7?_GYV2^_OGWY[B:-<=_=6:^V+VX,F-Q;*UE$[)3AIJ1N M\>B[)]\PBXI"LJH.O-#+?K.#5 ZHH4N2CP+%)Q.,$P\-6-_!7#TOUOEFI?3O MV)CR 8C0]"0'CN?E?;>NF_!VRQMQ#WUA[89/'Y[^\9N/:S<\]-@GI]\\^2Q- MC$_V_^9'C_71Z1^_>_K[;3><=KL'SN?0C?[NBWRIY\]^?/7?V>S5S\]/X;)^ M%0W$U\FKWC2N#8[8;QB"WNG_PT ]?Y+8*L+^$-O]_]^3>+ ML=D/N%>O_Z!],'N>-YO9V[YMZZGC\'M8Y&OLVN>&)]VH;_+&^^6WR,I,=V ? M-\IOA&.[;[9CSW:81C3Q)?NF*2OB,MR,/W"\=8^W[O'6?4ZTH^_*BO2_FJ,] M/5Z\ARSM<:\<[]Z)NW>$&![>O:,/?,:[-RV@'7D6'^^O^CR8U\M=^)]U=['Y M]_\?4$L#!!0 ( /> ^E3CG:PKM0T &^1 1 8V%L>"TR,#(R,#