0001437749-24-007808.txt : 20240314 0001437749-24-007808.hdr.sgml : 20240314 20240314131104 ACCESSION NUMBER: 0001437749-24-007808 CONFORMED SUBMISSION TYPE: 10-K PUBLIC DOCUMENT COUNT: 73 CONFORMED PERIOD OF REPORT: 20231230 FILED AS OF DATE: 20240314 DATE AS OF CHANGE: 20240314 FILER: COMPANY DATA: COMPANY CONFORMED NAME: CPS TECHNOLOGIES CORP/DE/ CENTRAL INDEX KEY: 0000814676 STANDARD INDUSTRIAL CLASSIFICATION: POTTERY & RELATED PRODUCTS [3260] ORGANIZATION NAME: 04 Manufacturing IRS NUMBER: 042832509 STATE OF INCORPORATION: MA FISCAL YEAR END: 1230 FILING VALUES: FORM TYPE: 10-K SEC ACT: 1934 Act SEC FILE NUMBER: 001-36807 FILM NUMBER: 24748866 BUSINESS ADDRESS: STREET 1: 111 SOUTH WORCESTER STREET CITY: NORTON STATE: MA ZIP: 02766 BUSINESS PHONE: 508-222-0614 MAIL ADDRESS: STREET 1: 111 SOUTH WORCESTER STREET CITY: NORTON STATE: MA ZIP: 02766 FORMER COMPANY: FORMER CONFORMED NAME: CERAMICS PROCESS SYSTEMS CORP/DE/ DATE OF NAME CHANGE: 19920703 10-K 1 cpsh20231229_10k.htm FORM 10-K cpsh20231229_10k.htm
0000814676 CPS TECHNOLOGIES CORP/DE/ false --12-30 FY 2023 false false false false 0.01 0.01 20,000,000 20,000,000 14,601,487 14,460,486 14,519,215 14,450,470 82,272 10,016 254,281 5 3 5 0 1 1 38 10 5 3.43 4.24 3.11 3 3 00008146762023-01-012023-12-30 iso4217:USD 00008146762023-07-02 xbrli:shares 00008146762024-02-12 thunderdome:item 00008146762023-12-30 00008146762022-12-31 00008146762023-12-31 iso4217:USDxbrli:shares 00008146762021-12-262022-12-31 0000814676us-gaap:CommonStockMember2021-12-25 0000814676us-gaap:AdditionalPaidInCapitalMember2021-12-25 0000814676us-gaap:RetainedEarningsMember2021-12-25 0000814676us-gaap:TreasuryStockCommonMember2021-12-25 00008146762021-12-25 0000814676us-gaap:AdditionalPaidInCapitalMember2021-12-262022-12-31 0000814676us-gaap:CommonStockMember2021-12-262022-12-31 0000814676us-gaap:TreasuryStockCommonMember2021-12-262022-12-31 0000814676us-gaap:RetainedEarningsMember2021-12-262022-12-31 0000814676us-gaap:CommonStockMember2022-12-31 0000814676us-gaap:AdditionalPaidInCapitalMember2022-12-31 0000814676us-gaap:RetainedEarningsMember2022-12-31 0000814676us-gaap:TreasuryStockCommonMember2022-12-31 0000814676us-gaap:CommonStockMember2023-01-012023-12-30 0000814676us-gaap:AdditionalPaidInCapitalMember2023-01-012023-12-30 0000814676us-gaap:RetainedEarningsMember2023-01-012023-12-30 0000814676us-gaap:TreasuryStockCommonMember2023-01-012023-12-30 0000814676us-gaap:CommonStockMember2023-12-30 0000814676us-gaap:AdditionalPaidInCapitalMember2023-12-30 0000814676us-gaap:RetainedEarningsMember2023-12-30 0000814676us-gaap:TreasuryStockCommonMember2023-12-30 0000814676cpsh:AccountsReceivableAndOtherIncomeMember2022-12-31 utr:Y 0000814676cpsh:ProductionEquipmentMember2023-12-30 0000814676cpsh:FurnitureAndOfficeEquipmentMembersrt:MinimumMember2023-12-31 0000814676cpsh:FurnitureAndOfficeEquipmentMembersrt:MaximumMember2023-12-31 xbrli:pure 0000814676cpsh:LeaseExpirationDecember2020Membercpsh:FacilityTwoMember2023-12-30 utr:sqft 0000814676cpsh:NortonFacilityMember2023-12-30 0000814676cpsh:NortonFacilityMember2023-01-012023-12-30 0000814676cpsh:NortonFacilityMember2021-12-262022-12-31 0000814676cpsh:NortonFacilityMembersrt:MinimumMember2023-12-30 0000814676cpsh:NortonFacilityMembersrt:MaximumMember2023-12-30 0000814676us-gaap:EmployeeStockOptionMembercpsh:The2020EquityIncentivePlanMember2020-03-032020-03-03 0000814676us-gaap:EmployeeStockOptionMemberus-gaap:ShareBasedPaymentArrangementEmployeeMembercpsh:The2020EquityIncentivePlanMember2020-03-032020-03-03 0000814676cpsh:The2020EquityIncentivePlanMember2020-12-26 0000814676cpsh:The2020EquityIncentivePlanMember2023-12-30 0000814676cpsh:The2020EquityIncentivePlanMember2022-12-31 0000814676cpsh:The2020EquityIncentivePlanMember2023-01-012023-12-30 utr:Rate 0000814676srt:MinimumMember2023-01-012023-12-30 0000814676srt:MaximumMember2023-01-012023-12-30 0000814676srt:MinimumMember2021-12-262022-12-31 0000814676srt:MaximumMember2021-12-262022-12-31 0000814676cpsh:The2020EquityIncentivePlanMember2021-12-262022-12-31 0000814676cpsh:ReserveForPotentialCreditsMember2023-12-30 0000814676us-gaap:RevolvingCreditFacilityMembercpsh:MassachusettsBusinessDevelopmentCorporationMember2020-05-31 0000814676us-gaap:RevolvingCreditFacilityMembercpsh:RocklandTrustCompanyMember2023-05-01 0000814676us-gaap:RevolvingCreditFacilityMembercpsh:RocklandTrustCompanyMember2023-12-302023-12-30 0000814676us-gaap:RevolvingCreditFacilityMembercpsh:MassachusettsBusinessDevelopmentCorporationMember2023-12-30 0000814676us-gaap:RevolvingCreditFacilityMembercpsh:MassachusettsBusinessDevelopmentCorporationMember2023-01-012023-12-30 0000814676us-gaap:RevolvingCreditFacilityMembercpsh:MassachusettsBusinessDevelopmentCorporationMember2021-12-262022-12-31 0000814676cpsh:SonoscanUltrasoundMicroscopeMember2020-03-31 0000814676cpsh:MicroscopeNotePayableMember2020-03-012020-03-31 0000814676us-gaap:RevolvingCreditFacilityMembercpsh:MassachusettsBusinessDevelopmentCorporationMember2019-09-302019-09-30 0000814676cpsh:MicroscopeNotePayableMember2020-03-31 0000814676us-gaap:DomesticCountryMemberus-gaap:InternalRevenueServiceIRSMember2023-01-012023-12-30 0000814676us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMembercpsh:CustomerAMember2023-01-012023-12-30 0000814676us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMembercpsh:CustomerAMember2021-12-262022-12-31 0000814676us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMembercpsh:CustomerBMember2023-01-012023-12-30 0000814676us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMembercpsh:CustomerBMember2021-12-262022-12-31 0000814676us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMembercpsh:CustomerCMember2023-01-012023-12-30 0000814676us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMembercpsh:CustomerCMember2021-12-262022-12-31 0000814676us-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMembercpsh:SignificantCustomersABAndCMember2023-01-012023-12-30 0000814676us-gaap:SalesRevenueNetMemberus-gaap:GeographicConcentrationRiskMembercountry:US2023-01-012023-12-30 0000814676us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMembercountry:US2021-12-262022-12-31 0000814676us-gaap:SalesRevenueNetMemberus-gaap:GeographicConcentrationRiskMembercountry:DE2023-01-012023-12-30 0000814676us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMembercountry:DE2021-12-262022-12-31 0000814676us-gaap:SalesRevenueNetMemberus-gaap:GeographicConcentrationRiskMembercpsh:OtherCountryMember2023-01-012023-12-30 0000814676us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMembercpsh:OtherCountryMember2021-12-262022-12-31
 

 

UNITED STATES
SECURITIES AND EXCHANGE COMMISSION
Washington, D.C. 20549

 

 

FORM 10-K

 

(Mark One)
Annual Report Pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934 for the fiscal year ended December 30, 2023
or
Transition Report Pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934, for the transition period from to

 

 

Commission file number: 0-16088

 

CPS TECHNOLOGIES CORP.
(Exact Name of Registrant as Specified in its Charter)

 

 

Delaware
(State or Other Jurisdiction
of Incorporation or Organization)

04-2832509
(I.R.S. Employer
Identification No.)

  

111 South Worcester Street
Norton, MA
(Address of principal executive offices)

02766-2102
(Zip Code)

 

508-222-0614

(Registrant’s telephone number, including area code)

 

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

 

Title of each class

Trading Symbol(s)

Name of each exchange on which registered

Common Stock, $0.01 par value

CPSH

NASDAQ Capital Market

 

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

None

 

 

Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. ☐ Yes ☒ No

 

Indicate by check mark if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act. ☐ Yes ☒ No

 

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 than the registrant was required to file such reports), and (2) has been subject to the filing requirements for the past 90 days. ☒ Yes ☐ No

 

 

 

Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). ☒ Yes ☐ No

 

Indicate by check mark if disclosure of delinquent filers pursuant to Item 405 of Regulation S-K is not contained herein, and will not be contained, to the best of the registrant’s knowledge, in definitive proxy or information statements incorporated by reference in Part III of this Form 10-K or any amendment to the Form 10-K. ☐

 

Indicate by check mark whether the Registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of “large accelerated filer," "accelerated filer," "smaller reporting company,” and "emerging growth company" in Rule 12b-2 of the Exchange Act.

 

Large accelerated filer ☐     Accelerated filer ☐     Non-accelerated filer ☒     Smaller reporting company

Emerging growth company

 

If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. ☐

 

Indicate by check mark whether the registrant has filed a report on and attestation to its management’s assessment of the effectiveness of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report. Yes  ☒ No 

 

If securities are registered pursuant to Section 12(b) of the Act, indicate by check mark whether the financial statements of the registrant included in the filing reflect the correction of an error to previously issued financial statements. 

 

Indicate by check mark whether any of those error corrections are restatements that required a recovery analysis of incentive-based compensation received by any of the registrant’s executive officers during the relevant recovery period pursuant to §240.10D-1(b).  ☐ 

 

Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Act):

Yes ☒ No

 

The aggregate market value of the voting Common Stock held by non-affiliates of the Registrant was $34 million based on the average of the reported closing bid and asked prices for the Common Stock as of the last business day of the registrant’s most recently completed fourth fiscal quarter as reported on the NASDAQ Capital Market.

 

Number of shares of Common Stock outstanding as of February 12, 2024: 14,519,215 shares.

 

Portions of the Proxy Statement to be filed for the Company’s 2024 meeting of stockholders are incorporated by reference into Part III of this form 10-K.

 
 

  

 

Part I

Item 1. Business.

CPS Technologies Corp. (the ‘Company’ or ‘CPS’) provides advanced material solutions for the transportation, automotive, energy, computing/internet, telecommunications, aerospace and defense markets.  CPS products are important elements in electrifying the green economy and in the protection of military personnel around the world.

 

Our primary material solution is metal matrix composites (MMCs).  We design, manufacture and sell custom MMC components that improve the performance and reliability of systems in the end markets described above. 

 

The Company is an important participant in the growing movement towards alternative energy. The Company’s products are used in high-speed trains, mass transit, hybrid and electric cars, wind-turbines for electricity generation, routers, switches and fiber optic components for internet infrastructure.  The Company’s products are used in high reliability communications and power modules for avionics and satellite applications such as the current generation of GPS satellites.  The Company also produces housings and heat spreaders for high-performance microprocessors, graphics processing chips, and application-specific integrated circuits. All of these applications involve electrical energy use or energy generation; the Company’s products allow higher performance and improved energy efficiency.

 

Using its proprietary MMC technology, the Company also produces light-weight armor. Due to its ability to withstand extreme environments and high threat levels, CPS armor has been selected as the solution for the U.S. Navy’s crew served weapons station program. Its light weight also makes it an ideal solution for aircraft and other vehicles requiring a high strength to weight ratio.

 

MMCs are a class of materials consisting of a combination of metals and ceramics.  Compared to conventional materials, MMCs provide superior thermal conductivity, improved thermal expansion matching, greater stiffness and lighter weight.  These factors, in particular the lighter weight, are among the reasons CPS parts are on the last two Mars Rovers as well as many satellites.

 

CPS is a fully qualified manufacturer for many of the world’s largest electronics OEMs.

 

In 2022 CPS resumed its participation in the Small Business Innovation Research (SBIR) and Small Business Technology Transfer (STTR) programs, sponsored by the US Small Business Administration. These programs provide funding for innovative research and development to domestic small businesses, who maintain certain intellectual property rights. The technologies developed by the Company during these programs will further enhance CPS’ intellectual property portfolio.

 

CPS management believes our business model of providing advanced material solutions to a portfolio of high growth end markets in various stages of the technology adoption lifecycle provides CPS with the opportunity for sustained growth and a diversified customer base. We believe we have validated this model as we are now supplying customers at all stages of the technology adoption lifecycle.

 

Our products are manufactured by proprietary processes we have developed including the QuicksetTM Injection Molding Process (“Quickset Process”) and the QuickCastTM Pressure Infiltration Process (“QuickCast Process”).

 

CPS was incorporated in Massachusetts in 1984 as Ceramics Process Systems Corporation and reincorporated in Delaware in April 1987 through a merger into a wholly-owned Delaware subsidiary organized for purposes of the reincorporation. In July 1987, CPS completed our initial public offering of 1.5 million shares of our Common Stock. In March 2007, the Company changed its name from Ceramics Process Systems Corporation to CPS Technologies Corp.

 

CPS’ website is http://www.cpstechnologysolutions.com.

 

Overview of Markets and Products

 

Electronics Markets Overview

 

The applications for electronics can typically be characterized as either power processing or signal processing.  Power processing consists of converting the electrical power provided by the power source into the appropriate voltage and amperage needed by the device using the power.  Signal processing consists of the myriad ways digital and analog signals are used in computing, communications, and related applications. 

 

In both power processing and signal processing, end-user demand continues to motivate the electronics industry to produce products which:

 

- operate with lower losses and/or at higher speeds;
- are smaller in size; and
- operate with higher reliability.

 

 

 

While these three requirements result in products of ever-increasing performance, they also create a fundamental challenge for the designer to manage the heat generated by the system operating at higher speeds and/or higher power. Smaller assemblies further concentrate the heat and increase the difficulty of removing it.

 

This challenge is found at each level in an electronic assembly: at the integrated circuit level, speeds are increasing and line widths are decreasing; at the circuit board level, higher density devices are placed closer together; and at the system level higher density circuit boards are being assembled closer together.

 

The designer must resolve the thermal management issues or the system will fail. For every 10 degree Celsius rise in temperature above a threshold level, the reliability of an integrated circuit is decreased by approximately half. In addition, heat usually causes changes in parameters which degrade the performance of both active and passive electronic components.

 

To resolve thermal management issues, the designer is primarily concerned with two properties of the materials which comprise the system: 1) thermal conductivity, which is the rate at which heat moves through materials, and 2) thermal expansion rate (Coefficient of Thermal Expansion or CTE), which is the rate at which materials expand or contract as temperature changes. The designer must ensure that the temperature of an electronic assembly stays within a range that ensures that the expansion rates of the materials in the assembly do not result in a failure due to breaking, delaminating, or related causes.

 

CPS combines at the microstructural level a ceramic with a metal to produce a metal matrix composite which has the thermal conductivity needed to remove heat, and a thermal expansion rate which is sufficiently close to other components in the assembly to ensure the assembly is reliable. The ceramic is silicon carbide (SiC), the metal is aluminum (Al), and the composite is aluminum silicon carbide (AlSiC), a metal-matrix composite. CPS can adjust the thermal expansion rate of AlSiC components to match the specific application by modifying the amount of SiC compared to the amount of Al in the component.  The Company also has the capability of encapsulating pyrolytic graphite inserts to enhance the thermal conductivity of the AlSiC composite.

 

CPS produces products made of AlSiC in the shapes and configurations required for each application, for example, in the form of lids, substrates, housings, etc. Every product is made to a customer’s specifications. The CPS process technology allows most products to be made to net shape, requiring little or no final machining.

 

The Company primarily manufactures MMC components comprised of AlSiC. Nevertheless, its proprietary Quickset- Quickcast process technology can be used to produce other MMCs to meet market requirements. For example, CPS is able to combine aluminum with other ceramic fillers such as graphite and fibers.

 

An important development in power processing is the emergence of wide-band gap semiconductors, particularly SiC semiconductors.  SiC chips are more efficient than Si chips and are being used more frequently in power applications.  Modules using SiC chips run at higher temperatures, increasing the need for improved thermal management, a need which the Company’s products meet.

 

Armor Market Overview

 

Armor has traditionally been comprised of steel panels.   As threat levels have increased, the amount of steel required to provide sufficient ballistic protection has become unacceptably detrimental to a vehicle’s performance.  The U.S. military has increasingly used ceramic armor in weight sensitive applications.  However, ceramic armor has several limitations, including limited multi-hit capability.   By embedding ceramic armor tiles in a metal matrix, these problems are overcome; the result is armor that is light-weight, has excellent ballistic protection, and environmental durability. 

 

The Company’s HybridTech Armor® panels are particularly well suited for extreme environments – the panels do not degrade in salt spray or extreme heat. The Company is producing armor panel strikefaces for the U.S. Navy and believes it will increasingly be used in these and other surface vessel applications.

 

 

 

Specific Markets and Products

 

Motor Controller Applications (Insulated Gate Bipolar Transistor ("IGBT") Applications)

 

The electrification of the economy – particularly the use of electric motors and power modules to control electric motors of all sizes – is growing. This growth is the result of several factors including emerging high-power applications which demand power controllers such as trains, subways and certain industrial equipment, and cost reductions in power modules which increasingly make variable speed drives cost effective. Power semiconductors are a very significant portion of the cost of variable speed drives, and the cost of the module housing and thermal management system are also significant; cost reductions of all these components are driving increased use of variable speed drives.

 

We provide baseplates and heat spreaders on which power semiconductors are mounted to produce modules for motor control. The power semiconductors are typically IGBTs and these applications are often referred to as IGBT applications. Our MMC (AlSiC) baseplates have sufficient thermal conductivity to enable removal of heat through the baseplate and have a thermal expansion rate sufficiently similar to the other components in the assembly to ensure reliability over time as the assembly thermally cycles. We believe this market will continue to grow as the use of power modules penetrates additional motor applications, and as electric motors themselves penetrate new applications such as hybrid and electric vehicles.

 

Today our primary products for IGBT applications are used in electric trains, subway cars, wind turbines and hybrid and electric vehicles.

 

Major automobile companies around the world are introducing hybrid electric vehicles (HEVs) and electric vehicles (EVs) at an increasing rate. There are many varieties of HEVs and EVs, but all HEVs and EVs contain an electric motor and one or more motor controller modules. The Company provides baseplates on which motor controller modules are assembled; these baseplates are lighter weight and provide greater reliability than baseplates made from more conventional materials, typically copper.

 

Copper is less expensive than the Company’s MMC solution, but its rate of thermal expansion is significantly different than that of the silicon semiconductors mounted to the baseplates. In low voltage applications, this is not a problem as the heat being generated is not enough to degrade the reliability of the power module. As voltage levels and the heat related to them go up, MMC baseplates become the preferred solution. Currently, HEV/EV manufacturers who want to save on short term costs are using power modules with copper baseplates, while those who want longer term reliability, such as those in the luxury vehicle market, will use power modules with an MMC (AlSiC) baseplate.

 

Of particular interest is the move to using Silicon Carbide (SiC) semiconductors instead of silicon semiconductors. SiC is more efficient than silicon allowing, among other things, for EVs and HEVs to run for longer distances on a single battery charge. This is important to CPS, as SiC semiconductors run hotter than silicon semiconductors. As such, the voltage level at which AlSiC becomes preferred over copper would be lower, creating expanded opportunities for AlSiC baseplates.

 

The Company is working with multiple tier one and tier two suppliers to the automobile industry on several new designs, including SiC modules, for future introduction. The Company believes the HEV and EV markets may be the source of significant and long-term growth for the Company.

 

 

 

Hermetic Packages

 

Hermetic packaging products are primarily used for space applications such as satellites, flight applications such as avionics and undersea applications such as torpedoes, submarines and communications buoys. Hermetic packages allow the assembly of multiple semiconductor devices known as Hybrid Microelectronic Assemblies (HMA). Today’s HMA technology can, in a CPS 2”x2” package, provide the computing technology of today's typical server or yesterday's small mainframe.

 

CPS is the only producer of hermetic packages with AlSiC bases, combining our expertise in hermetic package production with our expertise in MMC production. The CPS AlSiC hermetic package provides tremendous benefits in terms of reduced weight and CTE matching which are extremely important for space-based programs. CPS hermetic packages are used in every current generation GPS satellite, the Mars Perseverance rover as well as many other aerospace applications.

 

Customers

 

We sell primarily to major microelectronics systems houses in the United States, Europe and Asia. Our customers typically purchase prototype and evaluation quantities of our products over a one to three year period before purchasing production volumes.

 

In 2023, our three largest customers accounted for 33%, 18%, and 9% of revenues, respectively. In 2023, approximately 52% of our revenues were derived from commercial applications and 48% from defense-related applications.

 

Availability of Raw Materials

 

We use a variety of raw materials from numerous domestic and foreign suppliers. These materials are primarily aluminum ingots, ceramic powders, chemicals and hermetic assembly components. The raw materials we use are available from domestic and foreign sources and none is believed to be scarce or restricted for national security reasons.  We use no conflict metals.

 

Patents and Trade Secrets

 

As of December 30, 2023, the Company had 9 United States patents.  In addition, the Company had several international patents covering the same subject matter as the U.S. patents.

 

We intend to continue to apply for domestic and foreign patent protection in appropriate cases. In other cases, we believe we are better served by reliance on trade secret protection. In all cases, we seek protection for our technological developments to preserve our competitive position.

 

Backlog and Contracts

 

Virtually 100% of the Company's product sales are custom in that they are based on customers’ drawings and the large majority of these sales are "designed in" and sold over multiple years. Major customers typically give the Company a non-binding forecast of demand for a one-year period and then negotiate a pricing agreement with the Company valid for that one-year period. These and other customers typically issue purchase orders to be shipped on a particular date, or to be drawn against and shipped under releases. The Company has a backlog of $20 million as of December 30, 2023. This backlog consists of orders received from customers which are, for the most part, scheduled to ship in 2024. Under certain circumstances, customers may be able to cancel existing orders or extend the period over which orders may be shipped. Some of these changes may be significant, which would reduce this backlog.

 

 

 

Competition

 

We have developed and expect to continue to develop products for a number of different end markets, and we will encounter competition from different producers of MMCs, hermetic packages, armor, and other competing materials.

 

We believe that the principal competitive factors in our end markets today include technical competence, product performance, quality, reliability, price, delivery performance, corporate reputation, and strength of sales and marketing resources. We believe our proprietary processes, reputation, and the price at which we can offer products for sale will enable us to compete successfully in the many electronics, aerospace and defense end markets.

Our primary direct competitor in MMCs is Denka, a large chemical company based in Japan.  We also see manufacturers in China seeking to penetrate our markets. We believe they offer their products at lower prices, but they have generally not yet been to be able to provide the delivery, performance, quality and reliability required by the market.

 

The market for hermetic packages is much more fragmented. There are a number of different hermetic package types, allowing different manufacturers to specialize in a particular area of the hermetic package market. Some of these companies are competitors of CPS, while others focus on product types not sold by CPS. CPS continues to expand its technical competence to increase its offerings in areas in which we previously did not participate. Based on these increased offerings, combined with our emphasis on quality and customer service, we expect to see continued growth in our hermetic package product line. Our main domestic competitors in this arena include Egide, Ametek, and Qnnect (formerly Hermetic Solutions Group).

 

The company currently has orders to produce its HybridTech Armor® panels. To our knowledge, we do not have any direct competitors who produce encapsulated armor. Our competition in this area consists of alternatives to our HybridTech Armor® which involve tradeoffs regarding cost, weight, anti-ballistic properties, etc. As CPS expands its armor capabilities, we could begin to see more direct competition from more established armor producers.

 

Government Regulation

 

We produce non-nuclear, non-medical hazardous waste in our development and manufacturing operations. The disposal of such waste is governed by state and federal regulations. Various customers, vendors, and collaborative development agreement partners of CPS may reside abroad, thereby possibly requiring export and import by CPS of raw materials, intermediate products, and finished products, as well as potential technology transfer abroad under collaborative development agreements. These types of activities are regulated by bureaus within the Departments of Commerce, State and Treasury.

 

Employees

 

As of December 30, 2023, we had 100 permanent full-time employees. 90 were engaged in manufacturing and engineering and 10 in sales and administration, including finance, human resources and general management. We also have approximately 20 manufacturing people working with us through temporary employment agencies. During 2023, the Company continued its efforts to increase factory efficiency both in terms of employee training as well as increased automation.

 

None of our employees is covered by a collective bargaining agreement. We consider our relations with our employees to be excellent.

 

 

 

Item 1A. Risk Factors.

 

The risks set forth below may not be the only risk factors relating to the Company. Any of these factors, many of which are beyond our control, could materially adversely affect our business, financial condition, operating results, cash flow and stock price.

 

Business or economic disruptions or global health concerns could seriously harm our business.

 

Broad-based business, economic disruptions or global health concerns could adversely affect our business and the sale of our products. For example, in December 2019 an outbreak of a novel strain of the coronavirus disease (COVID-19) originated in Wuhan, China, and has since spread to a number of other countries, including the United States. Initially, this outbreak resulted in extended shutdowns of certain businesses in the Wuhan region and had ripple effects to businesses around the world. While the impact of this pandemic has largely subsided, a resurgence of this virus or another could have an impact on our business. Although the Company has remained open throughout the COVID-19 pandemic, complete or partial government shutdowns of many businesses, schools, bars and restaurants have occurred.  The Russian invasion of Ukraine and the conflict in Israel and Gaza could also adversely affect our business in spite of the immaterial amount of direct business we have done in this region in the past.  We cannot presently predict the scope and severity of any future business shutdowns or disruptions to us, but if we or any of the third parties with whom we engage, including our customers, suppliers and other third parties, were to experience extended shutdowns or other business disruptions, our ability to conduct our business could be materially and negatively impacted, and could have a material adverse effect on our business and our results of operation and financial condition.

 

A pandemic, epidemic or outbreak of an infectious disease in the United States or worldwide may adversely affect our business.

 

Our operations expose us to risks associated with pandemics, epidemics or other public health emergencies, such as the outbreak of coronavirus disease (COVID-19) that subsequently spread around the world.  Outbreaks such as these have resulted, and can continue to result, in governments around the world implementing increasingly stringent measures to help control the spread, including quarantines, "shelter in place" and "stay at home" orders, travel restrictions, business curtailments, school closures, and other measures.  Government imposed requirements regarding vaccines, testing etc., could negatively impact the Company’s ability to hire or retain certain employees who are important to our business operations. These actions with respect to the COVID-19 outbreak have negatively impacted, and could continue to have negative impacts on, our operations, supply chain, transportation networks, customers and employees.  Any continuing economic downturn as a result of this pandemic could adversely affect, demand for our products, and negatively impact our business or results of operations through the temporary closure of our operating locations or those of our customers or suppliers.

 

The extent to which a COVID-19 resurgence may adversely impact our business depends on future developments, which are highly uncertain and unpredictable, including new information concerning the severity of an outbreak and the effectiveness of actions globally to contain or mitigate its effects, including the deployment and efficacy of vaccines. 

 

We have a highly concentrated customer base so that changes in ordering patterns, delays or order cancellations could have a material adverse effect on our business and results of operations.

 

Three customers accounted for 60% of revenue in 2023 and 53% of revenue in 2022. We believe that our relationships with these customers are positive and may provide us with ongoing continuous sustainability for years to come, however a large customer, if lost, would be difficult to be replace, and our inability to do so may have a material adverse effect on our business and financial condition. We expect that orders from a relatively limited number of customers will continue to account for a substantial portion of our business. The mix and type of customers, and sales to any single customer, may vary significantly from quarter to quarter and from year to year. If any of our significant customers do not place orders, or they substantially reduce, delay or cancel orders, we may not be able to replace the business in a timely manner or at all, which can and has had a material adverse effect on our results of operations and financial condition. Major customers may also seek, and on occasion receive, pricing, payment or other commercial terms that are less favorable to us and can hurt our competitive position.

 

 

 

Our lengthy and variable sales cycle makes it difficult to predict our financial results.

 

The sales cycle for our products is often lengthy, ranging from several months to several years. In many cases potential customers must evaluate the properties of our product against their current solution, which may not be as robust as the CPS solution, but is often less expensive. In many cases potential customers must redesign other components of the end product they are making to realize the full benefits of using our products. The lengthy sales cycle makes forecasting the volume and timing of sales difficult and raises additional risks that customers may cancel or delay introduction of their end-products into the marketplace, thus affecting our demand. The length of the sales cycle depends on the size and complexity of the project, and the depth of the evaluation of our products conducted by the customers.

 

Because a significant portion of our operating expenses is fixed, we have and may continue to incur substantial expense before we earn associated revenue. If customer cancellations occur, they could result in the loss of anticipated sales without allowing us sufficient time to reduce our operating expenses.

 

Our success is highly dependent on managerial contributions of key individuals and we may be unable to retain these individuals or recruit others.

 

We depend on our senior executives and certain key managers as well as engineering, research and development, sales, marketing and manufacturing personnel, who are critical to our business. While we have employment agreements with certain executives, none of these agreements would prevent any such person from leaving the Company. Furthermore, larger competitors may be able to offer more generous compensation packages to our executives and key employees, and therefore we risk losing key personnel to those competitors. If we were to lose the services of any of our key personnel, or if we fail to attract and train qualified personnel, our engineering, product development, manufacturing and sales efforts could be slowed. In particular, we have, from time to time, experienced difficulty in hiring and retaining skilled engineers with appropriate qualifications to support our growth strategy. Our success depends on our ability to identify, hire, train and retain qualified engineering personnel. Specifically, we need to continue to attract and retain product development, materials and manufacturing engineers to work with our direct sales force to technically qualify and perform on new sales opportunities and orders, and to demonstrate our products.

 

We may also incur increased operating expenses and be required to divert the attention of our senior executives to search for replacements. The integration of any new personnel could disrupt our ongoing operations.

 

Acquisitions can result in an increase in our operating costs, divert managements attention away from other operational matters and expose us to other associated risks.

 

From time to time, we evaluate potential acquisitions of businesses and technologies, and we consider targeted acquisitions that expand our core competencies to be an important part of our future growth strategy.  We expect that any acquisitions of other businesses will have synergistic products, services and technologies. 

 

Acquisitions involve numerous risks, which include but are not limited to:

 

 

difficulties and increased costs in connection with the integration of the personnel, operations, technologies, services and products of the acquired companies into our existing facilities and operations;

 

diversion of management’s attention from other operational matters;

 

failure to commercialize the acquired technology;

 

the potential loss of key employees of the acquired companies;

 

lack of synergy, or inability to realize expected synergies, resulting from the acquisitions;

 

the risk that the issuance of our common stock, if any, in an acquisition or merger could be dilutive to our shareholders;

 

the inability to obtain and protect intellectual property rights in key technologies; and

 

the acquired assets becoming impaired as a result of technological advancements or worse-than-expected performance of the acquired assets.

 

The conditions of the markets in which we operate are volatile. The demand for our products and the profitability of our products can change significantly from period to period as a result of numerous factors.

 

The industries in which we operate are characterized by ongoing changes, including:

 

 

the availability of funds for research and development;

 

global and regional economic conditions;

 

governmental budgetary and political constraints; and

 

changes in technology.

 

For these and other reasons, our results of operations for past periods may not necessarily be indicative of future operating results.

 

 

 

Volatile and cyclical demand for our products may make it difficult for us to accurately budget our expense levels, which are based in part on our projections of future revenues.

 

When cyclical fluctuations result in lower-than-expected revenue levels, operating results may be materially adversely affected and cost reduction measures may be necessary for us to remain competitive and financially sound. During a down cycle, we must be able to make timely adjustments to our cost and expense structure to correspond to the prevailing market conditions. In addition, during periods of rapid growth, we must be able to increase manufacturing capacity and the number of our personnel to meet customer demand, which may require additional liquidity. We can provide no assurance that these objectives can be met in a timely manner in response to changes within the industry cycles in which we operate. If we fail to respond to these cyclical changes, our business could be seriously harmed.

 

We do not have long-term volume production contracts with our customers, and we do not control the timing or volume of orders placed by our customers. Whether and to what extent our customers place orders for any specific products, and the mix and quantities of products included in those orders are factors beyond our control. Insufficient orders would result in under-utilization of our manufacturing facilities and infrastructure, and will negatively affect our financial position and results of operations.

 

We face significant competition, are relatively small in size and have fewer resources in comparison with some of our competitors.

 

We face significant competition throughout the world, which may increase as certain markets in which we operate continue to evolve. Our future performance depends, in part, upon our ability to continue to compete successfully worldwide. Some of our competitors are diversified companies that have substantially greater financial resources and more extensive research, engineering, manufacturing, marketing and customer service and support capabilities than we can provide. Our failure to compete successfully with these other companies would seriously harm our business. There is a risk that larger, better financed competitors will develop and market more advanced products than those we currently offer, or that competitors with greater financial resources may decrease prices, thereby putting us under financial pressure.

 

We may experience increasing price pressure.

 

Our historical business strategy for many of our products has focused on product performance and customer service rather than on price. As a result of budgetary constraints, many of our customers are extremely price sensitive when purchasing our products. Recent inflationary trends could further exacerbate this issue.  If we are unable to obtain prices that allow us to continue to compete on the basis of product performance and customer service, our profit margins will be reduced.

 

Manufacturing interruptions or delays could affect our ability to meet customer demand and lead to higher costs.

 

We may experience significant interruptions of our manufacturing operations, delays in our ability to deliver products or services, increased costs or customer order cancellations as a result of:

 

 

the failure or inability of suppliers to timely deliver sufficient quantities of materials and components on a cost-effective basis;

 

volatility in the availability and cost of materials;

 

unforeseen equipment failures resulting in the need to delay or outsource certain production processes;

 

difficulties or delays in obtaining required import or export approvals;

 

information technology or infrastructure failures;

 

natural disasters or other events beyond our control (such as earthquakes, floods or storms, regional economic downturns, pandemics, social unrest, political instability, terrorism, or acts of war); and

 

the effects of a global pandemic on our employees, suppliers and other third-parties upon which we rely.

 

Continued growth could result in the need to move or expand our facilities. The costs of such a move or expansion could be significant to our profitability.

 

Our ability to meet our customer’s needs including the on-time shipment of products, is paramount to our success. Our current facility may not be able to adequately handle future growth and our ability to meet the needs of our customers. This could result in our having to relocate to a new facility which could have a material impact on our profitability. 

 

We have made investments in our proprietary technologies. If third parties violate our proprietary rights, or accuse us of infringing upon their proprietary rights, such events could result in a loss of value of some of our intellectual property or costly litigation.

 

Our success is dependent in part on our technologies and our other proprietary rights.  We believe that while patents can be useful and may be utilized by us in the future, they are not always necessary or feasible to protect our intellectual property. The process of seeking patent protection is lengthy and expensive, and we cannot be certain that applications will actually result in issued patents or that issued patents will be of sufficient scope or strength to provide meaningful protection or commercial advantage to us.  In addition to patent protection, we have also historically protected our proprietary information and intellectual property such as design specifications, blueprints, technical processes and employee know-how, by limiting access to this confidential information and trade secrets and through the use of non-disclosure agreements. Other companies and individuals, including our competitors, may develop technologies that are similar or superior to our technology, or design around the intellectual property that we own or license.  Our failure to adequately protect our intellectual property, could result in the reduction or extinguishment of our rights to such intellectual property. We also assert rights to certain trademarks relating to certain of our products and product lines.

 

While patent, copyright and trademark protection for our intellectual property may be important, we believe our future success in highly dynamic markets is most dependent upon the technical competence and creative skills of our personnel.  We attempt to protect our trade secrets and other proprietary information through confidentiality agreements with our customers, suppliers, employees and consultants, and through other internal security measures.  However, these employees, consultants and third parties may breach these agreements, and we may not have adequate remedies for wrongdoing.  In addition, the laws of certain territories in which we sell our products may not protect our intellectual property rights to the same extent as do the laws of the United States.

 

 

 

We may receive communications from other parties asserting the existence of patent rights or other intellectual property rights that they believe cover certain of our products, processes, technologies or information.  If such cases arise, we will evaluate our position and consider the available alternatives, which may include seeking licenses to use the technology in question on commercially reasonable terms, or defending our position.  Nevertheless, we cannot ensure that we will be able to obtain licenses, or, if we are able to obtain licenses, that related terms will be acceptable, or that litigation or other administrative proceedings will not occur.  Defending our intellectual property rights through litigation could be very costly.  If we are not able to negotiate the necessary licenses on commercially reasonable terms or successfully defend our position, our financial position and results of operations could be materially and adversely affected. 

 

The price of our common shares is volatile and could decline significantly.

 

The stock market has at times over the last 15 years experienced periods of high and extreme volatility. If these market fluctuations continue, the trading price of our common shares could decline significantly independent of the overall market, and stockholders could lose all or a substantial part of their investment. The market price of our common shares could fluctuate significantly in response to several factors, including, among others:

 

 

difficult macroeconomic conditions, including inflation, unfavorable geopolitical events, and general stock market uncertainties, such as those occasioned by a global liquidity crisis and a failure of large financial institutions;

 

receipt of large orders or cancellations of orders for our products;

 

issues associated with the performance and reliability of our products;

 

actual or anticipated variations in our results of operations;

 

announcements of financial developments or technological innovations;

 

changes in recommendations and/or financial estimates by investment research analysis;

 

strategic transactions, such as acquisitions, divestitures, or spin-offs; and

 

the occurrence of major catastrophic events, including the effects of a possible resurgence of the novel coronavirus (COVID-19).

 

Significant price and value fluctuations have occurred with respect to our publicly traded securities. The price of our common shares is likely to be volatile in the future. In the past, securities class action litigation often has been brought against a company following periods of volatility in the market price of its securities. If similar litigation were pursued against us, it could result in substantial costs and a diversion of management’s attention and resources, which could materially and adversely affect our financial condition, results of operations, and liquidity.

 

If we are subject to cyber-attacks, we could incur substantial costs and, if such attacks are successful, we could incur significant liabilities, reputational harm, and disruption to our operations.

 

We manage, store and transmit proprietary information and sensitive data relating to our operations. We may be subject to breaches of the information technology systems we use for these purposes. Experienced computer programmers and hackers may be able to penetrate our network security and misappropriate and/or compromise our confidential information (and or third-party confidential information), create system disruptions, or cause shutdowns. Computer programmers and hackers also may be able to develop and deploy viruses, worms, and other malicious software programs that attack our systems or our products, or that otherwise exploit any security vulnerabilities.

 

The costs to address the foregoing security problems and security vulnerabilities before or after a cyber-incident could be significant. Our remediation efforts may not be successful and could result in interruptions, delays, or cessation of service, and loss of existing or potential customers, impeding our sales, manufacturing, distribution, or other critical functions. In addition, breaches of our security measures and the unapproved dissemination of proprietary information or sensitive data about us, our customer, or other third parties, could expose us, our customers, or other third parties to a risk of loss or misuse of this information, result in litigation and potential liability for us, damage our reputation, or otherwise harm our business.

 

Item 1B. Unresolved Staff Comments.

 

Smaller reporting companies are not required to provide the information required by this item.

 

 

 

Item 1C. Cybersecurity 

 

Cybersecurity is an area of increasing concern to management of and investors in CPS. While CPS has been ITAR compliant for many years, that in itself does not completely mitigate the risks of a cybersecurity incident. The Company is currently also working towards full compliance with NIST 800-171. In working towards this goal, CPS has retained an outside consulting firm to work through this process and help us implement the policies, processes and procedures to further mitigate cybersecurity risks. CPS generally keeps all employee personally identifiable information with its payroll service provider. Each year the provider furnishes us with their SOC report which includes their cybersecurity policies and procedures.

 

Management is not aware of any previous cybersecurity incidents of any significance. Nevertheless, there is always a risk that a phishing attempt, ransomware or other attack by a bad actor could be successful. Although CPS is generally down the supply chain from prime contractors, the fact that we do work in the aerospace and defense industries does make us a potential target. Please refer to the risk factors titled “Manufacturing interruptions or delays could affect our ability to meet customer demand and lead to higher costs and If we are subject to cyber-attacks, we could incur substantial costs and, if such attacks are successful, we could incur significant liabilities, reputational harm, and disruption to our operations in “Risk Factors” in Part I, Item 1A of this Form 10-K for more information on the risks posed to us by cybersecurity threats. Based on information currently available, management does not believe that there is a reasonably likely risk of these issues, nevertheless the possibility of one occurring cannot be completely ruled out.

  

 

Item 2. Properties

 

As of December 30, 2023, all of our manufacturing, engineering, sales and administrative operations were located in leased facilities in Norton, Massachusetts.

 

In February 2021, the Company extended the lease for the Norton facility through February 2026. The leased facilities comprise approximately 38 thousand square feet. The lease is a triple net lease wherein the Company is responsible for payment of all real estate taxes, operating costs and utilities.  The Company also has an option to buy the property and a first right of refusal during the term of the lease.  Annual rental payments for 2023 were $162 thousand.

 

While adequate for current business volumes, continued expected growth of our business may result in the need to move to a larger location, open a second location or expand our footprint at our current location.

 

Item 3. Legal Proceedings

 

We are not a party to any litigation which could have a material adverse effect on us or on our business. The Company has received a letter from the attorney of a former European outside sales representative stating that under European law the representative is entitled to compensation as a result of his termination. The Company completely disagrees with the claims. Should this result in litigation the Company will defend itself to the fullest extent of the law and estimates any losses incurred to be immaterial.

 

Item 4. Mine Safety Disclosures

 

Not applicable

 

 

Part II

 

Item 5. Market for Registrants Common Equity, Related Stockholder Matters and Issuer Purchase of Equity Securities.

 

CPS Technologies Corp. shares trade on The Nasdaq Capital Market, under the symbol “CPSH”. On December 30, 2023, we had approximately 80 shareholders of record. We have never paid cash dividends on our Common Stock. We currently plan to reinvest our earnings, if any, for use in the business and do not intend to pay cash dividends in the foreseeable future. Future dividend policy will depend, among other factors, upon our earnings and financial condition.

 

Item 6. Selected Financial Data

 

Smaller reporting companies are not required to provide the information required by this item.

 

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

 

This document contains forward-looking statements, based on numerous assumptions, subject to risks and uncertainties. Although we believe that the forward-looking statements are reasonable, we do not and cannot give any assurance that our beliefs and expectations will prove to be correct. Many factors could significantly affect our operations and cause our actual results to be substantially different from our expectations. Those factors include, but are not limited to: (i) general economic and business conditions; (ii) customer acceptance of our products; (iii) materials and manufacturing costs; (iv) the financial condition of customers, competitors and suppliers; (v) technological developments; (vi) increased competition; (vii) changes in capital market conditions; (viii) governmental and business conditions in countries where our products are manufactured and sold; (ix) changes in trade regulations; (x) the effect of acquisition activity; (xi) changes in our plans, strategies, objectives, expectations or intentions; and (xii) other risks and uncertainties indicated from time to time in our filings with the Securities and Exchange Commission. Actual results might differ materially from results suggested by any forward-looking statements in this report. We do not have an obligation to publicly update any forward-looking statements, whether as a result of the receipt of new information, the occurrence of future events or otherwise.

 

 

 

Overview

 

The Company’s products contribute to the electrification of the green economy.  The products we provide include baseplates for motor controllers used in high-speed electric trains, subway cars, wind turbines, and hybrid and electric vehicles.  We provide hermetic packages used in radar, satellite and avionics applications.  We provide lids and heat spreaders used with high performance integrated circuits in internet switches and routers. We provide armor for naval and other military applications. 

 

We provide baseplates and housings used in modules built with Wide Band Gap Semiconductors like SiC and GaN. CPS also assembles housings and packages for hybrid circuits. These housings and packages may include MMC components; they may include components made of more traditional materials such as aluminum, copper-tungsten, and others. 

 

CPS’s products are custom rather than catalog items. They are made to customers’ designs and are used as components in systems built and sold by our customers. At any point in time our product mix will consist of some products with on-going production demand, and some products which are in the prototyping or evaluation stages at our customers. The Company seeks to have a portfolio of products which include products in every stage of the technology adoption lifecycle at our customers. CPS’ growth is dependent upon the level of demand for those products already in production, as well as its success in achieving new "design wins" for future products.

 

As a manufacturer of highly technical and custom products, the Company incurs fixed costs needed to support the business, but which do not vary significantly with changes in sales volume. These costs include the fixed costs of applications engineering, tooling design and fabrication, process engineering, etc. Accordingly, particularly given our current size, changes in sales volume generally result in even greater changes in financial performance on a percentage basis as fixed costs are spread over a larger or smaller base. Sales volume is therefore a key financial metric used by management.

 

The Company believes the underlying demand for metal matrix composites is growing as the electronics and other industries seek higher performance, higher reliability, and reduced costs. CPS believes that the Company is well positioned to offer our solutions to current and new customers as these demands grow. In 2023 the Company’s top three customers accounted for 60% of revenue and the remaining 40% of revenue was derived from 57 other customers. In 2022 the top three customers accounted for 53% of revenue and the remaining 47% of revenue was derived from approximately 49 customers.

 

 

 

Critical Accounting Estimates

 

Financial statements are prepared in conformity with accounting principles generally accepted in the United States of America. As such, the Company is required to make certain estimates, judgments and assumptions that it believes are reasonable based upon the information available. These estimates and assumptions affect the reported amounts of assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the periods presented. CPS’s significant accounting policies are presented within Note 2 to the financial statements; the significant accounting policies which management believes are most critical to aid in fully understanding and evaluating its reported financial results include the following:

 

a)

Allowance for credit losses

The Company performs ongoing monitoring of the status of its receivables based on the payment history and the creditworthiness of our customers, as determined by a review of their current credit information. Management continually monitors collections and payments from customers and maintains a provision for estimated credit losses based upon historical experience and any specific customer collection issues that have been identified. While such credit losses have historically been low and within expectations, there is no guarantee that we will continue to experience the same credit loss rates as in the past. Although the Company’s major customers are large and have a favorable payment history, a significant change in the liquidity or financial position of one of them could have a material adverse impact on the collectability of accounts receivable and future operating results. To further mitigate the potential for credit losses the Company has acquired a credit insurance policy covering most of our sales to non-US accounts.

 

b)

Inventory valuation

The Company has a build-to-order business model and manufactures product to ship against specific purchase orders; occasionally CPS manufactures product in advance of anticipated purchase orders to level load production or prepare for a ramp-up in demand. In addition, virtually 100% of the Company’s products are custom, meaning they are produced to a customer’s design and generally cannot be used for any other purpose. Purchase orders generally have cancellation provisions which vary from customer to customer, but which can result occasionally in CPS producing product which the customer is not obligated to purchase. However, once a product has gone into production, most customer orders are recurring and order cancellations are rare. The Company’s general obsolescence policy is to reserve against inventory when there has been no activity on a particular part for a twelve month period and there are no pending or expected customer orders.

 

In some cases, customers place blanket purchase orders and request the Company to maintain inventory sufficient to respond quickly upon receiving a shipment request. The Company manufactures to specifications and the products typically have a life which extends over several years and does not deteriorate over time. Therefore, the risk of obsolescence due to the passage of time, per se, is minimal. However, to more efficiently schedule production or to meet agreements with customers to have inventory in the pipeline, the Company occasionally manufactures products in advance of purchase orders. In these instances, the Company bears the risk that it will be left with product manufactured to specification for which there are no customer purchase orders. The Company scrutinizes its inventory and, in the absence of pending orders or strong evidence of future sales, establishes an obsolescence reserve when there has been no activity or pending or expected customer orders on a particular part for a twelve month period.

 

In determining inventory cost, the Company uses the first-in, first-out method and states inventory at the lower of cost or net realizable value. Virtually, all of the Company’s inventory is customer specific; as a result, if a customer’s order is cancelled, it is unlikely that CPS would be able to sell that inventory to another customer. Likewise, if the Company chooses to manufacture product in advance of anticipated purchase orders and those orders do not materialize, it is unlikely that it would be able to sell that inventory to another customer. The value of CPS’s work in process and finished goods is based on the assumption that specific customers will take delivery of specific items of inventory. Raw materials are less unique to specific products. AlSiC raw materials are used for all AlSiC parts and therefore they are continuously in production. Hermetic package and armor raw materials present a mix of raw material items, some of which are used in multiple parts and others in only specific parts. These raw material items are evaluated using the same criteria as the finished goods into which they go and are reserved against when there has been no activity for that finished good in the prior 12 months or expectation of future activity. The Company has not experienced significant losses to date as a result of customer cancellations and has not established a reserve for such cancellations.

 

The Company typically buys ‘lots’ of components for its hermetic packaging products. Often all the components in a lot are not necessary to complete the order. Annually the company reviews this unused material and establishes an obsolescence reserve for the amount it does not expect to use over the next three years.

 

 

 

c)

Valuation of deferred tax assets

Deferred tax assets and liabilities are based on the net tax effects of tax credits, operating loss carryforwards and temporary differences between the carrying amounts of assets and liabilities for financial reporting purposes and the amounts used for income tax purposes. The Company considers many factors in assessing whether or not a valuation allowance for its deferred tax asset is warranted. In light of recent profitability and expected future profitability. It was determined that a reserve is not needed, as it is more likely than not that the Company would be able to fully utilize its deferred tax asset.

 

At December 30, 2023, the Company’s deferred tax asset and other temporary differences will require taxable income of approximately $7.6 million and reversals of existing temporary differences to fully utilize the deferred tax asset, assuming a statutory corporate tax rate of 21%.

 

 

Results of Operations (all $ in millions unless noted)

 

Results of Operations for the year 2023 (2023) compared with the year 2022 (2022):

 

Total revenue was $27.6 million in 2023, a 4% increase compared with total revenue of $26.6 million in 2022. This increase was due primarily to an increase in the sales of armor compared to 2022, partially offset by a quality problem with the product for one of our major customers which resulted in significant product returns as well as a reserve for potential future returns.  Based on information received from the customer subsequent to December 30, 2023, this issue appears to be under control and is not expected to have a material impact on 2024 results.

 

Gross profit in 2023 totaled $6.8 million or 25% of sales.  This compares with $7.3 million, or 27% of sales, generated during 2022. The decrease in margin was primarily due to the impact of the quality issue described above.

 

Selling, general and administrative (SG&A) expenses were $5.1 million during 2023, virtually the same as SG&A expenses of $5.1 million incurred during 2022.  Several offsetting factors lead to this result. The Company incurred lower variable compensation costs in 2023 due to its reduction in operating profit compared to 2022. Conversely, travel costs were significantly higher in 2023 as customer and trade show exhibiting continued to recover from the limitations due to the Covid-19 pandemic.

 

The Company generated operating income of $1.7 million in 2023, compared with an operating income of $2.2 in 2022. This decrease was due almost entirely to the quality problem, discussed above. The Company recorded net income of $1.4M in 2023 compared to $2.1M in 2022. In 2023 the Company had a provision for income taxes of $0.6 million compared to $0.8 million in 2022. In addition, the Company filed for the Employee Retention Tax Credit of $0.7 million in 2022. 

 

Significant Fourth Quarter Activity in 2023:

 

Revenues totaled $6.7 million in the fourth quarter of 2023 versus $6.1 million in the fourth quarter of 2022, an increase of 10%.  This increase was consistent with our expectations, but was also mitigated by the quality issues described above.

 

 

 

Gross margin decreased in the fourth quarter of 2023 compared with the fourth quarter of 2022 to $1.1 million from $1.6 million.  This decrease was due to the quality issue described above.

 

SG&A expenses totaled $1.0 million during the quarter, a decrease of 23% compared to $1.3 million in the same quarter of 2022.  This decrease was primarily due to the decreased variable compensation costs discussed above. 

 

The Company recorded operating income of $0.1 million in the fourth quarter of 2023 compared to operating income of $0.3 million in the fourth quarter of 2022. 

 

The Company recorded net income of $0.1 million in the fourth quarter of 2023 compared to net income of $0.3 million in the fourth quarter of 2022. 

 

Liquidity and Capital Resources (all $ in millions unless noted)

 

The Company’s cash and cash equivalents at December 30, 2023 totaled $8.8 compared with cash and cash equivalents at December 31, 2022 of $8.3.  This increase was primarily due to the Company’s profitability for the year offset primarily by the decrease in deferred revenue from $2.8 at the end of 2022 to $0.3 at the end of 2023.

 

Accounts receivable at December 30, 2023 totaled $4.4 compared to $3.8 at December 31, 2022. Days Sales Outstanding (DSO) increased to 60 days at the end of 2023 compared to 52 days at the end of 2022. This change was due to the reduction of deferred revenue occurring in the 4th quarter of 2022. Prepayments received in 2021 were used to pay for shipments shipped in the 4th quarter of 2022 thus immediately reducing accounts receivable, rather than the customer paying 30-45 days later. The accounts receivable balances at December 30, 2023, and December 31, 2022 were both net of an allowance for doubtful accounts of $10 thousand.

 

Inventories decreased to $4.6 at December 30, 2023 from $4.9 at December 31, 2022. The inventory turnover in the four quarters ending 2023 was 4.3 times, up from 4.2 times averaged during the four quarters of 2022 (each based on a 5 point average).  In July 2022 CPS implemented a new ERP computer system which, among other things, has enabled the Company to better manage its inventory.

 

The Company had no inventory on consignment at any customers at the end of 2023 or 2022. At December 30, 2023 and December 31, 2022 inventory of, $0.5 and $0.8, respectively, was located at vendor locations pursuant to inventory agreements.

 

The Company funded its operations from its profit in 2023. The Company expects it will continue to be able to fund its operations during 2024 from existing cash balances and profits.

 

The Company continues to sell to a limited number of customers and the loss of any one of these customers or vendors could cause the Company to require additional external financing. Failure to generate sufficient revenues, raise additional capital or reduce certain discretionary spending could have a material adverse effect on the Company’s ability to achieve its business objectives.

 

Contractual Obligations

 

In May 2023, the Company terminated its $3.0 million revolving line of credit (LOC) with Massachusetts Business Development Corporation (BDC). A new LOC in the amount of $3.0 million was entered into with Rockland Trust Company. The LOC is secured by the accounts receivable and other assets of the Company and has an interest rate of the National Prime Rate as published by the Wall Street Journal. On December 30, 2023, the Company had $0 of borrowings under this LOC and its borrowing base at the time would have permitted an additional $3.0 million to have been borrowed.  The LOC remains in effect until terminated per mutual agreement by both parties. 

 

 

 

In March 2020, the Company acquired a scanning acoustic microscope for a price of $208 thousand.  The full amount was financed through a 5 year note payable with a financing company.  The note is collateralized by the microscope and is being paid in monthly installments of $4 thousand, consisting of principal plus interest at a rate of 6.47%

 

As of December 30, 2023, the Company had $282 thousand of construction in progress and no outstanding commitments to purchase production equipment.

 

During 2023, our leasing arrangements consisted of the Norton, MA facility lease. The Norton facility lease was renewed in February 2021, expires in February 2026 and is a triple net lease wherein the Company is responsible for payment of all real estate taxes, operating costs and utilities.  The Company also has an option to buy the property and a first right of refusal during the term of the lease. Annual rental payments were $162 thousand in 2023.

 

Off-Balance Sheet Arrangements

 

We have no off-balance sheet arrangements.

 

Inflation

 

Thus far inflation has not had a significant impact on our profitability. We have had higher than normal wage increases, have implemented other programs to ameliorate the effects of inflation on our employees (for example, we increased the Company share of health insurance premiums and increased the Company 401k match in 2023) and seen price increases from some of our suppliers. We have been able to pass along many of these price increases to our customers. There can be no assurance that our customers will continue to accept further price increases, that our employees will continue to be satisfied with their wage and benefit increases and that inflation will not affect our operations or business in the future.

 

Item 7A. Quantitative and Qualitative Disclosure about Market Risk

 

Smaller reporting companies are not required to provide the information required by this item.

 

Item 8. Financial Statements and Supplementary Data

 

See Index to the Company’s Financial Statements and the accompanying notes which are filed as part of this Annual Report on Form 10-K.

 

Item 9. Changes in and Disagreements with Accountants on Accounting and Financial Disclosure

 

None.

 

Item 9A. Controls and Procedures

 

Evaluation of Disclosure Controls and Procedures

 

The Company maintains disclosure controls and procedures that are designed to ensure that information required to be disclosed in Securities and Exchange Commission reports is recorded, processed, summarized and reported within the time periods specified in the Securities and Exchange Commission’s rules and forms, and that such information is accumulated and communicated to the Company’s management, including the Chief Executive Officer and Chief Financial Officer, as appropriate, to allow timely decisions regarding required disclosure.

 

 

 

Under the direction of our Chief Executive Officer and Chief Financial Officer, management has carried out an evaluation of the effectiveness of the Company’s disclosure controls and procedures as such item is defined in Rule 13a-15(e) under the Securities Exchange Act of 1934, as amended (the "Exchange Act"). Based on that evaluation, the Chief Executive Officer and Chief Financial Officer have concluded that these disclosure controls and procedures were effective as of December 30, 2023.

 

Changes in Internal Control over Financial Reporting

 

There were no material changes in the Company’s internal control over financial reporting during fiscal 2023.

 

Managements Report on Internal Control over Financial Reporting

 

Management is responsible for establishing and maintaining adequate internal control over financial reporting for the Company, as such term is defined in Rule 13a-15(f) of the Exchange Act. Internal control over financial reporting is a process designed to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with accounting principles generally accepted in the United States and includes those policies and procedures that (i) pertain to the maintenance of records that in reasonable detail accurately and fairly reflect the transactions and dispositions of the Company’s assets; (ii) provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with accounting principles generally accepted in the United States, and that receipts and expenditures of the Company are being made only in accordance with authorizations of the Company’s management and directors; and (iii) provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use or disposition of the Company’s assets that could have a material effect on the financial statements.

 

Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate. 

 

Under the direction of our Chief Executive Officer and Chief Financial Officer, management has assessed the effectiveness of the Company’s internal control over financial reporting as of December 30, 2023. In making this assessment, management used the criteria set forth in the "Internal Control Integrated Framework" issued by the Committee of Sponsoring Organizations of the Treadway Commission (COSO) (2013). Based on this assessment, management concluded that the Company’s internal control over financial reporting was effective as of December 30, 2023.

 

This annual report does not include an attestation report of the Company’s registered public accounting firm regarding internal control over financial reporting. Management’s report was not subject to attestation by the Company’s registered public accounting firm pursuant to rules of the Securities and Exchange Commission that permit the Company to provide only management’s report in this annual report.

 

Item 9B. Other Information

 

The Company had no information required to be disclosed in a report on Form 8-K during the fourth quarter of the year covered by this Form 10-K that has not been so reported.

  

 

Part III

 

Item 10. Directors, Executive Officer and Corporate Governance

 

The information required by this Item 10 is incorporated herein by reference to our Definitive Proxy Statement, under the captions “Members of the Board of Directors, Nominees and Executive Officers,” “Certain Relationships and Related Person Transactions; Legal Proceedings,” “Section 16(a) Beneficial Ownership Reporting Compliance,” “Code of Conduct” and “Corporate Governance” and with respect to our 2024 Annual Meeting of Stockholders to be filed with the Securities and Exchange Commission not later than 120 days after the end of the Company’s 2023 fiscal year.

 

The Company has adopted the CPS Code of Conduct, which applies to all directors, officers (including the principal executive officer, principal financial officer and treasurer) and employees.  A copy of this code can be found on the Company’s website at https://cpstechnologysolutions.com/investor-overview/.

 

 

 

Item 11. Executive Compensation

 

The information required by this Item 11 is incorporated herein by reference to our Definitive Proxy Statement, under the captions “Compensation” and “Compensation Discussion and Analysis” with respect to our 2024 Annual Meeting of Stockholders to be filed with the Securities and Exchange Commission not later than 120 days after the end of the Company’s 2023 fiscal year.

 

Item 12. Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters

 

The information required by this Item 12 is incorporated herein by reference to our Definitive Proxy Statement, under the caption “Equity Compensation Plan Information” and “Security Ownership of Certain Beneficial Owners and Management” with respect to our 2024 Annual Meeting of Stockholders to be filed with the Securities and Exchange Commission not later than 120 days after the end of the Company’s 2023 fiscal year.

 

Item 13. Certain Relationships and Related Transactions, and Director Independence

 

The information required by this Item 13 is incorporated herein by reference to our Definitive Proxy Statement, under the captions “Certain Relationships and Related Person Transactions; Legal Proceedings” and “Corporate Governance” with respect to our 2024 Annual Meeting of Stockholders to be filed with the Securities and Exchange Commission not later than 120 days after the end of the Company’s 2023 fiscal year.

 

Item 14. Principal Accountant Fees and Services

 

The information required by this Item 14 is incorporated herein by reference to our Definitive Proxy Statement, under the caption “Accounting Matters” with respect to our 2024 Annual Meeting of Stockholders to be filed with the Securities and Exchange Commission not later than 120 days after the end of the Company’s 2023 fiscal year.

 

 

 

Part IV

 

Item 15.            Exhibits, Financial Statement Schedules.
(a) Documents filed as part of this Form 10-K.

 

1. Financial Statements
The financial statements filed as part of this Form 10-K are listed on the Index to Financial Statements of this Form 10-K.

 

2. Exhibits
The exhibits to this Form 10-K are listed on the Exhibit Index of this Form 10-K.

 

 

 

CPS TECHNOLOGIES CORP.
EXHIBIT INDEX

 

Exhibit No.

Description

   

3.1*

Restated Certificate of Incorporation of the Company, as amended, is incorporated herein by reference to Exhibit 3.1 to the Company’s annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021

   

3.2*

By-laws of the Company, as amended, are incorporated herein by reference to Exhibit 3.2 to the Company’s annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021

   

3.3*

Certificate of Amendment of Restated Certificate of Incorporation of the Company dated May 14, 2014 is incorporated herein by reference to Exhibit 3.4 to the Company’s annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021

   

3.4*

Certificate of Ownership and Merger Merging CPS Superconductor Corporation into Ceramics Process Systems Corporation dated March 15, 2007 is incorporated herein by reference to Exhibit 3.2 to the Company’s annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021

   

4.1*

Specimen certificate for shares of Common Stock of the Company is incorporated herein by reference to Exhibit 4.2 to the Registration Statement on Form S-3 (Registration Statement No. 333-255373) filed with the Securities and Exchange Commission on April 20, 2021

   

4.2*

Description of the Company’s securities is incorporated by reference to Exhibit 4.2 of the Company's annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021)

   

4.3

Amendment dated May 12, 2020 to Credit and Security Agreement by and between CPS Technologies Corp. and The Massachusetts Business Development Corporation dated September 25, 2019

   

4.4

Amendment dated May 17, 2021 to Credit and Security Agreement by and between CPS Technologies Corp. and The Massachusetts Business Development Corporation dated September 25, 2019

   

4.5

CNC Associates, Inc. Notification of Approval of Financing dated May 26, 2020.

   

4.6

Credit and Security Agreement by and between CPS Technologies Corp. and The Massachusetts Business Development September 25, 2019

   

4.7

Amendment dated September 8, 2021 to Credit and Security Agreement by and between CPS Technologies Corp. and The Massachusetts Business Development Corporation dated September 25, 2019

   

10.2*

Amendment No. 1 dated November 7, 2008 to Standard Form Commercial Lease by and between Gifford Investments, Inc.(lessor) and Ceramics Process Systems Corporation dated July 19, 2006 is incorporated by reference to Exhibit 10.2 of the Company's annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021)

   

10.5*(1)

Retirement Savings Plan, effective September 1, 1987 is incorporated by reference to Exhibit 10.35 to the Company’s 1989 S-1 Registration Statement

   

10.6*

Amendment No. 2 dated May 7, 2009 to Standard Form Commercial Lease by and between Gifford Investments, Inc.(lessor) and Ceramics Process Systems dated July 19, 2006 is incorporated by reference to Exhibit 10.6 of the Company's annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021).

 

 

 

Exhibit No.

Description

   

10.7*

Third Amendment dated January 6, 2015 to Standard Form Commercial Lease by and between Gifford Investments, Inc.(lessor) and CPS Technologies Corp. dated July 19, 2006 is incorporated by reference to Exhibit 10.7 of the Company's annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021)

   

10.8*

Fourth Amendment dated February 28, 2018 to Standard Form Commercial Lease by and between Gifford Investments, Inc. and CPS Technologies Corp. dated July 19, 2006 is incorporated by reference to Exhibit 10.8 of the Company's annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021)

   

10.9*

Fifth Amendment dated January 25, 2021 to Standard Form Commercial Lease by and between Gifford Investments, Inc. and CPS Technologies Corp. dated July 19, 2006 is incorporated by reference to Exhibit 10.9 of the Company's annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021)

   

10.21*

1999 Stock Incentive Plan adopted by the Company’s Board of Directors on January 22, 1999

   

10.22*

2009 Stock Incentive Plan ("2009 Plan") on December 10, 2009 is incorporated by reference to Exhibit 99.1 of the Company's Form S-8 (File No. 333-163553) filed with the Securities and Exchange Commission on December 8, 2009)

   

10.23*(1)

2020 Stock Incentive Plan (“2020 Plan”) on March 3, 2020 is incorporated by reference to Exhibit 10.23 of the Company's annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021)

   

10.24*(1)

Amended and Restated 2009 Stock Incentive Plan is incorporated by reference to Exhibit 10.24 of the Company's annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021)

   

10.26*(1)

Form of Stock Option Agreement for 2020 Equity Incentive Plan and Amended and Restated 2009 Stock Option Plan is incorporated by reference to Exhibit 10.26 of the Company's annual report on Form 10-K (File No. 001-36807) filed with the Securities and Exchange Commission on March 17, 2021)

   

23.1

Consent of Wolf & Company, P.C.

   

31.1

Certification Pursuant to Exchange Act Rule 13a-14(a), as Adopted Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.

   

31.2

Certification Pursuant to Exchange Act Rule 13a-14(a), as Adopted Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.

   

32.1

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

   

97

Policy for the Recovery of Erroneously Awarded Compensation adopted by the Board of Directors July 12, 2023.

   

101.INS

Inline XBRL Instance Document

   

101.SCH

Inline XBRL Taxonomy Extension Schema Document

   

101.CAL

Inline XBRL Taxonomy Extension Calculation Linkbase Document

   

101.DEF

Inline XBRL Taxonomy Extension Definition Linkbase Document

   

101.LAB

Inline XBRL Taxonomy Extension Label Linkbase Document

   

101.PRE

Inline XBRL Taxonomy Extension Presentation Linkbase Document

   

104

Cover Page Interactive Data File (embedded within the Inline XBRL and contained in Exhibit 101)

 

* Incorporated herein by reference.

 

(1) Management Contract or compensatory plan or arrangement filed as an exhibit to this Form pursuant to Items 14(a) and 14(c) of Form 10-K.

 

 

 

SIGNATURES

 

Pursuant to the requirements of Section 13 or 15(d) 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.

 

CPS TECHNOLOGIES CORP.

 

By:

/s/ Brian Mackey

 

President and Chief Executive Officer
March 13, 2024

 

 

Pursuant to the Requirements of the Securities Act of 1934, this report has been signed by the following persons on behalf of the registrant and in the capacities and on the dates indicated.

 

Signature

Title

Date

     

/s/ Brian Mackey

President  and Chief Executive Officer

March 13, 2024

Brian Mackey

   
     

/s/ Charles K. Griffith Jr.

Chief Financial Officer

March 13, 2024

Charles K. Griffith Jr.

   
     

/s/ Francis J. Hughes, Jr.

Director

March 13, 2024

Francis J. Hughes

   
     

/s/ Daniel C. Snow

Director

March 13, 2024

Daniel C. Snow

   
     

/s/ Thomas M. Culligan

Director

March 13, 2024

Thomas M. Culligan 

   
     

/s/ Ralph M. Norwood

Director

March 13, 2024

Ralph M. Norwood

   
     

/s/ Grant C. Bennett

Director

March 13, 2024

Grant C. Bennett  

   

 

 

 

INDEX TO FINANCIAL STATEMENTS
OF
CPS TECHNOLOGIES CORP.

 

Report of Independent Registered Public Accounting Firm

 
  

Balance Sheets as of December 30, 2023 and December 31, 2022

 
  

Statements of Operations for the years ended December 30, 2023 and December 31, 2022

 
  

Statements of Stockholders’ Equity for the years ended December 30, 2023 and December 31, 2022

 
  

Statements of Cash Flows for the years ended December 30, 2023 and December 31, 2022

 
  

Notes to Financial Statements

 

 

 

 

Report of Independent Registered Public Accounting Firm

 

To the Board of Directors and Stockholders of CPS Technologies Corporation

 

Opinion on the Financial Statements

 

We have audited the accompanying balance sheets of CPS Technologies Corporation (the Company) as of December 30, 2023 and December 31, 2022, the related statements of operations, stockholders’ equity and cash flows for the years then ended, and the related notes (collectively referred to as the financial statements). In our opinion, the financial statements present fairly, in all material respects, the financial position of the Company as of December 30, 2023 and December 31, 2022, and the results of its operations and its cash flows for the years then ended, in conformity with accounting principles generally accepted in the United States of America.

 

Basis for Opinion

 

These financial statements are the responsibility of the Company's management. Our responsibility is to express an opinion on the Company's financial statements based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) ("PCAOB") and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.

 

We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud. The Company is not required to have, nor were we engaged to perform, an audit of its internal control over financial reporting.  As part of our audits we are required to obtain an understanding of internal control over financial reporting, but not for the purpose of expressing an opinion on the effectiveness of the Company’s internal control over financial reporting.  Accordingly, we express no such opinion.

 

Our audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the financial statements. We believe that our audits provide a reasonable basis for our opinion.

 

Critical Audit Matter

 

The critical audit matter communicated below is a matter arising from the current period audit of the financial statements that was communicated or required to be communicated to the audit committee and that: (1) relates to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication of a critical audit matter does not alter in any way our opinion on the financial statements, taken as a whole, and we are not, by communicating the critical audit matter below, providing separate opinions on the critical audit matters or on the accounts or disclosures to which it relates.

 

Reserves for product sales returns

 

Description of the Matter

 

As described in Notes 2 and 6 to the financial statements, reserves for product sales returns are recorded based on returns history and specific circumstances in which the Company anticipates returns to occur. During 2023, the Company became aware of a quality matter with products sold to a major customer that resulted in product returns and the issuance of credits to the customer.

 

How We Addressed the Matter in Our Audit

 

Our audit procedures relating to the Company’s product returns liability included, but were not limited to, the following:

 

We obtained management’s calculation supporting the product returns liability and performed procedures to address the completeness and accuracy of data applied as well as the reasonableness of assumptions and judgments made by management. Specifically, we performed testing to identify the scope of product sales subject to quality concerns including analysis of the sales of the particular part sold, testing to identify the remaining inventory on hand with potential quality concerns, testing the mathematical accuracy of the calculation as well as performing sensitivity analysis to assess the effect of changes in assumptions.

 

We also reviewed correspondence between the Company’s management and the customer which the specific quality concern was identified and confirmed accounts receivable balances for a sample of invoices outstanding with the customer.

 

We have served as the Company's auditor since 2005.

 

392

/s/ Wolf & Company, P.C.

 

Boston, Massachusetts

 

March 13, 2024

 

 

  

 

CPS TECHNOLOGIES CORP.
BALANCE SHEETS

 

  

December 30,

  

December 31,

 
  

2023

  

2022

 

ASSETS

        
         

Current assets:

        

Cash and cash equivalents

 $8,813,626  $8,266,753 

Accounts receivable-trade, net

  4,389,155   3,777,975 

Accounts receivable-other

  83,191   685,668 

Inventories

  4,581,930   4,875,901 

Prepaid expenses and other current assets

  276,349   211,242 

Total current assets

  18,144,251   17,817,539 

Property and equipment:

        

Production equipment

  11,271,982   10,770,427 

Furniture and office equipment

  952,883   952,883 

Leasehold improvements

  985,649   985,649 

Total cost

  13,210,514   12,708,959 

Accumulated depreciation and amortization

  (11,936,004)  (11,446,901)

Construction in progress

  281,629   64,910 

Net property and equipment

  1,556,139   1,326,968 

Right-of-use lease asset

  332,000   466,000 

Deferred taxes, net

  1,569,726   2,069,436 

Total assets

 $21,602,116  $21,679,943 

 

(continued)

 

See accompanying notes to financial statements.

 

 

 

CPS TECHNOLOGIES CORP.
BALANCE SHEETS

 

  

December 30,

  

December 31,

 
  

2023

  

2022

 

LIABILITIES AND STOCKHOLDERS’ EQUITY

        

Current liabilities:

        

Notes payable, current portion

 $46,797  $43,711 

Accounts payable

  2,535,086   1,836,865 

Accrued expenses

  1,075,137   820,856 

Deferred revenue

  251,755   2,521,128 

Lease liability, current portion

  160,000   157,000 
         

Total current liabilities

  4,068,775   5,379,560 
         

Notes payable less current portion

  8,090   54,847 

Deferred revenue – long term

  31,277   231,020 

Long term lease liability

  172,000   309,000 
         

Total liabilities

  4,280,142   5,974,427 

Commitments & Contingencies

          

Stockholders’ Equity:

        

Common stock, $0.01 par value, authorized 20,000,000 shares; issued 14,601,487 and 14,460,486 shares; outstanding 14,519,215 and 14,450,470; at December 30, 2023 and December 31, 2022, respectively

  146,015   144,605 

Additional paid-in capital

  40,180,893   39,726,851 

Accumulated deficit

  (22,754,796)  (24,125,092)

Less cost of 82,272 and 10,016 common shares repurchased at December 30, 2023 and December 31, 2022, respectively

  (250,138)  (40,848)
         

Total stockholders’ equity

  17,321,974   15,705,516 
         

Total liabilities and stockholders’ equity

 $21,602,116  $21,679,943 

 

See accompanying notes to financial statements.

 

 

 

 

CPS TECHNOLOGIES CORP.
STATEMENTS OF OPERATIONS
FOR THE YEARS ENDED DECEMBER 30, 2023 AND DECEMBER 31, 2022

 

  

2023

  

2022

 

Product sales

 $27,550,646  $26,586,926 
         

Cost of product sales

  20,725,237   19,285,846 

Gross margin

  6,825,409   7,301,080 
         

Selling, general, and administrative expenses

  5,126,046   5,066,660 

Income from operations

  1,699,363   2,234,420 
         

Interest income (expense)

  225,757   12,015 

Other income (expense)

  27,261   641,233 

Income before income tax

  1,952,381   2,887,668 

Income tax provision (benefit)

  582,085   756,268 

Net income

 $1,370,296  $2,131,400 
         

Net income (loss) per basic common share

 $0.09  $0.15 

Weighted average number of basic common shares outstanding

  14,495,709   14,424,381 

Net income (loss) per diluted common share

 $0.09  $0.15 

Weighted average number of diluted common shares outstanding

  14,628,811   14,675,646 

 

See accompanying notes to financial statements.

 

 

 

 

CPS TECHNOLOGIES CORP.
STATEMENTS OF STOCKHOLDERS’ EQUITY
FOR THE YEARS ENDED DECEMBER 30, 2023 AND DECEMBER 31, 2022

 

  

Common stock

                 
          

Additional

          

Stock-

 
  

Number of

  

Par

  

Paid-in

  

Accumulated

  

Stock

  

holders

 
  

shares issued

  

Value

  

capital

  

deficit

  

repurchased

  

equity

 

Balance at December 25, 2021

  14,350,786  $143,508  $39,281,810  $(26,256,492) $(2,515) $13,166,311 
                         

Share-based compensation expense

        250,359         250,359 

Employee option exercises

  109,700   1,097   194,682      (38,333)  157,446 

Net income

           2,131,400      2,131,400 

Balance at December 31, 2022

  14,460,486  $144,605  $39,726,851  $(24,125,092) $(40,848) $15,705,516 
                         

Share-based compensation expense

        204,797         204,797 

Employee option exercises

  141,001   1,410   249,245      (209,290)  41,365 

Net income

           1,370,296      1,370,296 

Balance at December 30, 2023

  14,601,487  $146,015  $40,180,893  $(22,754,796) $(250,138) $17,321,974 

 

See accompanying notes to financial statements.

 

 

 

 

CPS TECHNOLOGIES CORP.
STATEMENTS OF CASH FLOWS
FOR THE YEARS ENDED DECEMBER 30, 2023 AND DECEMBER 31, 2022

 

  

2023

  

2022

 

Cash flows from operating activities:

        

Net income

 $1,370,296  $2,131,400 

Adjustments to reconcile net income to cash provided by operating activities:

        

Share-based compensation

  204,797   250,359 

Depreciation and amortization

  489,103   445,739 

Deferred taxes

  499,710   754,542 

Gain on sale of property and equipment

  -   (3,400)

Changes in operating assets and liabilities:

        

Accounts receivable – trade

  (611,180)  1,092,046 

Accounts receivable – other

  602,477   (685,668)

Inventories

  293,971   (964,299)

Prepaid expenses and other current assets

  (65,107)  14,631 

Accounts payable

  698,221   (263,386)

Accrued expenses

  254,281   (265,575)    

Deferred revenue

  (2,469,116)  1,045,010 

Net cash provided by operating activities

  1,267,453   3,551,399 

Cash flows from investing activities:

        

Purchases of property and equipment

  (718,274)  (439,772)

Proceeds from sale of property and equipment

  -   3,400 

Net cash used by investing activities

  (718,274)  (436,372)

Cash flows from financing activities:

        

Proceeds from employee stock options

  41,365   157,446 

Payment on notes payable

  (43,671)  (56,032)

Net cash provided (used) by financing activities

  (2,306)  101,414 

Net increase in cash and cash equivalents

  546,873   3,216,441 
         

Cash and cash equivalents at beginning of year

  8,266,753   5,050,312 

Cash and cash equivalents at end of year

 $8,813,626  $8,266,753 

Supplemental cash flow information:

        

Cash paid for income taxes

 $111,456  $456 

Cash paid for interest

 $5,096  $7,954 

Supplemental disclosures of non-cash activity:

        

Net exercise of stock options

 $209,290   38,333 

 

See accompanying notes to financial statements.

 

 

 

CPS Technologies Corp.
Years Ended December 30, 2023 and December 31, 2022
Notes to Financial Statements

 

 

(1) Nature of Business

 

CPS Technologies Corp. (the ‘Company’ or ‘CPS’) provides advanced material solutions to the transportation, automotive, energy, computing/internet, telecommunications, aerospace, defense and oil and gas end markets.

 

Our primary material solution is metal matrix composites.  We design, manufacture and sell custom metal matrix composite components which improve the performance and reliability of systems in these end markets.  

  

 

(2) Summary of Significant Accounting Policies

 

(2)(a) Cash and Cash Equivalents

 

The Company considers all highly liquid investments with a maturity of three months or less at the date of purchase to be cash equivalents.

 

(2)(b) Accounts Receivable

 

The Company reports its accounts receivable at the invoiced amount less an allowance for credit losses. The Company’s management provides appropriate provisions for uncollectible accounts based upon factors surrounding the credit risk and activity of specific customers, historical trends, economic conditions and other information to estimate future expected losses. Adjustments to the allowance are charged to operations in the period in which information becomes available that may affect the allowance.   The Company maintains an allowance for credit losses of $10,000 as of December 30, 2023 and December 31, 2022.

 

(2)(b)(1) Accounts Receivable-Other

 

As of December 30, 2023 this amount was primarily VAT paid by CPS, but due to be repaid by its European customers with future shipments. In 2022 the Company filed for the Employee Retention Tax Credit (ERTC) in the amount of $641,086.  This credit was still due from the Internal Revenue Service (“IRS”) on December 31, 2022 however was collected in 2023. 

 

 

 

(2)(c) Inventories

 

Inventories are stated at the lower of cost (cost is based on standard costs which approximate actual costs), as determined under the first-in, first-out method (FIFO), or net realizable value. A reserve for obsolete inventories is based on factors regarding the sales and usage of such inventories, including inventories manufactured for specific customers. The Company’s general obsolescence policy is to reserve against obsolete inventory when there has been no activity on a particular part for a twelve month period and there are no expected customer orders.

 

(2)(d) Property and Equipment

 

Property and equipment are stated at cost. Depreciation of equipment is calculated on a straight-line basis over the estimated useful life, generally five years for production equipment and three to five years for furniture and office equipment. Leasehold improvements are depreciated over the shorter of the lease term or their useful life. Maintenance and repairs are charged to expense as incurred. Upon retirement or sale, the cost and related accumulated depreciation or amortization are removed from their respective accounts. Any gains or losses on the disposition of property and equipment are included in the results of operations in the period in which they occur.

 

(2)(e) Impairment of Long-Lived Assets

 

The Company reviews long-lived assets for impairment whenever circumstances and situations change such that there is an indication that the carrying amounts may not be recovered. Recoverability is assessed based on estimated undiscounted future cash flows. As of December 30, 2023 and December 31, 2022, the Company believes that there has been no impairment of its long-lived assets.

 

 

 

(2)(f) Revenue Recognition

 

Revenue is recognized in accordance with the five-step method under Accounting Standards Codification (ASC) 606, “Revenue from Contracts with Customers.”

 

Identifying the Contract with the Customer

The Company identifies contracts with customers as agreements that create enforceable rights and obligations.  In the case of a few large customers the Company has executed long-term Master Sales Agreements (“MSA”).  These are umbrella agreements which typically define the terms and conditions under which a customer can order goods from CPS.  These in themselves do not constitute a contract as no products are committed to be transferred and the customer has no obligation to make payments. In the case of SBIRs an enforceable contract is signed by both the customer and CPS.

 

The Company contract is only enforceable once both parties have approved it and is usually in the form of a written purchase order from a customer combined with acknowledgement from the Company.

 

In cases without an MSA, the customer submits a blueprint for a product, the Company provides a quote and the customer responds with a purchase order.   In these cases the Company’s acceptance of the purchase order constitutes an enforceable contract.

 

Identifying the Performance Obligations in the Contract

For each contract, the Company considers the promise to transfer products, each of which are distinct, to be the identified performance obligations. For SBIRs the Company is obligated to provide certain services over the life of the agreement and the customer is obligated to pay for those services, generally monthly, as they are performed.

 

Shipping and handling activities for which the Company is responsible are not a separate promised service but instead are activities to fulfill the entity’s promise to transfer goods. Shipping and handling fees will be recognized at the same time as the related performance obligations are satisfied.

 

The Company provides an assurance-type warranty.  This guarantees that the product functions as promised and meets specifications.  Under its terms and conditions the Company offers a 30 day warranty and replaces defective or non-conforming products.  The expense of replacement is recorded at the time the Company agrees to replace a defective or non-conforming product.  This assurance type warranty is not considered to be a distinct performance obligation.

 

Determining the Transaction Price

The Company determines the transaction price as the amount of consideration specified in the contract that it expects to receive in exchange for transferring promised goods or services to the customer. Amounts collected from customers for sales value added and other taxes are excluded from the transaction prices. Product sales are recorded net of trade discounts and sales returns.  The Company will establish a reserve for product returns when necessary based on returns history and specific circumstances in which the Company anticipates returns to occur. Such product return reserves are recorded as a reduction to revenue. 

 

If a contract includes a variable amount, such as a rebate, then the Company estimates the transaction price using either the expected value or the most likely amount of consideration to be received, depending upon the specific facts and circumstances. The Company includes estimated variable consideration in the transaction price only to the extent it is probable that a significant reversal of revenue will not occur when the uncertainty is resolved. The Company updates its estimate of variable consideration at the end of each reporting period to reflect changes in facts and circumstances. As of December 30, 2023 there are no contracts with variable consideration.

 

When credit is granted to customers, payment is typically due 30 to 90 days from billing and accordingly our contracts with customers do not include a significant financing component.

 

 

 

Allocating the Transaction Price to the Performance Obligations

In virtually all cases the transaction price is tied to a specific product or service in the contract obviating the need for any allocation.

 

Recognizing Revenue When (or as) the Performance Obligations are Satisfied

The Company recognizes revenue at the point in time when it transfers control of the promised goods or services to the customer, which typically occurs once the product has shipped or has been delivered to the customer or the service has been performed. Occasionally, for the purpose of ensuring a steady flow of product, the Company ships products on consignment. In these instances, delivery is deemed to have occurred when the customer pulls inventory out of the warehouse for use in their production, or upon a specified period of time as agreed upon by both parties.  As of December 30, 2023 there are no products on consignment.

 

The Company generally expenses sales commissions when incurred because the amortization period would have been one year or less. The costs are recorded within, selling, general and administrative expenses.

 

The Company does not disclose the value of unsatisfied performance obligations for contracts with an original expected length of one year or less.

 

(2)(g) Income Taxes

 

The Company uses the asset and liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are recorded for the expected future tax consequences of temporary differences between the financial reporting and income tax bases of assets and liabilities and are measured using the enacted tax rates and laws that are expected to be in affect when the differences reverse. A valuation allowance is established to reduce net deferred tax assets to the amount expected to be realized.

 

The Company’s policy is to recognize interest and penalties related to income tax matters in income tax expense. As of December 30, 2023 and December 31, 2022, the Company has no accruals for interest or penalties related to income tax matters. The Company does not have any uncertain tax positions at December 30, 2023 or December 31, 2022 which required accrual or disclosure.

 

(2)(h) Net Income Per Common Share

 

Basic net income per common share is calculated by dividing net income by the weighted average number of common shares outstanding during the period. Diluted net income per common share is calculated by dividing net income by the sum of the weighted average number of common shares plus additional common shares that would have been outstanding if potential dilutive common shares had been issued for granted stock option and stock purchase rights. Common stock equivalents are excluded from the diluted calculations when a net loss is incurred as they would be anti-dilutive.

 

(2)(i) Reclassification

 

Certain amounts in prior year’s financial statements have been reclassified to conform to the current year’s presentation.

 

(2)(j) Recent Accounting Pronouncements

 

In the normal course of business, management evaluates all the new accounting pronouncements issued by the Financial Accounting Standard Board (“FASB”). Effective January 1, 2023, the Company adopted FASB Accounting Standards Update (“ASU”) 2016-13, Measurement of Credit Losses on Financial Instruments, which changed the way entities recognize credit losses of most financial assets. Short-term and long-term financial assets, as defined by the standard, are impacted by immediate recognition of estimated credit losses in the financial statements, reflecting the net amount expected to be collected. The adoption of this standard had an immaterial impact on our financial statements. Management does not expect any of the recently issued accounting pronouncements, which have not already been adopted, to have a material impact on the Company’s financial statements.

 

 

 

(2)(k) Use of Estimates in the Preparation of Financial Statements

 

The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the amounts of revenues and expenses recorded during the reporting period. Such estimates are adjusted by management periodically as a result of existing or anticipated economic changes which effect, or may effect, the Company’s financial statements. Actual results could differ from these estimates.

 

(2)(l) Fiscal Year-End

 

The Company’s fiscal year end is the last Saturday in December which could result in a 52 or 53 week year. Fiscal year 2023 consisted of 52 weeks and 2022 consisted of 53 weeks.

 

(2)(m) Share-Based Payments

 

The Company measures the cost of employee services received in exchange for an award of equity instruments based on the grant date fair value of the award. That cost is recognized over the period during which an employee is required to provide services in exchange for the award, the requisite service period (usually the vesting period). The Company provides an estimate of forfeitures at initial grant date, and this estimated forfeiture rate is adjusted periodically based on actual forfeiture experience. The Company uses the Black-Scholes option pricing model to determine the fair value of stock options granted.

 

(2)(n) Segment Reporting

 

The Company views its operations and manages its business as one segment. The Company produces and sells advanced material solutions, primarily metal matrix composites, to assemblers of high density electronics and other specialty components and subassemblies. The Company also assembles housings and packages for hybrid circuits, selling to the same customers mentioned above. These customers represent a single market or segment with similar stringent and well-defined requirements. The Company’s customers, in turn, sell the components and subassemblies which incorporate the products into many different end markets, however, these end markets are two to three levels removed from the Company. The Company also sells armor strike faces to armor manufacturers, using the same manufacturing process used in its other product solutions. The Company makes operating decisions and assesses financial performance only for the Company as a whole and does not make operating decisions or assess financial performance by the end markets which ultimately use the products.

  

 

(3) Inventories

 

As of December 30, 2023 and December 31, 2022 inventories consisted of the following:

 

  

2023

  

2022

 

Raw materials

 $2,861,333  $2,645,442 

Work in process

  1,493,582   1,863,512 

Finished goods

  537,975   525,872 

Gross Inventory

  4,892,890   5,034,826 

Reserve for obsolescence

  (310,960)  (158,925)

Total

 $4,581,930  $4,875,901 

 

 

  
 

(4) Leases

 

The Company had one real estate lease in 2023 expiring in February 2026. CPS also has a few other leases for equipment which are minor in nature and are generally short-term in duration. None of these equipment leases have been capitalized as the Company elected an accounting policy for short-term leases, which allows lessees to avoid recognizing right-of-use assets and liabilities for leases with terms of 12 months or fewer.

 

The real estate lease expiring in 2026 (the “Norton facility lease’) is included as a right-of-use lease asset and corresponding lease liability on the balance sheet. This asset and liability are based on the present value of remaining lease payments over the remaining lease term using the Company’s incremental borrowing rate at the commencement date of the lease. The Company does not separate lease components from non-lease components.  The Company’s lease agreements do not contain any material residual value guarantees or material restrictive covenants.

 

The Norton facility lease comprises approximately 38 thousand square feet. The lease is a triple net lease wherein the Company is responsible for payment of all real estate taxes, operating costs and utilities.  The Company also has an option to buy the property and a first right of refusal during the term of the lease.  Annual rental payments are through maturity are reflected in the table below.

 

The following table presents information about the amount, timing and uncertainty of cash flows arising from the Company’s capitalized operating lease as of December 30, 2023:

 

(Dollars in Thousands

 

December 30, 2023

 

Maturity of capitalized lease liability

 

Lease payments

 

2024

 $164,700 

2025

  165,240 

2026

  27,540 

Total undiscounted operating lease payments

 $357,480 

Less: Imputed interest

  (25,480)

Present value of operating lease liability

 $332,000 

 

Balance Sheet Classification

    

Current lease liability

 $160,000 

Long-term lease liability

  172,000 

Total operating lease liability

 $332,000 
     

Other Information

    

Weighted-average remaining lease term for capitalized operating leases (in months)

  26 

Weighted-average discount rate for capitalized operating leases

  6.6%

 

 

 

Operating Lease Costs and Cash Flows

 

Operating lease cost and cash paid was $162 thousand for the twelve months ended December 30, 2023 and $160 thousand during the year ended December 31, 2022. These costs are related to its long-term operating lease. All other short-term leases were immaterial.

 

Estimated monthly payments under the terms of the Norton facility lease, escalate from $13 thousand to $14 thousand over the lease term.

  

 

(5) Share-Based Compensation Plans

 

The Company adopted the 2020 Equity Incentive Plan ("2020 Plan") on March 3, 2020. Under the terms of the 2020 Plan all of the Company’s employees, officers, directors, consultants and advisors are eligible to be granted options, restricted stock awards, or other stock-based awards. Some outstanding options are non-statutory stock options; some are incentive stock options.  All options granted are exercisable at the fair market value of the stock on the date of grant and expire ten years from the date of grant. The options granted to employees generally vest in equal annual installments over a five-year period. The options granted to directors generally vest immediately on date of grant. Certain options also remain issued and outstanding under the 2009 Stock Incentive Plan.

 

Under the 2020 Plan a total of 1,500,000 shares of common stock are available for issuance, of which 832,700 shares remain available for grant as of December 30, 2023.

 

A summary of stock option activity as of December 30, 2023 and changes during the year then ended is presented below:

 

      

Weighted

  

Weighted

     
      

Average

  

Remaining

  

Aggregate

 
      

Exercise

  

Contractual

  

Intrinsic

 
  

Shares

  

Price

  

Life (years)

  

Value

 

Outstanding at beginning of year

  

961,400

  

$

2.47

         

Granted

  

344,500

  

$

2.90

         

Exercised

  

(141,000

)

 

$

1.78

         

Forfeited

  

(236,400

)

 

$

2.93

         

Expired

  

(25,000

)

 

$

1.00

         

Outstanding at end of year

  

903,500

  

$

2.66

   

6.51

  

$

2,403,762

 
                 

Options exercisable at year-end

  

494,600

  

$

2.42

   

4.58

  

$

1,199,158

 

 

 

 

The fair value of each option grant is estimated on the date of grant using the Black-Scholes option-pricing model. The following table presents the annualized weighted average values of the significant assumptions used to estimate the fair values of the options granted during 2023 and 2022:

 

  

2023

  

2022

 

Risk-free interest rate

  

3.43%

-

4.24%

   

1.55%

-

2.84%

 

Expected life in years

  

5

-

5.5

   

6

-

7

 

Expected volatility

   

59.7%

     

54%

  

Expected dividend yield

   

0

     

0

  

Weighted average fair value of grants

 

 

 

$2.91

   

 

 

$3.11

  

 

All options are granted with an exercise price equal to the fair market value of the underlying common stock on the date of grant.

 

The Company recognized $204,797 and $250,359 as stock based compensation expense in 2023 and 2022, respectively.  As of December 30, 2023, there was $560,815 of total unrecognized compensation cost related to non-vested share-based compensation arrangements granted under the plan; that cost is expected to be recognized over a weighted average period of 2.55 years.

   

 

(6) Accrued Expenses

 

Accrued expenses at December 30, 2023 and December 31, 2022 consist of the following:

 

  

2023

  

2022

 

Accrued legal and accounting

 $86,000  $35,398 

Accrued payroll and related costs

  649,201   760,305 

Accrued other

  339,936   25,153 
         
  $1,075,137  $820,856 

 

Included in Accrued other is $288,000 as a reserve for potential credits to be issued as part of the quality issue described above. In addition to this reserve, the Company increased its sales returns in the amount of $104,126 for parts for which a credit was issued in January 2024.

 

 

  
 

(7) Revolving Line of Credit

 

In May 2023, the Company terminated its $3.0 million revolving line of credit (LOC) with Massachusetts Business Development Corporation (BDC). A new LOC in the amount of $3.0 million was entered into with Rockland Trust Company. The LOC is secured by the accounts receivable and other assets of the Company and has an interest rate of the National Prime Rate as published by the Wall Street Journal (8.5% at December 30, 2023). On December 30, 2023, the Company had $0 of borrowings under this LOC and its borrowing base at the time would have permitted an additional $3.0 million to have been borrowed.  The LOC remains in effect until terminated per mutual agreement by both parties.  Total Interest Expense for 2023 was $0 and was $0 thousand for 2022.

  

 

(8) Notes Payable 

 

In March 2020, the Company acquired a Sonoscan ultrasound microscope for a price of $208 thousand.  The full amount was financed through a 5 year note payable with a third party equipment finance company.  The note is collateralized by the microscope and is being paid in monthly installments of $4 thousand, consisting of principal plus interest at a rate of 6.47%.

 

The aggregate maturities of the notes payable based on the payment terms of the agreement are as follows:

 

Remaining in:

 

Payments due by period

 

FY 2024

 $48,974 

FY 2025

 $8,155 

Less Interest

 $(2,242)

Total Principal Payments

 $54,887 

 

Total interest expense on notes payable during 2023 was $5,096 and during 2022 was $7,954.

   

 

(9) Income Taxes

 

Components of income tax expense (benefit) for each year are as follows:

 

  

2023

  

2022

 

Current:

        

Federal

 $81,919  $1,270 

State

  456   456 
         

Current income tax provision (benefit):

  82,375   1,726 
         

Deferred:

        

Federal

  357,507   577,866 

State

  142,203   176,676 
         

Deferred income tax provision (benefit), net

  499,710   754,542 
         

Total

 $582,085  $756,268 

 

 

 

Deferred tax assets as of December 30, 2023 and December 31, 2022 are as follows:

 

  

December 30,

2023

  

December 31,

2022

 

Deferred Tax Assets:

        

Net operating loss carryforwards

 $-  $132,632 

Stock compensation

  209,609   209,092 

Credit carryforwards

  865,928   1,253,956 

Inventory

  84,955   80,628 

Accrued liabilities

  -   5,071 

Depreciation

  143,081   179,481 

Capitalized R&D, net

  263,421   205,878 

Other

  2,732   2,698 

Net deferred tax assets

 $1,569,726  $2,069,436 

 

A summary of the change in the deferred tax asset is as follows:

 

  

2023

  

2022

 
         

Gross deferred tax balance at beginning of year

 $2,069,436  $2,823,978 
         

Deferred tax benefit (provision)

  (499,710)  (754,542)
         

Balance at end of year, net

 $1,569,726  $2,069,436 

 

 

 

Income tax expense is different from the amounts computed by applying the U.S. federal statutory income tax rate of 21 percent to pretax income as a result of the following:

 

  

2023

  

2022

 
         

Tax at statutory rate

 $416,663  $578,214 

State tax, net of federal benefit

  142,562   177,036 

Other

  22,860   1,018 
         

Total

 $582,085  $756,268 

 

The Company’s income tax filings are subject to review and examination by federal and state taxing authorities. The Company is currently open to audit under the applicable statutes of limitations for the years 2020 through 2023.

  

 

(10) Retirement Savings Plan

 

The Company sponsors a Retirement Savings Plan (the ‘Plan’) under the provisions of Section 401 of the Internal Revenue Code. Employees, as defined in the Plan, are eligible to participate in the Plan after 30 days of employment. Under the terms of the Plan, the Company may match employee contributions under such method as described in the Plan. During 2023 the Company elected to match 1% of each of the first 4% of employee contributions paid proportionally each pay period amounting to $232 thousand.  In 2022 the Company elected to match ½% of each of the first 4% of employee contributions paid proportionally each pay period amounting to $94 thousand.

  

 

(11) Concentrations of Credit Risk, Significant Customers and Geographic Information

 

Financial instruments which subject the Company to concentrations of credit risk consist principally of cash, cash equivalents and trade accounts receivable. The Company maintains cash deposits in a sweep account, whereby funds are automatically moved in increments of $250,000 to various FDIC insured financial institutions on a nightly basis.

 

The Company extends credit to customers who consist principally of microelectronics systems companies in the United States, Europe and Asia. The Company generally does not require collateral or other security as a condition of sale rather relying on credit approval, balance limitation and monitoring procedures to control credit risk of trade accounts receivable. The Company also maintains a credit insurance policy covering most of its non-US customers to further mitigate credit risk. Management conducts on-going credit evaluations of its customers, and historically the Company has not experienced any significant credit-related losses with respect to its trade accounts receivable.

 

Revenues from significant customers as a percentage of total revenues in 2023 and 2022 were as follows:

 

  

Percent of Total Revenues

 
         

Significant Customer

 

2023

  

2022

 

A

  33%  21%

B

  18%  15%

C

  9%  17%

 

 

 

As of December 30, 2023, the Company had trade accounts receivable due from these three customers that accounted for 50% of total trade accounts receivable as of that date. To further mitigate the potential for credit losses the Company has acquired a credit insurance policy covering most of our sales to non-US accounts.  Management believes that any credit risks have been properly provided for in the accompanying financial statements.

 

The Company’s revenue was derived from the following countries in 2023 and 2022:

 

  

Percent of Total Revenues

 
         

Country

 

2023

  

2022

 

United States of America

  56%  42%

Germany

  18%  16%

Other

  26%  42%

 

Many of the Company’s customers based in the United States conduct design, purchasing and payable functions in the United States, but manufacture overseas.

 

All of the Company’s long-lived assets and operations are located in the United States.

  

 

(12) Net Income Per Share

 

The following reconciles the basic and diluted net income per share calculations.

 

  

Dec. 30,

  

Dec. 31,

 
  

2023

  

2022

 

Basic EPS Computation:

        

Numerator:

        

Net income

 $1,370,296  $2,131,400 

Denominator:

        

Weighted average

        

Common shares

        

Outstanding

  14,495,709   14,424,381 

Basic EPS

 $0.09  $0.15 

Diluted EPS Computation:

        

Numerator:

        

Net income

 $1,370,296  $2,131,400 

Denominator:

        

Weighted average

        

Common shares

        

Outstanding

  14,495,709   14,424,381 

Dilutive effect of stock options

  133,102   251,265 
         

Total shares

  14,628,811   14,675,646 
         

Diluted net income per share

 $0.09  $0.15 

  

 

(13) Commitments and Contingencies

 

We are subject to contingencies, including legal proceedings and claims arising in the normal course of business that cover a wide range of matters including, among others, contract and employment claims; workers compensation claims; product liability; warranty and modification; and adjustment or replacement of units sold.

 

Direct costs associated with the estimated resolution of contingencies are accrued at the earliest date at which it is deemed probable that a liability has been incurred and the amount of such liability can be reasonably estimated. While it is impossible to ascertain the ultimate legal and financial liability with respect to contingent liabilities, including lawsuits, we believe that the aggregate amount of such liabilities, if any, in excess of amounts provided or covered by insurance, will not have a material adverse effect on the consolidated financial position or results of operations. It is possible, however, that future results of operations for any particular future period could be materially affected by changes in our assumptions or strategies related to these contingencies or changes out of our control.

 

Notwithstanding the above, the Company has received a letter from an attorney representing a former European sales representative alleging that under European law the representative is entitled to compensation as a result of his termination. The Company completely disagrees with the claims. Should this result in litigation the Company will defend itself to the fullest extent of the law and estimates any losses incurred to be immaterial.

    

 

 
EX-23.1 2 ex_638760.htm EXHIBIT 23.1 ex_638760.htm

 

EXHIBIT 23.1

 

 

 

Consent of Independent Registered Public Accounting Firm

 

 

We consent to the incorporation by reference in Registration Statements (Nos. 333-163553, 333-129620, 333-204211 and 333-254721) on Form S-8 and Registration Statements (Nos. 333-208091, 333-255373) on Form S-3 of CPS Technologies Corporation (the Company) of our report dated March 13, 2024, relating to the financial statements of the Company, appearing in this Annual Report on Form 10-K of CPS Technologies Corporation for the year ended December 30, 2023.

 

/s/ Wolf & Company, P.C.

 

Boston, Massachusetts
March 13, 2024

 

 

 

 
EX-31.1 3 ex_638762.htm EXHIBIT 31.1 ex_638762.htm

EXHIBIT 31.1

Certification Pursuant to Exchange Act
Rule 13a-14(a), as Adopted Pursuant to Section 302 of the
Sarbanes-Oxley Act of 2002

 

I, Brian T. Mackey, President and Chief Executive Officer, certify that:

 

1. I have reviewed this annual report on Form 10K of CPS Technologies Corp.;

 

2. Based on my knowledge, this annual 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 annual report;

 

3. Based on my knowledge, the financial statements, and other financial information included in this annual 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 annual report.

 

4. The registrant`s other certifying officers and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15e and 15d-15e) 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 annual 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 annual 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 fourth fiscal quarter that has materially affected, or is reasonably likely to materially affect, the registrant`s internal control over financial reporting.

 

5. The registrant`s other certifying officers 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 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 controls over financial reporting.

 

Dated: March 13, 2024

/s/ Brian T. Mackey
Brian T. Mackey
President and Chief Executive Officer

 

EX-31.2 4 ex_638763.htm EXHIBIT 31.2 ex_638763.htm

EXHIBIT 31.2

Certification Pursuant to Exchange Act
Rule 13a-14(a), as Adopted Pursuant to Section 302 of the
Sarbanes-Oxley Act of 2002

 

I, Charles K. Griffith Jr., Chief Financial Officer, certify that:

 

1. I have reviewed this annual report on Form 10K of CPS Technologies Corp.;

 

2. Based on my knowledge, this annual 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 annual report;

 

3. Based on my knowledge, the financial statements, and other financial information included in this annual 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 annual report.

 

4. The registrant`s other certifying officers and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15e and 15d-15e) 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 annual 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 annual 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 fourth fiscal quarter that has materially affected, or is reasonably likely to materially affect, the registrant`s internal control over financial reporting.

 

5. The registrant`s other certifying officers 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 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 controls over financial reporting.

 

Dated: March 13, 2024

/s/ Charles K. Griffith Jr.
Charles K. Griffith Jr.
Chief Financial Officer

 

 

EX-32.1 5 ex_638764.htm EXHIBIT 32.1 ex_638764.htm

EXHIBIT 32.1

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

 

In connection with the annual report on Form 10K of CPS Technologies Corporation (the "Company") for the period ended December 30, 2023, as filed with the Securities and Exchange Commission on the date hereof (the "Report"), each of the undersigned officers of the Company, hereby certifies, pursuant to 18 U.S.C. Section 1350, that:

 

 

1.

the Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and

 

 

2.

the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.

 

Dated: March 13, 2024

 

/s/ Brian T. Mackey
Brian T. Mackey
Chief Executive Officer and President

 

/s/ Charles K. Griffith Jr.
Charles K Griffith Jr.
Chief Financial Officer

 

 

EX-97 6 ex_638800.htm EXHIBIT 97 ex_638800.htm

Exhibit 97

CPS Technologies Corp.

Policy for Recovery of Erroneously Awarded Compensation

 

The Board of Directors (“Board”) of CPS Technologies Corp. (“CPS” or the “Company”) has adopted this Policy in order to maintain a culture of focused, diligent and responsible management, which discourages conduct detrimental to the growth of the Company and to ensure that incentive-based compensation (“Incentive Based Compensation”) paid by the Company is based upon accurate financial data.

This Policy applies in the event of a material restatement (“Restatement”) of the Company’s financial results because of material non-compliance with financial reporting requirements. This Policy does not apply in any situation where a Restatement is not as a result of significant non-compliance with financial reporting requirements, such as, but not limited to, a retrospective: (i) application of a change in accounting principles; (ii) revision to reportable segment information due to a change in the structure of the Company’s internal organization; (iii) reclassification due to a discontinued operation; (iv) application of a change in reporting entity, such as from a reorganization of entities under common control; (v) adjustment to provision amounts in connection with a prior business combination; and (vi) revision for stock splits, (collectively the “Restatement Exclusions”).

The “executive officers” of the Company whose Incentive-Based Compensation is covered by this Policy include the Company’s Chief Executive Officer, President, Chief Financial Officer, Controller, any Vice-President of the Company in charge of a principal business unit, division or function, and any other officer or person who performs a significant policy-making function for the Company (the “Executive Officers”). All of these Executive Officers are subject to this Policy, even if an Executive Officer had no responsibility for the financial statement errors which required restatement.

Incentive-Based Compensation includes any compensation, including cash and equity, which is granted, earned or vested based wholly or in part upon the attainment of any “financial reporting measure”. Financial reporting measures are those that are determined and presented in accordance with the accounting principles used in preparing the Company’s financial statements and any measures derived wholly or in part from such financial information. Incentive-Based Compensation is deemed “received” in the fiscal period during which the applicable financial reporting measure (as specified in the terms of the award) is attained, even if the payment or grant occurs after the end of that fiscal period. At the time of the award of Incentive-Based Compensation by the Company to any Executive Officer(s), the Company shall identify in writing to said Executive Officer(s), what, if any, portion of the Incentive-Based Compensation awarded to the Executive Officer(s) is based upon the attainment of any financial reporting measure.

Incentive-Based Compensation does not include base annual salary, compensation which is awarded based purely on service to the Company (e.g. a time-vested award, including time-vesting stock options or restricted share rights) or compensation which is awarded solely at the discretion of the Board, nor does it include compensation which is awarded based on subjective standards, strategic measures (e.g. completion of an acquisition) or operational measures (e.g. attainment of a certain manufacturing goals).

This Policy applies to any Incentive-Based Compensation paid to an Executive Officer during any of the three (3) fiscal completed years immediately preceding the date the Company is required to restate its financial results (the “Clawback Period”), meaning the earlier of:

A) the date that the Company’s Board (or a Board committee or authorized officer, if Board action is not required) concludes that the Company’s previously issued financial statements contain a material error; or

B) the date on which a court, regulator or other similarly authorized body causes the Company to restate its financial information to correct a material error.

The recoverable amount under this Policy is “the amount of Incentive-Based Compensation received by the Executive Officer or former Executive Officer that exceeds the amount of Incentive-Based Compensation that otherwise would have been received had it been determined based on the Restatement” (the “Recoverable Amount”). Applying this definition, after a Restatement, the Company will recalculate the applicable financial reporting measure and the amount of Incentive-Based Compensation based thereon for the applicable period(s). The Company will determine whether, based on that financial reporting measure as calculated relying on the original financial statements, an Executive Officer or former Executive Officer received a greater amount of Incentive-Based Compensation than would have been received applying the recalculated financial measure. Where Incentive-Based Compensation is based only in part on the achievement of a financial reporting measure performance goal, the Company will determine the portion of the original Incentive-Based Compensation based on or derived from the financial reporting measure which was restated and will recalculate the affected portion based on the financial reporting measure as restated to determine the difference between the greater amount based on the original financial statements and the lesser amount that would have been received based on the Restatement.

The Recoverable Amounts will be calculated on a pre-tax basis to ensure that the Company recovers the full amount of Incentive-Based Compensation that was erroneously awarded. If equity compensation is recoverable due to being granted to the Executive Officer (when the accounting results were the reason the equity compensation was granted) or vested by the Executive Officer (when the accounting results were the reason the equity compensation was vested), in each case in the Clawback Period, the Company will recover the excess portion of the equity award that would not have been granted or vested based on the Restatement, as follows:

i. if the equity award is still outstanding, the Executive Officer will forfeit the excess portion of the award;

ii. if the equity award has been exercised or settled into shares (the “Underlying Shares”), and the Executive Officer still holds the Underlying Shares, the Company will recover the number of Underlying Shares relating to the excess portion of the award (less any exercise price paid for the Underlying Shares); and

iii. if the Underlying Shares have been sold by the Executive Officer, the Company will recover the proceeds received by the Executive Officer from the sale of the Underlying Shares relating to the excess portion of the award (less any exercise price paid for the Underlying Shares).

The Board will take such action as it deems appropriate, in its sole and absolute discretion, to accomplish prompt recovery of the Recoverable Amount. Given that the Recoverable Amount must be calculated by the Company on a pre-tax basis, the Board will recover:

i. firstly, the post-tax portion of the Recoverable Amount received by the Executive Officer; then

ii. that portion of the Recoverable Amount which represents the tax paid by the Executive, once that amount is recovered by the Executive.

The Company is obliged to promptly recover erroneously paid Incentive-Based Compensation from its Executive Officers, except under two limited circumstances:

i. if the Company determines that it would be impracticable to recover the excess compensation from an Executive Officer because the direct costs of enforcing recovery would exceed the Recoverable Amount; or

ii. if the recovery of the Incentive-Based Compensation would violate the home country laws of the Company.

Indirect costs of recovery are not to be considered in making this evaluation. The Board does have discretion as to the manner in which recovery is affected, as long as it is reasonably prompt, including a deferred repayment plan.

In no event shall the Company be required to award Executive Officers an additional payment if the restated or accurate financial results would have resulted in a higher incentive compensation payment.

This Policy may be amended by the Board from time to time. Changes to this Policy will be communicated to all persons to whom this Policy applies.

The provisions of this Policy are intended to be applied to the fullest extent of the law; provided however, to the extent that any provisions of this Policy are found to be unenforceable or invalid under any applicable law, such provision will be applied to the maximum extent permitted, and shall automatically be deemed amended in a manner consistent with its objectives to the extent necessary to conform to any limitations required under applicable law.

This Policy is in addition to (and not in lieu of ) any right of repayment, forfeiture or right of offset against any Executive Officer that is required pursuant to any statutory repayment requirement (regardless of whether implemented at any time prior to or following the adoption of this Policy).

Nothing in this Policy in any way detracts from or limits any obligation that those subject to it have in law or pursuant to a management, employment, consulting or other agreement with the Company or any of its Subsidiaries.

All determinations and decisions made by the Board (or committee) pursuant to the provisions of this Policy shall be final, conclusive and binding on the Company and the persons to whom this Policy applies.

Executive Officers (as defined above) are required to annually acknowledge that they have read this Policy.

If you have questions about the interpretation of this Policy, please contact the Company’s Chief Financial Officer, Chuck Griffith.

APPROVED by the Board of Directors of CPS Technologies Corp. on July 12, 2023.

 

 

EX-101.SCH 7 cpsh-20231230.xsd XBRL TAXONOMY EXTENSION SCHEMA 000 - Document - Document And Entity Information link:calculationLink link:definitionLink link:presentationLink 001 - Statement - Balance Sheets link:calculationLink link:definitionLink link:presentationLink 002 - Statement - Balance Sheets (Parentheticals) link:calculationLink link:definitionLink link:presentationLink 003 - Statement - Statements of Operations link:calculationLink link:definitionLink link:presentationLink 004 - Statement - Statements of Stockholders' Equity link:calculationLink link:definitionLink link:presentationLink 005 - Statement - Statements of Cash Flows link:calculationLink link:definitionLink link:presentationLink 006 - Disclosure - Cybersecurity link:calculationLink link:definitionLink link:presentationLink 995453 - Disclosure - Note 1 - Nature of Business link:calculationLink link:definitionLink link:presentationLink 995454 - Disclosure - Note 2 - Summary of Significant Accounting Policies link:calculationLink link:definitionLink link:presentationLink 995455 - Disclosure - Note 3 - Inventories link:calculationLink link:definitionLink link:presentationLink 995456 - Disclosure - Note 4 - Leases link:calculationLink link:definitionLink link:presentationLink 995457 - Disclosure - Note 5 - Share-based Compensation Plans link:calculationLink link:definitionLink link:presentationLink 995458 - Disclosure - Note 6 - Accrued Expenses link:calculationLink link:definitionLink link:presentationLink 995459 - Disclosure - Note 7 - Revolving Line of Credit link:calculationLink link:definitionLink link:presentationLink 995460 - Disclosure - Note 8 - Notes Payable link:calculationLink link:definitionLink link:presentationLink 995461 - Disclosure - Note 9 - Income Taxes link:calculationLink link:definitionLink link:presentationLink 995462 - Disclosure - Note 10 - Retirement Savings Plan link:calculationLink link:definitionLink link:presentationLink 995463 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information link:calculationLink link:definitionLink link:presentationLink 995464 - Disclosure - Note 12 - Net Income (Loss) Per Share link:calculationLink link:definitionLink link:presentationLink 995465 - Disclosure - Note 13 - Commitments and Contingencies link:calculationLink link:definitionLink link:presentationLink 995466 - Disclosure - Significant Accounting Policies (Policies) link:calculationLink link:definitionLink link:presentationLink 995467 - Disclosure - Note 3 - Inventories (Tables) link:calculationLink link:definitionLink link:presentationLink 995468 - Disclosure - Note 4 - Leases (Tables) link:calculationLink link:definitionLink link:presentationLink 995469 - Disclosure - Note 5 - Share-based Compensation Plans (Tables) link:calculationLink link:definitionLink link:presentationLink 995470 - Disclosure - Note 6 - Accrued Expenses (Tables) link:calculationLink link:definitionLink link:presentationLink 995471 - Disclosure - Note 8 - Notes Payable (Tables) link:calculationLink link:definitionLink link:presentationLink 995472 - Disclosure - Note 9 - Income Taxes (Tables) link:calculationLink link:definitionLink link:presentationLink 995473 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information (Tables) link:calculationLink link:definitionLink link:presentationLink 995474 - Disclosure - Note 12 - Net Income (Loss) Per Share (Tables) link:calculationLink link:definitionLink link:presentationLink 995475 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995476 - Disclosure - Note 3 - Inventories - Inventories (Details) link:calculationLink link:definitionLink link:presentationLink 995477 - Disclosure - Note 4 - Leases (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995478 - Disclosure - Note 4 - Leases - Capitalized Operating Leases (Details) link:calculationLink link:definitionLink link:presentationLink 995479 - Disclosure - Note 4 - Leases - Costs (Details) link:calculationLink link:definitionLink link:presentationLink 995480 - Disclosure - Note 5 - Share-based Compensation Plans (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995481 - Disclosure - Note 5 - Share-based Compensation Plans - Stock Option Activity (Details) link:calculationLink link:definitionLink link:presentationLink 995482 - Disclosure - Note 5 - Share-based Compensation Plans - Annualized Weighted Average Values of Significant Assumptions Used to Estimate Fair Values (Details) link:calculationLink link:definitionLink link:presentationLink 995483 - Disclosure - Note 6 - Accrued Expenses (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995484 - Disclosure - Note 6 - Accrued Expenses - Accrued Expenses (Details) link:calculationLink link:definitionLink link:presentationLink 995485 - Disclosure - Note 7 - Revolving Line of Credit (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995486 - Disclosure - Note 8 - Notes Payable (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995487 - Disclosure - Note 8 - Note Payable - Note Payable Maturities (Details) link:calculationLink link:definitionLink link:presentationLink 995488 - Disclosure - Note 9 - Income Taxes (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995489 - Disclosure - Note 9 - Income Taxes - Components of Income Tax Expense (Benefit) (Details) link:calculationLink link:definitionLink link:presentationLink 995490 - Disclosure - Note 9 - Income Taxes - Components of Net Deferred Tax Assets (Details) link:calculationLink link:definitionLink link:presentationLink 995491 - Disclosure - Note 9 - Income Taxes - Summary of Changes in Deferred Tax Asset (Details) link:calculationLink link:definitionLink link:presentationLink 995492 - Disclosure - Note 9 - Income Taxes - Effective Income Tax Rate Reconciliation for Computed Income Tax Expense (Benefit) (Details) link:calculationLink link:definitionLink link:presentationLink 995493 - Disclosure - Note 10 - Retirement Savings Plan (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995494 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995495 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Significant Customers as a Percentage of Total Revenues (Details) link:calculationLink link:definitionLink link:presentationLink 995496 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Revenue by Geographical Location (Details) link:calculationLink link:definitionLink link:presentationLink 995497 - Disclosure - Note 12 - Net Income (Loss) Per Share - Basic and Diluted Earnings Per Share (Details) link:calculationLink link:definitionLink link:presentationLink EX-101.CAL 8 cpsh-20231230_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE EX-101.DEF 9 cpsh-20231230_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE EX-101.LAB 10 cpsh-20231230_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE Document And Entity Information Expected dividend yield Note To Financial Statement Details Textual Significant Accounting Policies Note 3 - Inventories Tax at statutory rate Note 4 - Leases Risk-free interest rate (Rate) Note 5 - Share-based Compensation Plans Note 6 - Accrued Expenses Note 8 - Notes Payable Note 9 - Income Taxes Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information Note 12 - Net Income (Loss) Per Share Income Tax Disclosure [Text Block] Note 3 - Inventories - Inventories (Details) Note 4 - Leases - Capitalized Operating Leases (Details) Note 4 - Leases - Costs (Details) Expected volatility Note 5 - Share-based Compensation Plans - Stock Option Activity (Details) Note 5 - Share-based Compensation Plans - Annualized Weighted Average Values of Significant Assumptions Used to Estimate Fair Values (Details) us-gaap_LiabilitiesCurrent Total current liabilities Schedule of Maturities of Long-Term Debt [Table Text Block] Note 6 - Accrued Expenses - Accrued Expenses (Details) Note 8 - Note Payable - Note Payable Maturities (Details) Note 9 - Income Taxes - Components of Income Tax Expense (Benefit) (Details) Note 9 - Income Taxes - Components of Net Deferred Tax Assets (Details) Expected life in years (Year) Note 9 - Income Taxes - Summary of Changes in Deferred Tax Asset (Details) Note 9 - Income Taxes - Effective Income Tax Rate Reconciliation for Computed Income Tax Expense (Benefit) (Details) Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Significant Customers as a Percentage of Total Revenues (Details) Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Revenue by Geographical Location (Details) Note 12 - Net Income (Loss) Per Share - Basic and Diluted Earnings Per Share (Details) Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block] Notes To Financial Statements Notes To Financial Statements [Abstract] Share-Based Payment Arrangement, Activity [Table Text Block] Rockland Trust Company [Member] Represents Rockland Trust Company. Notes payable, current portion Options exercisable, weighted average exercise price (in dollars per share) Options exercisable, weighted remaining contractual life (Year) Options exercisable, Aggregate intrinsic value Options exercisable, shares (in shares) Outstanding, weighted remaining contractual life (Year) Outstanding, Aggregate intrinsic value Weighted average fair value of grants (in dollars per share) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice Outstanding, weighted average exercise price (in dollars per share) Outstanding, weighted average exercise price (in dollars per share) us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent Accounts Payable and Accrued Liabilities, Current Forfeited, weighted average exercise price (in dollars per share) Deferred revenue Expired, weighted average exercise price (in dollars per share) Granted, weighted average exercise price (in dollars per share) Exercised, weighted average exercise price (in dollars per share) Accrued expenses Lessee, Operating Leases [Text Block] Accounts payable Revolving Credit Facility [Member] us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber Outstanding, shares (in shares) Outstanding, shares (in shares) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod Expired, shares (in shares) Credit Facility [Axis] Proceeds from sale of property and equipment Credit Facility [Domain] Accrued payroll and related costs us-gaap_PolicyTextBlockAbstract Accounting Policies Customer A [Member] Represents significant customer A. Customer B [Member] Represents significant customer B. Customer C [Member] Represents significant customer C. cpsh_NumberOfMajorCustomers Number of Major Customers Represents the number of major customers accounting for 10% or more of the specified concentration risk benchmark, which includes, but not limited to, sales revenue, accounts receivable, etc. us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant (in shares) Net exercise of stock options Accrued legal and accounting Summary Schedule of Deferred Tax Assets and Liabilities [Table Text Block] Tabular disclosure of the summary 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. Other Country [Member] Represents other country. us-gaap_PaymentsToAcquirePropertyPlantAndEquipment Purchases of property and equipment us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period (Year) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized (in shares) Significant Customers A, B, and C [Member] Represents significant customers A, B, and C. us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year) Grantee Status [Domain] Grantee Status [Axis] Cash paid for income taxes Current liabilities: us-gaap_Assets Total assets Plan Name [Axis] Plan Name [Domain] Property and equipment: us-gaap_OperatingLeaseExpense Operating Lease, Expense us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year) Deferred taxes, net Share-Based Payment Arrangement [Text Block] Business Description and Basis of Presentation [Text Block] Award Type [Domain] Award Type [Axis] Net income Net income Share-Based Payment Arrangement, Option [Member] Commitments and Contingencies Disclosure [Text Block] us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment Accumulated depreciation and amortization us-gaap_PropertyPlantAndEquipmentNet Net property and equipment us-gaap_PropertyPlantAndEquipmentGross Property, Plant and Equipment, Gross, Ending Balance Total cost Production equipment Furniture and office equipment Leasehold improvements us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables Allowance for Doubtful Accounts, Premiums and Other Receivables Cash flows from investing activities: Earnings Per Share [Text Block] us-gaap_IncreaseDecreaseInAccruedLiabilities Accrued expenses Income tax provision (benefit) Total us-gaap_IncreaseDecreaseInAccountsPayable Accounts payable GERMANY us-gaap_DefinedContributionPlanCostRecognized Defined Contribution Plan, Cost us-gaap_DebtInstrumentTerm Debt Instrument, Term (Year) us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay Cash and cash equivalents us-gaap_AllocatedShareBasedCompensationExpense Share-Based Payment Arrangement, Expense Amendment Flag City Area Code Use of Estimates, Policy [Policy Text Block] us-gaap_DebtInstrumentPeriodicPayment Debt Instrument, Periodic Payment, Total New Accounting Pronouncements, Policy [Policy Text Block] Reclassification, Comparability Adjustment [Policy Text Block] us-gaap_GainLossOnSaleOfPropertyPlantEquipment Gain on sale of property and equipment us-gaap_IncreaseDecreaseInContractWithCustomerLiability Deferred revenue us-gaap_SharesOutstanding Balance (in shares) Balance (in shares) Common stock, outstanding shares (in shares) Current Fiscal Year End Date us-gaap_DebtInstrumentInterestRateStatedPercentage Debt Instrument, Interest Rate, Stated Percentage Weighted-average discount rate for capitalized operating leases Fiscal Period, Policy [Policy Text Block] Document Fiscal Period Focus Document Fiscal Year Focus us-gaap_IncreaseDecreaseInDeferredIncomeTaxes Deferred taxes Lease, Cost [Table Text Block] Document Period End Date Weighted-average remaining lease term for capitalized operating leases (in months) (Year) Entity File Number Entity Emerging Growth Company Document Type Entity Small Business Entity Shell Company Document Information [Line Items] Document Information [Table] us-gaap_AreaOfRealEstateProperty Area of Real Estate Property (Square Foot) Entity Public Float Entity Filer Category Debt Instrument [Axis] Entity Current Reporting Status Debt Instrument, Name [Domain] Entity Voluntary Filers Entity Well-known Seasoned Issuer us-gaap_IncreaseDecreaseInOtherReceivables Accounts receivable – other us-gaap_ImpairmentOfLongLivedAssetsHeldForUse Impairment, Long-Lived Asset, Held-for-Use, Total A Concentration Risk, Percentage us-gaap_IncreaseDecreaseInAccountsReceivable Accounts receivable – trade Share-based compensation expense Entity Tax Identification Number Entity Central Index Key Entity Registrant Name Entity [Domain] Customer Concentration Risk [Member] Legal Entity [Axis] Entity Address, Address Line One ecd_NonRule10b51ArrTrmntdFlag Non-Rule 10b5-1 Arrangement Terminated [Flag] Entity Address, City or Town ecd_Rule10b51ArrTrmntdFlag Rule 10b5-1 Arrangement Terminated [Flag] Geographic Concentration Risk [Member] ecd_Rule10b51ArrAdoptedFlag Rule 10b5-1 Arrangement Adopted [Flag] Entity Address, Postal Zip Code Supplemental cash flow information: Entity Address, State or Province ecd_NonRule10b51ArrAdoptedFlag Non-Rule 10b5-1 Arrangement Adopted [Flag] Concentration Risk Type [Axis] Material Terms of Trading Arrangement [Text Block] Concentration Risk Type [Domain] us-gaap_TreasuryStockValue Less cost of 82,272 and 10,016 common shares repurchased at December 30, 2023 and December 31, 2022, respectively Entity Common Stock, Shares Outstanding Revenue Benchmark [Member] Accounts Receivable [Member] Long-Term Debt [Text Block] us-gaap_IncreaseDecreaseInInventories Inventories Trading Symbol Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Domain] us-gaap_LineOfCreditFacilityInterestRateDuringPeriod Line of Credit Facility, Interest Rate During Period Local Phone Number us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity Line of Credit Facility, Remaining Borrowing Capacity Employee option exercises (in shares) Exercised, shares (in shares) us-gaap_TableTextBlock Notes Tables us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity Line of Credit Facility, Maximum Borrowing Capacity Employee option exercises Selling, general, and administrative expenses us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross Granted (in shares) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod Forfeited, shares (in shares) Line of Credit Facility, Lender [Domain] Lender Name [Axis] us-gaap_LiabilitiesAndStockholdersEquity Total liabilities and stockholders’ equity UNITED STATES Changes in operating assets and liabilities: Accumulated deficit Debt Disclosure [Text Block] us-gaap_InterestExpense Interest Expense us-gaap_InterestExpenseDebt Interest Expense, Debt us-gaap_DisclosureTextBlockAbstract Notes to Financial Statements Inventory Disclosure [Text Block] Long-term lease liability Schedule of Inventory, Current [Table Text Block] Present value of operating lease liability Total operating lease liability Current lease liability Retirement Benefits [Text Block] Right-of-use lease asset us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue Total undiscounted operating lease payments us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount Less: Imputed interest 2025 2026 2024 Segment Reporting, Policy [Policy Text Block] Share-Based Payment Arrangement, Employee [Member] Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block] Share-based compensation Earnings Per Share, Policy [Policy Text Block] Income Tax, Policy [Policy Text Block] Depreciation and amortization us-gaap_AssetsCurrent Total current assets Share-Based Payment Arrangement [Policy Text Block] Treasury stock, shares (in shares) cpsh_LongTermDebtMaturitiesRepaymentsOfPrincipalInterest Less Interest Represents interest related to long term debt maturities repayments of principal. Deferred tax benefit (provision) cpsh_DeferredTaxAssetsEffectOfDeferredTaxExpense Amount before allocation of valuation allowances of deferred tax asset attributable to the effect of deferred tax expense. Common stock, $0.01 par value, authorized 20,000,000 shares; issued 14,601,487 and 14,460,486 shares; outstanding 14,519,215 and 14,450,470; at December 30, 2023 and December 31, 2022, respectively Adjustments to reconcile net income to cash provided by operating activities: Common stock, authorized shares (in shares) Common stock, issued shares (in shares) Common stock, par value (in dollars per share) cpsh_EmployeeRetentionTaxCredit Employee Retention Tax Credit Carrying amount as of the balance sheet date of the amount of employee retention tax credit. Accounts Receivable and Other Income [Member] Accounts Receivable and Other Income. Statistical Measurement [Domain] Maximum [Member] Supplemental disclosures of non-cash activity: Minimum [Member] us-gaap_DeferredTaxAssetsNet Net deferred tax assets Statistical Measurement [Axis] us-gaap_DeferredTaxAssetsLiabilitiesNet Balance at end of year, net Cash paid for interest Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block] Other Geographical [Axis] us-gaap_DeferredTaxAssetsGross Gross deferred tax balance at beginning of year Geographical [Domain] Inventories Total Work in process us-gaap_InventoryValuationReserves Reserve for obsolescence Finished goods Customer [Axis] Inventory Customer [Domain] us-gaap_InventoryGross Gross Inventory us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment Depreciation us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment Other Inventory, Materials, Supplies and Merchandise under Consignment, Gross Raw materials Accrued liabilities us-gaap_PropertyPlantAndEquipmentUsefulLife Property, Plant and Equipment, Useful Life (Year) Interest income (expense) Cash flows from operating activities: Accounts receivable-other Revenue [Policy Text Block] Statement [Line Items] us-gaap_NumberOfOperatingSegments Number of Operating Segments Accounts receivable-trade, net Stock compensation Additional paid-in capital Stockholders’ Equity: Property, Plant and Equipment, Policy [Policy Text Block] Long-Lived Tangible Asset [Axis] Other income (expense) Long-Lived Tangible Asset [Domain] Credit carryforwards Net operating loss carryforwards Capitalized R&D, net Current assets: us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations Cash and cash equivalents at beginning of year Cash and cash equivalents at end of year Inventory, Policy [Policy Text Block] us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect Net increase in cash and cash equivalents Deferred Tax Assets: us-gaap_NetCashProvidedByUsedInFinancingActivities Net cash provided (used) by financing activities us-gaap_Liabilities Total liabilities Commitments & Contingencies us-gaap_OperatingIncomeLoss Income from operations us-gaap_NetCashProvidedByUsedInOperatingActivities Net cash provided by operating activities us-gaap_NetCashProvidedByUsedInInvestingActivities Net cash used by investing activities Prepaid expenses and other current assets us-gaap_GrossProfit Gross margin Cost of product sales Retained Earnings [Member] Proceeds from employee stock options Product sales us-gaap_CurrentStateAndLocalTaxExpenseBenefit State, current State, deferred us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit Treasury Stock, Common [Member] Additional Paid-in Capital [Member] us-gaap_CurrentFederalTaxExpenseBenefit Federal, current Common Stock [Member] Federal, deferred us-gaap_DeferredFederalIncomeTaxExpenseBenefit us-gaap_IncomeTaxExaminationPenaltiesAndInterestAccrued Income Tax Examination, Penalties and Interest Accrued, Total Deferred: us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit Deferred income tax provision (benefit), net Equity Components [Axis] Equity Component [Domain] Current: us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit Current income tax provision (benefit): us-gaap_LongTermDebt Total Principal Payments us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest Income before income tax ICFR Auditor Attestation Flag us-gaap_LineOfCredit Long-term Line of Credit, Total Income Tax Authority, Name [Axis] Income Tax Authority, Name [Domain] Internal Revenue Service (IRS) [Member] Income Tax Authority [Axis] Income Tax Authority [Domain] Domestic Tax Authority [Member] Document Annual Report Accounts Receivable [Policy Text Block] Cash and Cash Equivalents, Policy [Policy Text Block] Balance Sheet Location [Axis] Balance Sheet Location [Domain] Entity Incorporation, State or Country Code Accounting Policies [Abstract] Significant Accounting Policies [Text Block] Document Transition Report Document Financial Statement Error Correction [Flag] Concentration Risk Disclosure [Text Block] Schedules of Concentration of Risk, by Risk Factor [Table Text Block] Entity Interactive Data Current Security Exchange Name Title of 12(b) Security Massachusetts Business Development Corporation [Member] Related to Massachusetts Business Development Corporation. Sonoscan Ultrasound Microscope [Member] Related to Sonoscan Ultrasound Microscope. Auditor Name Accrued other Microscope Note Payable [Member] Related to Microscope note payable. Auditor Firm ID Auditor Location Dilutive effect of stock options (in shares) us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment us-gaap_RepaymentsOfNotesPayable Payment on notes payable Weighted average number of diluted common shares outstanding (in shares) Total shares (in shares) Statement [Table] Statement of Financial Position [Abstract] Diluted net income per share (in dollars per share) Net income (loss) per diluted common share (in dollars per share) Weighted average common shares outstanding (in shares) Weighted average number of basic common shares outstanding (in shares) Accounts Payable and Accrued Liabilities Disclosure [Text Block] Diluted EPS Computation: Basic EPS (in dollars per share) Net income (loss) per basic common share (in dollars per share) Basic EPS Computation: Statement of Cash Flows [Abstract] Lease Contractual Term [Domain] Statement of Stockholders' Equity [Abstract] Lease Contractual Term [Axis] Income Statement [Abstract] Revenue from External Customers by Geographic Areas [Table Text Block] Schedule of Accrued Liabilities [Table Text Block] FY 2024 FY 2025 Construction in progress The amount of construction in progress, net. cpsh_DebtInstrumentTerminationPeriod Debt Instrument, Termination Period (Year) The termination period of a debt instrument. Schedule of Components of Income Tax Expense (Benefit) [Table Text Block] Schedule of Deferred Tax Assets and Liabilities [Table Text Block] Schedule of Effective Income Tax Rate Reconciliation [Table Text Block] cpsh_IncreaseDecreaseInPrepaidExpenseAndOtherCurrentAssets Prepaid expenses and other current assets The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services and other assets that bring economic benefits for future periods. Reserve for Potential Credits [Member] Represents reserve for potential credits. Cybersecurity [Text Block] The entire disclosure pertaining to cybersecurity. Other us-gaap_IncomeTaxReconciliationOtherAdjustments Cash flows from financing activities: us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent cpsh_InreaseInSalesReturnsForPartsOfCreditIssued Sales Returns, For Parts of Credit, Issued Represents sales returns for parts of which credit is issued. cpsh_UnrecognizedTaxBenefitsUncertainTaxPositions Unrecognized Tax Benefits, Uncertain Tax Positions Amount of unrecognized tax benefits resulting from uncertain tax position as of the reporting period. cpsh_ReservesForPotentialCreditToBeIssued Reserves for Potential Credit to be Issued Represents reserves for potential credit to be issued. Production Equipment [Member] Tangible personal property, as production equipment, used to produce goods and services. Furniture and Office Equipment [Member] Tangible personal property, as furniture and office equipment, used to produce goods and services. cpsh_ContractWithCustomerRebates Contract with Customer, Rebates Amount of revenue recognized from rebates offered in previous reporting periods. cpsh_OperatingLeaseRealEstateNumberOfLeases Operating Lease, Real Estate, Number of Leases The number of real estate operating leases. Norton Facility [Member] Represents the company's Norton facility. cpsh_LesseeOperatingLeaseMonthlyRentPayments Lessee, Operating Lease, Monthly Rent Payments The amount of monthly rent payments for lessee under operating lease. The 2020 Equity Incentive Plan [Member] Represents information for the 2020 Equity Incentive Plan adopted by the Company. Facility Two [Member] Represents lease expiration for facility two. Lease Expiration, December 2020 [Member] Represents lease expiration information. Deferred revenue – long term us-gaap_StockholdersEquity Total stockholders’ equity Balance Balance Class of Stock [Axis] Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Notes payable less current portion State tax, net of federal benefit EX-101.PRE 11 cpsh-20231230_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE XML 12 R1.htm IDEA: XBRL DOCUMENT v3.24.0.1
Document And Entity Information - USD ($)
12 Months Ended
Dec. 30, 2023
Feb. 12, 2024
Jul. 02, 2023
Document Information [Line Items]      
Entity Central Index Key 0000814676    
Entity Registrant Name CPS TECHNOLOGIES CORP/DE/    
Amendment Flag false    
Current Fiscal Year End Date --12-30    
Document Fiscal Period Focus FY    
Document Fiscal Year Focus 2023    
Document Type 10-K    
Document Annual Report true    
Document Period End Date Dec. 30, 2023    
Document Transition Report false    
Entity File Number 0-16088    
Entity Incorporation, State or Country Code DE    
Entity Tax Identification Number 04-2832509    
Entity Address, Address Line One 111 South Worcester Street    
Entity Address, City or Town Norton    
Entity Address, State or Province MA    
Entity Address, Postal Zip Code 02766-2102    
City Area Code 508    
Local Phone Number 222-0614    
Title of 12(b) Security Common Stock, $0.01 par value    
Trading Symbol CPSH    
Security Exchange Name NASDAQ    
Entity Well-known Seasoned Issuer No    
Entity Voluntary Filers No    
Entity Current Reporting Status Yes    
Entity Interactive Data Current Yes    
Entity Filer Category Non-accelerated Filer    
Entity Small Business true    
Entity Emerging Growth Company false    
ICFR Auditor Attestation Flag false    
Document Financial Statement Error Correction [Flag] false    
Entity Shell Company false    
Entity Public Float     $ 34,000,000
Entity Common Stock, Shares Outstanding   14,519,215  
Auditor Firm ID 392    
Auditor Name Wolf & Company, P.C.    
Auditor Location Boston, Massachusetts    
XML 13 R2.htm IDEA: XBRL DOCUMENT v3.24.0.1
Balance Sheets - USD ($)
Dec. 31, 2023
Dec. 30, 2023
Dec. 31, 2022
Current assets:      
Cash and cash equivalents   $ 8,813,626 $ 8,266,753
Accounts receivable-trade, net   4,389,155 3,777,975
Accounts receivable-other   83,191 685,668
Inventories   4,581,930 4,875,901
Prepaid expenses and other current assets   276,349 211,242
Total current assets   18,144,251 17,817,539
Property and equipment:      
Production equipment   11,271,982 10,770,427
Furniture and office equipment   952,883 952,883
Leasehold improvements   985,649 985,649
Total cost   13,210,514 12,708,959
Accumulated depreciation and amortization   (11,936,004) (11,446,901)
Construction in progress   281,629 64,910
Net property and equipment   1,556,139 1,326,968
Right-of-use lease asset   332,000 466,000
Deferred taxes, net   1,569,726 2,069,436
Total assets   21,602,116 21,679,943
Current liabilities:      
Notes payable, current portion $ 46,797   43,711
Accounts payable 2,535,086   1,836,865
Accrued expenses 1,075,137   820,856
Deferred revenue 251,755   2,521,128
Current lease liability 160,000 160,000 157,000
Total current liabilities 4,068,775   5,379,560
Notes payable less current portion 8,090   54,847
Deferred revenue – long term 31,277   231,020
Long-term lease liability 172,000 172,000 309,000
Total liabilities 4,280,142   5,974,427
Commitments & Contingencies  
Stockholders’ Equity:      
Common stock, $0.01 par value, authorized 20,000,000 shares; issued 14,601,487 and 14,460,486 shares; outstanding 14,519,215 and 14,450,470; at December 30, 2023 and December 31, 2022, respectively 146,015   144,605
Additional paid-in capital 40,180,893   39,726,851
Accumulated deficit (22,754,796)   (24,125,092)
Less cost of 82,272 and 10,016 common shares repurchased at December 30, 2023 and December 31, 2022, respectively (250,138)   (40,848)
Total stockholders’ equity 17,321,974 $ 17,321,974 15,705,516
Total liabilities and stockholders’ equity $ 21,602,116   $ 21,679,943
XML 14 R3.htm IDEA: XBRL DOCUMENT v3.24.0.1
Balance Sheets (Parentheticals) - $ / shares
Dec. 31, 2023
Dec. 31, 2022
Common stock, par value (in dollars per share) $ 0.01 $ 0.01
Common stock, authorized shares (in shares) 20,000,000 20,000,000
Common stock, issued shares (in shares) 14,601,487 14,460,486
Common stock, outstanding shares (in shares) 14,519,215 14,450,470
Treasury stock, shares (in shares) 82,272 10,016
XML 15 R4.htm IDEA: XBRL DOCUMENT v3.24.0.1
Statements of Operations - USD ($)
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Product sales $ 27,550,646 $ 26,586,926
Cost of product sales 20,725,237 19,285,846
Gross margin 6,825,409 7,301,080
Selling, general, and administrative expenses 5,126,046 5,066,660
Income from operations 1,699,363 2,234,420
Interest income (expense) 225,757 12,015
Other income (expense) 27,261 641,233
Income before income tax 1,952,381 2,887,668
Income tax provision (benefit) 582,085 756,268
Net income $ 1,370,296 $ 2,131,400
Net income (loss) per basic common share (in dollars per share) $ 0.09 $ 0.15
Weighted average number of basic common shares outstanding (in shares) 14,495,709 14,424,381
Net income (loss) per diluted common share (in dollars per share) $ 0.09 $ 0.15
Weighted average number of diluted common shares outstanding (in shares) 14,628,811 14,675,646
XML 16 R5.htm IDEA: XBRL DOCUMENT v3.24.0.1
Statements of Stockholders' Equity - USD ($)
Common Stock [Member]
Additional Paid-in Capital [Member]
Retained Earnings [Member]
Treasury Stock, Common [Member]
Total
Balance (in shares) at Dec. 25, 2021 14,350,786        
Balance at Dec. 25, 2021 $ 143,508 $ 39,281,810 $ (26,256,492) $ (2,515) $ 13,166,311
Share-based compensation expense   250,359     250,359
Employee option exercises (in shares) 109,700        
Employee option exercises $ 1,097 194,682   (38,333) 157,446
Net income     2,131,400   2,131,400
Balance (in shares) at Dec. 31, 2022 14,460,486        
Balance at Dec. 31, 2022 $ 144,605 39,726,851 (24,125,092) (40,848) 15,705,516
Share-based compensation expense $ 0 204,797 0 0 204,797
Employee option exercises (in shares) 141,001        
Employee option exercises $ 1,410 249,245 0 (209,290) 41,365
Net income $ 0 0 1,370,296 0 1,370,296
Balance (in shares) at Dec. 30, 2023 14,601,487        
Balance at Dec. 30, 2023 $ 146,015 $ 40,180,893 $ (22,754,796) $ (250,138) $ 17,321,974
XML 17 R6.htm IDEA: XBRL DOCUMENT v3.24.0.1
Statements of Cash Flows - USD ($)
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Cash flows from operating activities:    
Net income $ 1,370,296 $ 2,131,400
Adjustments to reconcile net income to cash provided by operating activities:    
Share-based compensation 204,797 250,359
Depreciation and amortization 489,103 445,739
Deferred taxes 499,710 754,542
Gain on sale of property and equipment 0 (3,400)
Changes in operating assets and liabilities:    
Accounts receivable – trade (611,180) 1,092,046
Accounts receivable – other 602,477 (685,668)
Inventories 293,971 (964,299)
Prepaid expenses and other current assets (65,107) 14,631
Accounts payable 698,221 (263,386)
Accrued expenses 254,281 (265,575)
Deferred revenue (2,469,116) 1,045,010
Net cash provided by operating activities 1,267,453 3,551,399
Cash flows from investing activities:    
Purchases of property and equipment (718,274) (439,772)
Proceeds from sale of property and equipment 0 3,400
Net cash used by investing activities (718,274) (436,372)
Cash flows from financing activities:    
Proceeds from employee stock options 41,365 157,446
Payment on notes payable (43,671) (56,032)
Net cash provided (used) by financing activities (2,306) 101,414
Net increase in cash and cash equivalents 546,873 3,216,441
Cash and cash equivalents at beginning of year 8,266,753 5,050,312
Cash and cash equivalents at end of year 8,813,626 8,266,753
Supplemental cash flow information:    
Cash paid for income taxes 111,456 456
Cash paid for interest 5,096 7,954
Supplemental disclosures of non-cash activity:    
Net exercise of stock options $ 209,290 $ 38,333
XML 18 R7.htm IDEA: XBRL DOCUMENT v3.24.0.1
Cybersecurity
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Cybersecurity [Text Block]

Item 1C. Cybersecurity 

 

Cybersecurity is an area of increasing concern to management of and investors in CPS. While CPS has been ITAR compliant for many years, that in itself does not completely mitigate the risks of a cybersecurity incident. The Company is currently also working towards full compliance with NIST 800-171. In working towards this goal, CPS has retained an outside consulting firm to work through this process and help us implement the policies, processes and procedures to further mitigate cybersecurity risks. CPS generally keeps all employee personally identifiable information with its payroll service provider. Each year the provider furnishes us with their SOC report which includes their cybersecurity policies and procedures.

 

Management is not aware of any previous cybersecurity incidents of any significance. Nevertheless, there is always a risk that a phishing attempt, ransomware or other attack by a bad actor could be successful. Although CPS is generally down the supply chain from prime contractors, the fact that we do work in the aerospace and defense industries does make us a potential target. Please refer to the risk factors titled “Manufacturing interruptions or delays could affect our ability to meet customer demand and lead to higher costs and If we are subject to cyber-attacks, we could incur substantial costs and, if such attacks are successful, we could incur significant liabilities, reputational harm, and disruption to our operations in “Risk Factors” in Part I, Item 1A of this Form 10-K for more information on the risks posed to us by cybersecurity threats. Based on information currently available, management does not believe that there is a reasonably likely risk of these issues, nevertheless the possibility of one occurring cannot be completely ruled out.

  

XML 19 R8.htm IDEA: XBRL DOCUMENT v3.24.0.1
Insider Trading Arrangements
12 Months Ended
Dec. 30, 2023
Insider Trading Arr Line Items  
Material Terms of Trading Arrangement [Text Block]

Item 9B. Other Information

 

The Company had no information required to be disclosed in a report on Form 8-K during the fourth quarter of the year covered by this Form 10-K that has not been so reported.

  

Rule 10b5-1 Arrangement Adopted [Flag] false
Non-Rule 10b5-1 Arrangement Adopted [Flag] false
Rule 10b5-1 Arrangement Terminated [Flag] false
Non-Rule 10b5-1 Arrangement Terminated [Flag] false
XML 20 R9.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 1 - Nature of Business
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Business Description and Basis of Presentation [Text Block]

(1) Nature of Business

 

CPS Technologies Corp. (the ‘Company’ or ‘CPS’) provides advanced material solutions to the transportation, automotive, energy, computing/internet, telecommunications, aerospace, defense and oil and gas end markets.

 

Our primary material solution is metal matrix composites.  We design, manufacture and sell custom metal matrix composite components which improve the performance and reliability of systems in these end markets.  

  

XML 21 R10.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 2 - Summary of Significant Accounting Policies
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Significant Accounting Policies [Text Block]

(2) Summary of Significant Accounting Policies

 

(2)(a) Cash and Cash Equivalents

 

The Company considers all highly liquid investments with a maturity of three months or less at the date of purchase to be cash equivalents.

 

(2)(b) Accounts Receivable

 

The Company reports its accounts receivable at the invoiced amount less an allowance for credit losses. The Company’s management provides appropriate provisions for uncollectible accounts based upon factors surrounding the credit risk and activity of specific customers, historical trends, economic conditions and other information to estimate future expected losses. Adjustments to the allowance are charged to operations in the period in which information becomes available that may affect the allowance.   The Company maintains an allowance for credit losses of $10,000 as of December 30, 2023 and December 31, 2022.

 

(2)(b)(1) Accounts Receivable-Other

 

As of December 30, 2023 this amount was primarily VAT paid by CPS, but due to be repaid by its European customers with future shipments. In 2022 the Company filed for the Employee Retention Tax Credit (ERTC) in the amount of $641,086.  This credit was still due from the Internal Revenue Service (“IRS”) on December 31, 2022 however was collected in 2023. 

 

(2)(c) Inventories

 

Inventories are stated at the lower of cost (cost is based on standard costs which approximate actual costs), as determined under the first-in, first-out method (FIFO), or net realizable value. A reserve for obsolete inventories is based on factors regarding the sales and usage of such inventories, including inventories manufactured for specific customers. The Company’s general obsolescence policy is to reserve against obsolete inventory when there has been no activity on a particular part for a twelve month period and there are no expected customer orders.

 

(2)(d) Property and Equipment

 

Property and equipment are stated at cost. Depreciation of equipment is calculated on a straight-line basis over the estimated useful life, generally five years for production equipment and three to five years for furniture and office equipment. Leasehold improvements are depreciated over the shorter of the lease term or their useful life. Maintenance and repairs are charged to expense as incurred. Upon retirement or sale, the cost and related accumulated depreciation or amortization are removed from their respective accounts. Any gains or losses on the disposition of property and equipment are included in the results of operations in the period in which they occur.

 

(2)(e) Impairment of Long-Lived Assets

 

The Company reviews long-lived assets for impairment whenever circumstances and situations change such that there is an indication that the carrying amounts may not be recovered. Recoverability is assessed based on estimated undiscounted future cash flows. As of December 30, 2023 and December 31, 2022, the Company believes that there has been no impairment of its long-lived assets.

 

(2)(f) Revenue Recognition

 

Revenue is recognized in accordance with the five-step method under Accounting Standards Codification (ASC) 606, “Revenue from Contracts with Customers.”

 

Identifying the Contract with the Customer

The Company identifies contracts with customers as agreements that create enforceable rights and obligations.  In the case of a few large customers the Company has executed long-term Master Sales Agreements (“MSA”).  These are umbrella agreements which typically define the terms and conditions under which a customer can order goods from CPS.  These in themselves do not constitute a contract as no products are committed to be transferred and the customer has no obligation to make payments. In the case of SBIRs an enforceable contract is signed by both the customer and CPS.

 

The Company contract is only enforceable once both parties have approved it and is usually in the form of a written purchase order from a customer combined with acknowledgement from the Company.

 

In cases without an MSA, the customer submits a blueprint for a product, the Company provides a quote and the customer responds with a purchase order.   In these cases the Company’s acceptance of the purchase order constitutes an enforceable contract.

 

Identifying the Performance Obligations in the Contract

For each contract, the Company considers the promise to transfer products, each of which are distinct, to be the identified performance obligations. For SBIRs the Company is obligated to provide certain services over the life of the agreement and the customer is obligated to pay for those services, generally monthly, as they are performed.

 

Shipping and handling activities for which the Company is responsible are not a separate promised service but instead are activities to fulfill the entity’s promise to transfer goods. Shipping and handling fees will be recognized at the same time as the related performance obligations are satisfied.

 

The Company provides an assurance-type warranty.  This guarantees that the product functions as promised and meets specifications.  Under its terms and conditions the Company offers a 30 day warranty and replaces defective or non-conforming products.  The expense of replacement is recorded at the time the Company agrees to replace a defective or non-conforming product.  This assurance type warranty is not considered to be a distinct performance obligation.

 

Determining the Transaction Price

The Company determines the transaction price as the amount of consideration specified in the contract that it expects to receive in exchange for transferring promised goods or services to the customer. Amounts collected from customers for sales value added and other taxes are excluded from the transaction prices. Product sales are recorded net of trade discounts and sales returns.  The Company will establish a reserve for product returns when necessary based on returns history and specific circumstances in which the Company anticipates returns to occur. Such product return reserves are recorded as a reduction to revenue. 

 

If a contract includes a variable amount, such as a rebate, then the Company estimates the transaction price using either the expected value or the most likely amount of consideration to be received, depending upon the specific facts and circumstances. The Company includes estimated variable consideration in the transaction price only to the extent it is probable that a significant reversal of revenue will not occur when the uncertainty is resolved. The Company updates its estimate of variable consideration at the end of each reporting period to reflect changes in facts and circumstances. As of December 30, 2023 there are no contracts with variable consideration.

 

When credit is granted to customers, payment is typically due 30 to 90 days from billing and accordingly our contracts with customers do not include a significant financing component.

 

Allocating the Transaction Price to the Performance Obligations

In virtually all cases the transaction price is tied to a specific product or service in the contract obviating the need for any allocation.

 

Recognizing Revenue When (or as) the Performance Obligations are Satisfied

The Company recognizes revenue at the point in time when it transfers control of the promised goods or services to the customer, which typically occurs once the product has shipped or has been delivered to the customer or the service has been performed. Occasionally, for the purpose of ensuring a steady flow of product, the Company ships products on consignment. In these instances, delivery is deemed to have occurred when the customer pulls inventory out of the warehouse for use in their production, or upon a specified period of time as agreed upon by both parties.  As of December 30, 2023 there are no products on consignment.

 

The Company generally expenses sales commissions when incurred because the amortization period would have been one year or less. The costs are recorded within, selling, general and administrative expenses.

 

The Company does not disclose the value of unsatisfied performance obligations for contracts with an original expected length of one year or less.

 

(2)(g) Income Taxes

 

The Company uses the asset and liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are recorded for the expected future tax consequences of temporary differences between the financial reporting and income tax bases of assets and liabilities and are measured using the enacted tax rates and laws that are expected to be in affect when the differences reverse. A valuation allowance is established to reduce net deferred tax assets to the amount expected to be realized.

 

The Company’s policy is to recognize interest and penalties related to income tax matters in income tax expense. As of December 30, 2023 and December 31, 2022, the Company has no accruals for interest or penalties related to income tax matters. The Company does not have any uncertain tax positions at December 30, 2023 or December 31, 2022 which required accrual or disclosure.

 

(2)(h) Net Income Per Common Share

 

Basic net income per common share is calculated by dividing net income by the weighted average number of common shares outstanding during the period. Diluted net income per common share is calculated by dividing net income by the sum of the weighted average number of common shares plus additional common shares that would have been outstanding if potential dilutive common shares had been issued for granted stock option and stock purchase rights. Common stock equivalents are excluded from the diluted calculations when a net loss is incurred as they would be anti-dilutive.

 

(2)(i) Reclassification

 

Certain amounts in prior year’s financial statements have been reclassified to conform to the current year’s presentation.

 

(2)(j) Recent Accounting Pronouncements

 

In the normal course of business, management evaluates all the new accounting pronouncements issued by the Financial Accounting Standard Board (“FASB”). Effective January 1, 2023, the Company adopted FASB Accounting Standards Update (“ASU”) 2016-13, Measurement of Credit Losses on Financial Instruments, which changed the way entities recognize credit losses of most financial assets. Short-term and long-term financial assets, as defined by the standard, are impacted by immediate recognition of estimated credit losses in the financial statements, reflecting the net amount expected to be collected. The adoption of this standard had an immaterial impact on our financial statements. Management does not expect any of the recently issued accounting pronouncements, which have not already been adopted, to have a material impact on the Company’s financial statements.

 

(2)(k) Use of Estimates in the Preparation of Financial Statements

 

The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the amounts of revenues and expenses recorded during the reporting period. Such estimates are adjusted by management periodically as a result of existing or anticipated economic changes which effect, or may effect, the Company’s financial statements. Actual results could differ from these estimates.

 

(2)(l) Fiscal Year-End

 

The Company’s fiscal year end is the last Saturday in December which could result in a 52 or 53 week year. Fiscal year 2023 consisted of 52 weeks and 2022 consisted of 53 weeks.

 

(2)(m) Share-Based Payments

 

The Company measures the cost of employee services received in exchange for an award of equity instruments based on the grant date fair value of the award. That cost is recognized over the period during which an employee is required to provide services in exchange for the award, the requisite service period (usually the vesting period). The Company provides an estimate of forfeitures at initial grant date, and this estimated forfeiture rate is adjusted periodically based on actual forfeiture experience. The Company uses the Black-Scholes option pricing model to determine the fair value of stock options granted.

 

(2)(n) Segment Reporting

 

The Company views its operations and manages its business as one segment. The Company produces and sells advanced material solutions, primarily metal matrix composites, to assemblers of high density electronics and other specialty components and subassemblies. The Company also assembles housings and packages for hybrid circuits, selling to the same customers mentioned above. These customers represent a single market or segment with similar stringent and well-defined requirements. The Company’s customers, in turn, sell the components and subassemblies which incorporate the products into many different end markets, however, these end markets are two to three levels removed from the Company. The Company also sells armor strike faces to armor manufacturers, using the same manufacturing process used in its other product solutions. The Company makes operating decisions and assesses financial performance only for the Company as a whole and does not make operating decisions or assess financial performance by the end markets which ultimately use the products.

  

XML 22 R11.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 3 - Inventories
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Inventory Disclosure [Text Block]

(3) Inventories

 

As of December 30, 2023 and December 31, 2022 inventories consisted of the following:

 

  

2023

  

2022

 

Raw materials

 $2,861,333  $2,645,442 

Work in process

  1,493,582   1,863,512 

Finished goods

  537,975   525,872 

Gross Inventory

  4,892,890   5,034,826 

Reserve for obsolescence

  (310,960)  (158,925)

Total

 $4,581,930  $4,875,901 

 

XML 23 R12.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 4 - Leases
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Lessee, Operating Leases [Text Block]

(4) Leases

 

The Company had one real estate lease in 2023 expiring in February 2026. CPS also has a few other leases for equipment which are minor in nature and are generally short-term in duration. None of these equipment leases have been capitalized as the Company elected an accounting policy for short-term leases, which allows lessees to avoid recognizing right-of-use assets and liabilities for leases with terms of 12 months or fewer.

 

The real estate lease expiring in 2026 (the “Norton facility lease’) is included as a right-of-use lease asset and corresponding lease liability on the balance sheet. This asset and liability are based on the present value of remaining lease payments over the remaining lease term using the Company’s incremental borrowing rate at the commencement date of the lease. The Company does not separate lease components from non-lease components.  The Company’s lease agreements do not contain any material residual value guarantees or material restrictive covenants.

 

The Norton facility lease comprises approximately 38 thousand square feet. The lease is a triple net lease wherein the Company is responsible for payment of all real estate taxes, operating costs and utilities.  The Company also has an option to buy the property and a first right of refusal during the term of the lease.  Annual rental payments are through maturity are reflected in the table below.

 

The following table presents information about the amount, timing and uncertainty of cash flows arising from the Company’s capitalized operating lease as of December 30, 2023:

 

(Dollars in Thousands

 

December 30, 2023

 

Maturity of capitalized lease liability

 

Lease payments

 

2024

 $164,700 

2025

  165,240 

2026

  27,540 

Total undiscounted operating lease payments

 $357,480 

Less: Imputed interest

  (25,480)

Present value of operating lease liability

 $332,000 

 

Balance Sheet Classification

    

Current lease liability

 $160,000 

Long-term lease liability

  172,000 

Total operating lease liability

 $332,000 
     

Other Information

    

Weighted-average remaining lease term for capitalized operating leases (in months)

  26 

Weighted-average discount rate for capitalized operating leases

  6.6%

 

Operating Lease Costs and Cash Flows

 

Operating lease cost and cash paid was $162 thousand for the twelve months ended December 30, 2023 and $160 thousand during the year ended December 31, 2022. These costs are related to its long-term operating lease. All other short-term leases were immaterial.

 

Estimated monthly payments under the terms of the Norton facility lease, escalate from $13 thousand to $14 thousand over the lease term.

  

XML 24 R13.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 5 - Share-based Compensation Plans
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Share-Based Payment Arrangement [Text Block]

(5) Share-Based Compensation Plans

 

The Company adopted the 2020 Equity Incentive Plan ("2020 Plan") on March 3, 2020. Under the terms of the 2020 Plan all of the Company’s employees, officers, directors, consultants and advisors are eligible to be granted options, restricted stock awards, or other stock-based awards. Some outstanding options are non-statutory stock options; some are incentive stock options.  All options granted are exercisable at the fair market value of the stock on the date of grant and expire ten years from the date of grant. The options granted to employees generally vest in equal annual installments over a five-year period. The options granted to directors generally vest immediately on date of grant. Certain options also remain issued and outstanding under the 2009 Stock Incentive Plan.

 

Under the 2020 Plan a total of 1,500,000 shares of common stock are available for issuance, of which 832,700 shares remain available for grant as of December 30, 2023.

 

A summary of stock option activity as of December 30, 2023 and changes during the year then ended is presented below:

 

      

Weighted

  

Weighted

     
      

Average

  

Remaining

  

Aggregate

 
      

Exercise

  

Contractual

  

Intrinsic

 
  

Shares

  

Price

  

Life (years)

  

Value

 

Outstanding at beginning of year

  

961,400

  

$

2.47

         

Granted

  

344,500

  

$

2.90

         

Exercised

  

(141,000

)

 

$

1.78

         

Forfeited

  

(236,400

)

 

$

2.93

         

Expired

  

(25,000

)

 

$

1.00

         

Outstanding at end of year

  

903,500

  

$

2.66

   

6.51

  

$

2,403,762

 
                 

Options exercisable at year-end

  

494,600

  

$

2.42

   

4.58

  

$

1,199,158

 

 

The fair value of each option grant is estimated on the date of grant using the Black-Scholes option-pricing model. The following table presents the annualized weighted average values of the significant assumptions used to estimate the fair values of the options granted during 2023 and 2022:

 

  

2023

  

2022

 

Risk-free interest rate

  

3.43%

-

4.24%

   

1.55%

-

2.84%

 

Expected life in years

  

5

-

5.5

   

6

-

7

 

Expected volatility

   

59.7%

     

54%

  

Expected dividend yield

   

0

     

0

  

Weighted average fair value of grants

 

 

 

$2.91

   

 

 

$3.11

  

 

All options are granted with an exercise price equal to the fair market value of the underlying common stock on the date of grant.

 

The Company recognized $204,797 and $250,359 as stock based compensation expense in 2023 and 2022, respectively.  As of December 30, 2023, there was $560,815 of total unrecognized compensation cost related to non-vested share-based compensation arrangements granted under the plan; that cost is expected to be recognized over a weighted average period of 2.55 years.

   

XML 25 R14.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 6 - Accrued Expenses
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Accounts Payable and Accrued Liabilities Disclosure [Text Block]

(6) Accrued Expenses

 

Accrued expenses at December 30, 2023 and December 31, 2022 consist of the following:

 

  

2023

  

2022

 

Accrued legal and accounting

 $86,000  $35,398 

Accrued payroll and related costs

  649,201   760,305 

Accrued other

  339,936   25,153 
         
  $1,075,137  $820,856 

 

Included in Accrued other is $288,000 as a reserve for potential credits to be issued as part of the quality issue described above. In addition to this reserve, the Company increased its sales returns in the amount of $104,126 for parts for which a credit was issued in January 2024.

 

XML 26 R15.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 7 - Revolving Line of Credit
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Debt Disclosure [Text Block]

(7) Revolving Line of Credit

 

In May 2023, the Company terminated its $3.0 million revolving line of credit (LOC) with Massachusetts Business Development Corporation (BDC). A new LOC in the amount of $3.0 million was entered into with Rockland Trust Company. The LOC is secured by the accounts receivable and other assets of the Company and has an interest rate of the National Prime Rate as published by the Wall Street Journal (8.5% at December 30, 2023). On December 30, 2023, the Company had $0 of borrowings under this LOC and its borrowing base at the time would have permitted an additional $3.0 million to have been borrowed.  The LOC remains in effect until terminated per mutual agreement by both parties.  Total Interest Expense for 2023 was $0 and was $0 thousand for 2022.

  

XML 27 R16.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 8 - Notes Payable
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Long-Term Debt [Text Block]

(8) Notes Payable 

 

In March 2020, the Company acquired a Sonoscan ultrasound microscope for a price of $208 thousand.  The full amount was financed through a 5 year note payable with a third party equipment finance company.  The note is collateralized by the microscope and is being paid in monthly installments of $4 thousand, consisting of principal plus interest at a rate of 6.47%.

 

The aggregate maturities of the notes payable based on the payment terms of the agreement are as follows:

 

Remaining in:

 

Payments due by period

 

FY 2024

 $48,974 

FY 2025

 $8,155 

Less Interest

 $(2,242)

Total Principal Payments

 $54,887 

 

Total interest expense on notes payable during 2023 was $5,096 and during 2022 was $7,954.

   

XML 28 R17.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 9 - Income Taxes
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Income Tax Disclosure [Text Block]

(9) Income Taxes

 

Components of income tax expense (benefit) for each year are as follows:

 

  

2023

  

2022

 

Current:

        

Federal

 $81,919  $1,270 

State

  456   456 
         

Current income tax provision (benefit):

  82,375   1,726 
         

Deferred:

        

Federal

  357,507   577,866 

State

  142,203   176,676 
         

Deferred income tax provision (benefit), net

  499,710   754,542 
         

Total

 $582,085  $756,268 

 

Deferred tax assets as of December 30, 2023 and December 31, 2022 are as follows:

 

  

December 30,

2023

  

December 31,

2022

 

Deferred Tax Assets:

        

Net operating loss carryforwards

 $-  $132,632 

Stock compensation

  209,609   209,092 

Credit carryforwards

  865,928   1,253,956 

Inventory

  84,955   80,628 

Accrued liabilities

  -   5,071 

Depreciation

  143,081   179,481 

Capitalized R&D, net

  263,421   205,878 

Other

  2,732   2,698 

Net deferred tax assets

 $1,569,726  $2,069,436 

 

A summary of the change in the deferred tax asset is as follows:

 

  

2023

  

2022

 
         

Gross deferred tax balance at beginning of year

 $2,069,436  $2,823,978 
         

Deferred tax benefit (provision)

  (499,710)  (754,542)
         

Balance at end of year, net

 $1,569,726  $2,069,436 

 

Income tax expense is different from the amounts computed by applying the U.S. federal statutory income tax rate of 21 percent to pretax income as a result of the following:

 

  

2023

  

2022

 
         

Tax at statutory rate

 $416,663  $578,214 

State tax, net of federal benefit

  142,562   177,036 

Other

  22,860   1,018 
         

Total

 $582,085  $756,268 

 

The Company’s income tax filings are subject to review and examination by federal and state taxing authorities. The Company is currently open to audit under the applicable statutes of limitations for the years 2020 through 2023.

  

XML 29 R18.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 10 - Retirement Savings Plan
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Retirement Benefits [Text Block]

(10) Retirement Savings Plan

 

The Company sponsors a Retirement Savings Plan (the ‘Plan’) under the provisions of Section 401 of the Internal Revenue Code. Employees, as defined in the Plan, are eligible to participate in the Plan after 30 days of employment. Under the terms of the Plan, the Company may match employee contributions under such method as described in the Plan. During 2023 the Company elected to match 1% of each of the first 4% of employee contributions paid proportionally each pay period amounting to $232 thousand.  In 2022 the Company elected to match ½% of each of the first 4% of employee contributions paid proportionally each pay period amounting to $94 thousand.

  

XML 30 R19.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Concentration Risk Disclosure [Text Block]

(11) Concentrations of Credit Risk, Significant Customers and Geographic Information

 

Financial instruments which subject the Company to concentrations of credit risk consist principally of cash, cash equivalents and trade accounts receivable. The Company maintains cash deposits in a sweep account, whereby funds are automatically moved in increments of $250,000 to various FDIC insured financial institutions on a nightly basis.

 

The Company extends credit to customers who consist principally of microelectronics systems companies in the United States, Europe and Asia. The Company generally does not require collateral or other security as a condition of sale rather relying on credit approval, balance limitation and monitoring procedures to control credit risk of trade accounts receivable. The Company also maintains a credit insurance policy covering most of its non-US customers to further mitigate credit risk. Management conducts on-going credit evaluations of its customers, and historically the Company has not experienced any significant credit-related losses with respect to its trade accounts receivable.

 

Revenues from significant customers as a percentage of total revenues in 2023 and 2022 were as follows:

 

  

Percent of Total Revenues

 
         

Significant Customer

 

2023

  

2022

 

A

  33%  21%

B

  18%  15%

C

  9%  17%

 

As of December 30, 2023, the Company had trade accounts receivable due from these three customers that accounted for 50% of total trade accounts receivable as of that date. To further mitigate the potential for credit losses the Company has acquired a credit insurance policy covering most of our sales to non-US accounts.  Management believes that any credit risks have been properly provided for in the accompanying financial statements.

 

The Company’s revenue was derived from the following countries in 2023 and 2022:

 

  

Percent of Total Revenues

 
         

Country

 

2023

  

2022

 

United States of America

  56%  42%

Germany

  18%  16%

Other

  26%  42%

 

Many of the Company’s customers based in the United States conduct design, purchasing and payable functions in the United States, but manufacture overseas.

 

All of the Company’s long-lived assets and operations are located in the United States.

  

XML 31 R20.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 12 - Net Income (Loss) Per Share
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Earnings Per Share [Text Block]

(12) Net Income Per Share

 

The following reconciles the basic and diluted net income per share calculations.

 

  

Dec. 30,

  

Dec. 31,

 
  

2023

  

2022

 

Basic EPS Computation:

        

Numerator:

        

Net income

 $1,370,296  $2,131,400 

Denominator:

        

Weighted average

        

Common shares

        

Outstanding

  14,495,709   14,424,381 

Basic EPS

 $0.09  $0.15 

Diluted EPS Computation:

        

Numerator:

        

Net income

 $1,370,296  $2,131,400 

Denominator:

        

Weighted average

        

Common shares

        

Outstanding

  14,495,709   14,424,381 

Dilutive effect of stock options

  133,102   251,265 
         

Total shares

  14,628,811   14,675,646 
         

Diluted net income per share

 $0.09  $0.15 

  

XML 32 R21.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 13 - Commitments and Contingencies
12 Months Ended
Dec. 30, 2023
Notes to Financial Statements  
Commitments and Contingencies Disclosure [Text Block]

(13) Commitments and Contingencies

 

We are subject to contingencies, including legal proceedings and claims arising in the normal course of business that cover a wide range of matters including, among others, contract and employment claims; workers compensation claims; product liability; warranty and modification; and adjustment or replacement of units sold.

 

Direct costs associated with the estimated resolution of contingencies are accrued at the earliest date at which it is deemed probable that a liability has been incurred and the amount of such liability can be reasonably estimated. While it is impossible to ascertain the ultimate legal and financial liability with respect to contingent liabilities, including lawsuits, we believe that the aggregate amount of such liabilities, if any, in excess of amounts provided or covered by insurance, will not have a material adverse effect on the consolidated financial position or results of operations. It is possible, however, that future results of operations for any particular future period could be materially affected by changes in our assumptions or strategies related to these contingencies or changes out of our control.

 

Notwithstanding the above, the Company has received a letter from an attorney representing a former European sales representative alleging that under European law the representative is entitled to compensation as a result of his termination. The Company completely disagrees with the claims. Should this result in litigation the Company will defend itself to the fullest extent of the law and estimates any losses incurred to be immaterial.

    

XML 33 R22.htm IDEA: XBRL DOCUMENT v3.24.0.1
Significant Accounting Policies (Policies)
12 Months Ended
Dec. 30, 2023
Accounting Policies [Abstract]  
Cash and Cash Equivalents, Policy [Policy Text Block]

(2)(a) Cash and Cash Equivalents

 

The Company considers all highly liquid investments with a maturity of three months or less at the date of purchase to be cash equivalents.

 

Accounts Receivable [Policy Text Block]

(2)(b) Accounts Receivable

 

The Company reports its accounts receivable at the invoiced amount less an allowance for credit losses. The Company’s management provides appropriate provisions for uncollectible accounts based upon factors surrounding the credit risk and activity of specific customers, historical trends, economic conditions and other information to estimate future expected losses. Adjustments to the allowance are charged to operations in the period in which information becomes available that may affect the allowance.   The Company maintains an allowance for credit losses of $10,000 as of December 30, 2023 and December 31, 2022.

 

(2)(b)(1) Accounts Receivable-Other

 

As of December 30, 2023 this amount was primarily VAT paid by CPS, but due to be repaid by its European customers with future shipments. In 2022 the Company filed for the Employee Retention Tax Credit (ERTC) in the amount of $641,086.  This credit was still due from the Internal Revenue Service (“IRS”) on December 31, 2022 however was collected in 2023. 

 

Inventory, Policy [Policy Text Block]

(2)(c) Inventories

 

Inventories are stated at the lower of cost (cost is based on standard costs which approximate actual costs), as determined under the first-in, first-out method (FIFO), or net realizable value. A reserve for obsolete inventories is based on factors regarding the sales and usage of such inventories, including inventories manufactured for specific customers. The Company’s general obsolescence policy is to reserve against obsolete inventory when there has been no activity on a particular part for a twelve month period and there are no expected customer orders.

 

Property, Plant and Equipment, Policy [Policy Text Block]

(2)(d) Property and Equipment

 

Property and equipment are stated at cost. Depreciation of equipment is calculated on a straight-line basis over the estimated useful life, generally five years for production equipment and three to five years for furniture and office equipment. Leasehold improvements are depreciated over the shorter of the lease term or their useful life. Maintenance and repairs are charged to expense as incurred. Upon retirement or sale, the cost and related accumulated depreciation or amortization are removed from their respective accounts. Any gains or losses on the disposition of property and equipment are included in the results of operations in the period in which they occur.

 

Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]

(2)(e) Impairment of Long-Lived Assets

 

The Company reviews long-lived assets for impairment whenever circumstances and situations change such that there is an indication that the carrying amounts may not be recovered. Recoverability is assessed based on estimated undiscounted future cash flows. As of December 30, 2023 and December 31, 2022, the Company believes that there has been no impairment of its long-lived assets.

 

Revenue [Policy Text Block]

(2)(f) Revenue Recognition

 

Revenue is recognized in accordance with the five-step method under Accounting Standards Codification (ASC) 606, “Revenue from Contracts with Customers.”

 

Identifying the Contract with the Customer

The Company identifies contracts with customers as agreements that create enforceable rights and obligations.  In the case of a few large customers the Company has executed long-term Master Sales Agreements (“MSA”).  These are umbrella agreements which typically define the terms and conditions under which a customer can order goods from CPS.  These in themselves do not constitute a contract as no products are committed to be transferred and the customer has no obligation to make payments. In the case of SBIRs an enforceable contract is signed by both the customer and CPS.

 

The Company contract is only enforceable once both parties have approved it and is usually in the form of a written purchase order from a customer combined with acknowledgement from the Company.

 

In cases without an MSA, the customer submits a blueprint for a product, the Company provides a quote and the customer responds with a purchase order.   In these cases the Company’s acceptance of the purchase order constitutes an enforceable contract.

 

Identifying the Performance Obligations in the Contract

For each contract, the Company considers the promise to transfer products, each of which are distinct, to be the identified performance obligations. For SBIRs the Company is obligated to provide certain services over the life of the agreement and the customer is obligated to pay for those services, generally monthly, as they are performed.

 

Shipping and handling activities for which the Company is responsible are not a separate promised service but instead are activities to fulfill the entity’s promise to transfer goods. Shipping and handling fees will be recognized at the same time as the related performance obligations are satisfied.

 

The Company provides an assurance-type warranty.  This guarantees that the product functions as promised and meets specifications.  Under its terms and conditions the Company offers a 30 day warranty and replaces defective or non-conforming products.  The expense of replacement is recorded at the time the Company agrees to replace a defective or non-conforming product.  This assurance type warranty is not considered to be a distinct performance obligation.

 

Determining the Transaction Price

The Company determines the transaction price as the amount of consideration specified in the contract that it expects to receive in exchange for transferring promised goods or services to the customer. Amounts collected from customers for sales value added and other taxes are excluded from the transaction prices. Product sales are recorded net of trade discounts and sales returns.  The Company will establish a reserve for product returns when necessary based on returns history and specific circumstances in which the Company anticipates returns to occur. Such product return reserves are recorded as a reduction to revenue. 

 

If a contract includes a variable amount, such as a rebate, then the Company estimates the transaction price using either the expected value or the most likely amount of consideration to be received, depending upon the specific facts and circumstances. The Company includes estimated variable consideration in the transaction price only to the extent it is probable that a significant reversal of revenue will not occur when the uncertainty is resolved. The Company updates its estimate of variable consideration at the end of each reporting period to reflect changes in facts and circumstances. As of December 30, 2023 there are no contracts with variable consideration.

 

When credit is granted to customers, payment is typically due 30 to 90 days from billing and accordingly our contracts with customers do not include a significant financing component.

 

Allocating the Transaction Price to the Performance Obligations

In virtually all cases the transaction price is tied to a specific product or service in the contract obviating the need for any allocation.

 

Recognizing Revenue When (or as) the Performance Obligations are Satisfied

The Company recognizes revenue at the point in time when it transfers control of the promised goods or services to the customer, which typically occurs once the product has shipped or has been delivered to the customer or the service has been performed. Occasionally, for the purpose of ensuring a steady flow of product, the Company ships products on consignment. In these instances, delivery is deemed to have occurred when the customer pulls inventory out of the warehouse for use in their production, or upon a specified period of time as agreed upon by both parties.  As of December 30, 2023 there are no products on consignment.

 

The Company generally expenses sales commissions when incurred because the amortization period would have been one year or less. The costs are recorded within, selling, general and administrative expenses.

 

The Company does not disclose the value of unsatisfied performance obligations for contracts with an original expected length of one year or less.

 

Income Tax, Policy [Policy Text Block]

(2)(g) Income Taxes

 

The Company uses the asset and liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are recorded for the expected future tax consequences of temporary differences between the financial reporting and income tax bases of assets and liabilities and are measured using the enacted tax rates and laws that are expected to be in affect when the differences reverse. A valuation allowance is established to reduce net deferred tax assets to the amount expected to be realized.

 

The Company’s policy is to recognize interest and penalties related to income tax matters in income tax expense. As of December 30, 2023 and December 31, 2022, the Company has no accruals for interest or penalties related to income tax matters. The Company does not have any uncertain tax positions at December 30, 2023 or December 31, 2022 which required accrual or disclosure.

 

Earnings Per Share, Policy [Policy Text Block]

(2)(h) Net Income Per Common Share

 

Basic net income per common share is calculated by dividing net income by the weighted average number of common shares outstanding during the period. Diluted net income per common share is calculated by dividing net income by the sum of the weighted average number of common shares plus additional common shares that would have been outstanding if potential dilutive common shares had been issued for granted stock option and stock purchase rights. Common stock equivalents are excluded from the diluted calculations when a net loss is incurred as they would be anti-dilutive.

 

Reclassification, Comparability Adjustment [Policy Text Block]

(2)(i) Reclassification

 

Certain amounts in prior year’s financial statements have been reclassified to conform to the current year’s presentation.

 

New Accounting Pronouncements, Policy [Policy Text Block]

(2)(j) Recent Accounting Pronouncements

 

In the normal course of business, management evaluates all the new accounting pronouncements issued by the Financial Accounting Standard Board (“FASB”). Effective January 1, 2023, the Company adopted FASB Accounting Standards Update (“ASU”) 2016-13, Measurement of Credit Losses on Financial Instruments, which changed the way entities recognize credit losses of most financial assets. Short-term and long-term financial assets, as defined by the standard, are impacted by immediate recognition of estimated credit losses in the financial statements, reflecting the net amount expected to be collected. The adoption of this standard had an immaterial impact on our financial statements. Management does not expect any of the recently issued accounting pronouncements, which have not already been adopted, to have a material impact on the Company’s financial statements.

 

Use of Estimates, Policy [Policy Text Block]

(2)(k) Use of Estimates in the Preparation of Financial Statements

 

The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the amounts of revenues and expenses recorded during the reporting period. Such estimates are adjusted by management periodically as a result of existing or anticipated economic changes which effect, or may effect, the Company’s financial statements. Actual results could differ from these estimates.

 

Fiscal Period, Policy [Policy Text Block]

(2)(l) Fiscal Year-End

 

The Company’s fiscal year end is the last Saturday in December which could result in a 52 or 53 week year. Fiscal year 2023 consisted of 52 weeks and 2022 consisted of 53 weeks.

 

Share-Based Payment Arrangement [Policy Text Block]

(2)(m) Share-Based Payments

 

The Company measures the cost of employee services received in exchange for an award of equity instruments based on the grant date fair value of the award. That cost is recognized over the period during which an employee is required to provide services in exchange for the award, the requisite service period (usually the vesting period). The Company provides an estimate of forfeitures at initial grant date, and this estimated forfeiture rate is adjusted periodically based on actual forfeiture experience. The Company uses the Black-Scholes option pricing model to determine the fair value of stock options granted.

 

Segment Reporting, Policy [Policy Text Block]

(2)(n) Segment Reporting

 

The Company views its operations and manages its business as one segment. The Company produces and sells advanced material solutions, primarily metal matrix composites, to assemblers of high density electronics and other specialty components and subassemblies. The Company also assembles housings and packages for hybrid circuits, selling to the same customers mentioned above. These customers represent a single market or segment with similar stringent and well-defined requirements. The Company’s customers, in turn, sell the components and subassemblies which incorporate the products into many different end markets, however, these end markets are two to three levels removed from the Company. The Company also sells armor strike faces to armor manufacturers, using the same manufacturing process used in its other product solutions. The Company makes operating decisions and assesses financial performance only for the Company as a whole and does not make operating decisions or assess financial performance by the end markets which ultimately use the products.

XML 34 R23.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 3 - Inventories (Tables)
12 Months Ended
Dec. 30, 2023
Notes Tables  
Schedule of Inventory, Current [Table Text Block]
  

2023

  

2022

 

Raw materials

 $2,861,333  $2,645,442 

Work in process

  1,493,582   1,863,512 

Finished goods

  537,975   525,872 

Gross Inventory

  4,892,890   5,034,826 

Reserve for obsolescence

  (310,960)  (158,925)

Total

 $4,581,930  $4,875,901 
XML 35 R24.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 4 - Leases (Tables)
12 Months Ended
Dec. 30, 2023
Notes Tables  
Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]

(Dollars in Thousands

 

December 30, 2023

 

Maturity of capitalized lease liability

 

Lease payments

 

2024

 $164,700 

2025

  165,240 

2026

  27,540 

Total undiscounted operating lease payments

 $357,480 

Less: Imputed interest

  (25,480)

Present value of operating lease liability

 $332,000 
Lease, Cost [Table Text Block]

Balance Sheet Classification

    

Current lease liability

 $160,000 

Long-term lease liability

  172,000 

Total operating lease liability

 $332,000 
     

Other Information

    

Weighted-average remaining lease term for capitalized operating leases (in months)

  26 

Weighted-average discount rate for capitalized operating leases

  6.6%
XML 36 R25.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 5 - Share-based Compensation Plans (Tables)
12 Months Ended
Dec. 30, 2023
Notes Tables  
Share-Based Payment Arrangement, Activity [Table Text Block]
      

Weighted

  

Weighted

     
      

Average

  

Remaining

  

Aggregate

 
      

Exercise

  

Contractual

  

Intrinsic

 
  

Shares

  

Price

  

Life (years)

  

Value

 

Outstanding at beginning of year

  

961,400

  

$

2.47

         

Granted

  

344,500

  

$

2.90

         

Exercised

  

(141,000

)

 

$

1.78

         

Forfeited

  

(236,400

)

 

$

2.93

         

Expired

  

(25,000

)

 

$

1.00

         

Outstanding at end of year

  

903,500

  

$

2.66

   

6.51

  

$

2,403,762

 
                 

Options exercisable at year-end

  

494,600

  

$

2.42

   

4.58

  

$

1,199,158

 
Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]
  

2023

  

2022

 

Risk-free interest rate

  

3.43%

-

4.24%

   

1.55%

-

2.84%

 

Expected life in years

  

5

-

5.5

   

6

-

7

 

Expected volatility

   

59.7%

     

54%

  

Expected dividend yield

   

0

     

0

  

Weighted average fair value of grants

 

 

 

$2.91

   

 

 

$3.11

  
XML 37 R26.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 6 - Accrued Expenses (Tables)
12 Months Ended
Dec. 30, 2023
Notes Tables  
Schedule of Accrued Liabilities [Table Text Block]
  

2023

  

2022

 

Accrued legal and accounting

 $86,000  $35,398 

Accrued payroll and related costs

  649,201   760,305 

Accrued other

  339,936   25,153 
         
  $1,075,137  $820,856 
XML 38 R27.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 8 - Notes Payable (Tables)
12 Months Ended
Dec. 30, 2023
Notes Tables  
Schedule of Maturities of Long-Term Debt [Table Text Block]

Remaining in:

 

Payments due by period

 

FY 2024

 $48,974 

FY 2025

 $8,155 

Less Interest

 $(2,242)

Total Principal Payments

 $54,887 
XML 39 R28.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 9 - Income Taxes (Tables)
12 Months Ended
Dec. 30, 2023
Notes Tables  
Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]
  

2023

  

2022

 

Current:

        

Federal

 $81,919  $1,270 

State

  456   456 
         

Current income tax provision (benefit):

  82,375   1,726 
         

Deferred:

        

Federal

  357,507   577,866 

State

  142,203   176,676 
         

Deferred income tax provision (benefit), net

  499,710   754,542 
         

Total

 $582,085  $756,268 
Schedule of Deferred Tax Assets and Liabilities [Table Text Block]
  

December 30,

2023

  

December 31,

2022

 

Deferred Tax Assets:

        

Net operating loss carryforwards

 $-  $132,632 

Stock compensation

  209,609   209,092 

Credit carryforwards

  865,928   1,253,956 

Inventory

  84,955   80,628 

Accrued liabilities

  -   5,071 

Depreciation

  143,081   179,481 

Capitalized R&D, net

  263,421   205,878 

Other

  2,732   2,698 

Net deferred tax assets

 $1,569,726  $2,069,436 
Summary Schedule of Deferred Tax Assets and Liabilities [Table Text Block]
  

2023

  

2022

 
         

Gross deferred tax balance at beginning of year

 $2,069,436  $2,823,978 
         

Deferred tax benefit (provision)

  (499,710)  (754,542)
         

Balance at end of year, net

 $1,569,726  $2,069,436 
Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]
  

2023

  

2022

 
         

Tax at statutory rate

 $416,663  $578,214 

State tax, net of federal benefit

  142,562   177,036 

Other

  22,860   1,018 
         

Total

 $582,085  $756,268 
XML 40 R29.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information (Tables)
12 Months Ended
Dec. 30, 2023
Notes Tables  
Schedules of Concentration of Risk, by Risk Factor [Table Text Block]
  

Percent of Total Revenues

 
         

Significant Customer

 

2023

  

2022

 

A

  33%  21%

B

  18%  15%

C

  9%  17%
Revenue from External Customers by Geographic Areas [Table Text Block]
  

Percent of Total Revenues

 
         

Country

 

2023

  

2022

 

United States of America

  56%  42%

Germany

  18%  16%

Other

  26%  42%
XML 41 R30.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 12 - Net Income (Loss) Per Share (Tables)
12 Months Ended
Dec. 30, 2023
Notes Tables  
Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]
  

Dec. 30,

  

Dec. 31,

 
  

2023

  

2022

 

Basic EPS Computation:

        

Numerator:

        

Net income

 $1,370,296  $2,131,400 

Denominator:

        

Weighted average

        

Common shares

        

Outstanding

  14,495,709   14,424,381 

Basic EPS

 $0.09  $0.15 

Diluted EPS Computation:

        

Numerator:

        

Net income

 $1,370,296  $2,131,400 

Denominator:

        

Weighted average

        

Common shares

        

Outstanding

  14,495,709   14,424,381 

Dilutive effect of stock options

  133,102   251,265 
         

Total shares

  14,628,811   14,675,646 
         

Diluted net income per share

 $0.09  $0.15 
XML 42 R31.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 2 - Summary of Significant Accounting Policies (Details Textual)
12 Months Ended
Dec. 30, 2023
USD ($)
Dec. 31, 2023
Dec. 31, 2022
USD ($)
Allowance for Doubtful Accounts, Premiums and Other Receivables $ 10,000    
Impairment, Long-Lived Asset, Held-for-Use, Total 0    
Contract with Customer, Rebates 0    
Other Inventory, Materials, Supplies and Merchandise under Consignment, Gross 0    
Income Tax Examination, Penalties and Interest Accrued, Total 0    
Unrecognized Tax Benefits, Uncertain Tax Positions $ 0    
Number of Operating Segments 1    
Production Equipment [Member]      
Property, Plant and Equipment, Useful Life (Year) 5 years    
Furniture and Office Equipment [Member] | Minimum [Member]      
Property, Plant and Equipment, Useful Life (Year)   3 years  
Furniture and Office Equipment [Member] | Maximum [Member]      
Property, Plant and Equipment, Useful Life (Year)   5 years  
Accounts Receivable and Other Income [Member]      
Employee Retention Tax Credit     $ 641,086
XML 43 R32.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 3 - Inventories - Inventories (Details) - USD ($)
Dec. 30, 2023
Dec. 31, 2022
Raw materials $ 2,861,333 $ 2,645,442
Work in process 1,493,582 1,863,512
Finished goods 537,975 525,872
Gross Inventory 4,892,890 5,034,826
Reserve for obsolescence (310,960) (158,925)
Total $ 4,581,930 $ 4,875,901
XML 44 R33.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 4 - Leases (Details Textual)
ft² in Thousands, $ in Thousands
12 Months Ended
Dec. 30, 2023
USD ($)
ft²
Dec. 31, 2022
USD ($)
Norton Facility [Member]    
Area of Real Estate Property (Square Foot) | ft² 38  
Norton Facility [Member] | Minimum [Member]    
Lessee, Operating Lease, Monthly Rent Payments $ 13  
Norton Facility [Member] | Maximum [Member]    
Lessee, Operating Lease, Monthly Rent Payments $ 14  
Facility Two [Member] | Lease Expiration, December 2020 [Member]    
Operating Lease, Real Estate, Number of Leases 1  
Norton Facility [Member]    
Operating Lease, Expense $ 162 $ 160
XML 45 R34.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 4 - Leases - Capitalized Operating Leases (Details)
Dec. 30, 2023
USD ($)
2024 $ 164,700
2025 165,240
2026 27,540
Total undiscounted operating lease payments 357,480
Less: Imputed interest (25,480)
Present value of operating lease liability $ 332,000
XML 46 R35.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 4 - Leases - Costs (Details) - USD ($)
Dec. 31, 2023
Dec. 30, 2023
Dec. 31, 2022
Current lease liability $ 160,000 $ 160,000 $ 157,000
Long-term lease liability $ 172,000 172,000 $ 309,000
Total operating lease liability   $ 332,000  
Weighted-average remaining lease term for capitalized operating leases (in months) (Year)   26 years  
Weighted-average discount rate for capitalized operating leases   6.60%  
XML 47 R36.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 5 - Share-based Compensation Plans (Details Textual) - The 2020 Equity Incentive Plan [Member] - USD ($)
12 Months Ended
Mar. 03, 2020
Dec. 30, 2023
Dec. 31, 2022
Dec. 26, 2020
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized (in shares)       1,500,000
Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant (in shares)   832,700    
Share-Based Payment Arrangement, Expense   $ 204,797 $ 250,359  
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount   $ 560,815    
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)   2 years 6 months 18 days    
Share-Based Payment Arrangement, Option [Member]        
Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period (Year) 10 years      
Share-Based Payment Arrangement, Option [Member] | Share-Based Payment Arrangement, Employee [Member]        
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year) 5 years      
XML 48 R37.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 5 - Share-based Compensation Plans - Stock Option Activity (Details) - The 2020 Equity Incentive Plan [Member]
12 Months Ended
Dec. 30, 2023
USD ($)
$ / shares
shares
Outstanding, shares (in shares) | shares 961,400
Outstanding, weighted average exercise price (in dollars per share) | $ / shares $ 2.47
Granted (in shares) | shares 344,500
Granted, weighted average exercise price (in dollars per share) | $ / shares $ 2.9
Exercised, shares (in shares) | shares (141,000)
Exercised, weighted average exercise price (in dollars per share) | $ / shares $ 1.78
Forfeited, shares (in shares) | shares (236,400)
Forfeited, weighted average exercise price (in dollars per share) | $ / shares $ 2.93
Expired, shares (in shares) | shares (25,000)
Expired, weighted average exercise price (in dollars per share) | $ / shares $ 1
Outstanding, shares (in shares) | shares 903,500
Outstanding, weighted average exercise price (in dollars per share) | $ / shares $ 2.66
Outstanding, weighted remaining contractual life (Year) 6 years 6 months 3 days
Outstanding, Aggregate intrinsic value | $ $ 2,403,762
Options exercisable, shares (in shares) | shares 494,600
Options exercisable, weighted average exercise price (in dollars per share) | $ / shares $ 2.42
Options exercisable, weighted remaining contractual life (Year) 4 years 6 months 29 days
Options exercisable, Aggregate intrinsic value | $ $ 1,199,158
XML 49 R38.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 5 - Share-based Compensation Plans - Annualized Weighted Average Values of Significant Assumptions Used to Estimate Fair Values (Details) - $ / shares
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Expected volatility 59.70% 54.00%
Expected dividend yield 0.00% 0.00%
Weighted average fair value of grants (in dollars per share)   $ 3.11
Minimum [Member]    
Risk-free interest rate (Rate) 3.43% 1.55%
Expected life in years (Year) 5 years 6 years
Maximum [Member]    
Risk-free interest rate (Rate) 4.24% 2.84%
Expected life in years (Year) 5 years 6 months 7 years
Weighted average fair value of grants (in dollars per share) $ 2.91  
XML 50 R39.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 6 - Accrued Expenses (Details Textual)
Dec. 30, 2023
USD ($)
Sales Returns, For Parts of Credit, Issued $ 104,126
Reserve for Potential Credits [Member]  
Reserves for Potential Credit to be Issued $ 288,000
XML 51 R40.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 6 - Accrued Expenses - Accrued Expenses (Details) - USD ($)
Dec. 30, 2023
Dec. 31, 2022
Accrued legal and accounting $ 86,000 $ 35,398
Accrued payroll and related costs 649,201 760,305
Accrued other 339,936 25,153
Accounts Payable and Accrued Liabilities, Current $ 1,075,137 $ 820,856
XML 52 R41.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 7 - Revolving Line of Credit (Details Textual) - Revolving Credit Facility [Member] - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 30, 2023
Dec. 31, 2022
May 01, 2023
May 31, 2020
Massachusetts Business Development Corporation [Member]          
Line of Credit Facility, Maximum Borrowing Capacity         $ 3,000
Long-term Line of Credit, Total $ 0 $ 0      
Line of Credit Facility, Remaining Borrowing Capacity $ 3,000 3,000      
Interest Expense   $ 0 $ 0    
Rockland Trust Company [Member]          
Line of Credit Facility, Maximum Borrowing Capacity       $ 3,000  
Line of Credit Facility, Interest Rate During Period 8.50%        
XML 53 R42.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 8 - Notes Payable (Details Textual) - USD ($)
1 Months Ended 12 Months Ended
Sep. 30, 2019
Mar. 31, 2020
Dec. 30, 2023
Dec. 31, 2022
Property, Plant and Equipment, Gross, Ending Balance     $ 13,210,514 $ 12,708,959
Interest Expense, Debt     $ 5,096 $ 7,954
Massachusetts Business Development Corporation [Member] | Revolving Credit Facility [Member]        
Debt Instrument, Termination Period (Year) 3 years      
Microscope Note Payable [Member]        
Debt Instrument, Term (Year)   5 years    
Debt Instrument, Periodic Payment, Total   $ 4,000    
Debt Instrument, Interest Rate, Stated Percentage   6.47%    
Sonoscan Ultrasound Microscope [Member]        
Property, Plant and Equipment, Gross, Ending Balance   $ 208,000    
XML 54 R43.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 8 - Note Payable - Note Payable Maturities (Details)
Dec. 30, 2023
USD ($)
FY 2024 $ 48,974
FY 2025 8,155
Less Interest (2,242)
Total Principal Payments $ 54,887
XML 55 R44.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 9 - Income Taxes (Details Textual)
12 Months Ended
Dec. 30, 2023
Internal Revenue Service (IRS) [Member] | Domestic Tax Authority [Member]  
Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent 21.00%
XML 56 R45.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 9 - Income Taxes - Components of Income Tax Expense (Benefit) (Details) - USD ($)
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Current:    
Federal, current $ 81,919  
State, current 456 $ 456
Current income tax provision (benefit): 82,375 1,726
Deferred:    
Federal, deferred 357,507 577,866
State, deferred 142,203 176,676
Deferred income tax provision (benefit), net 499,710 754,542
Total $ 582,085 $ 756,268
XML 57 R46.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 9 - Income Taxes - Components of Net Deferred Tax Assets (Details) - USD ($)
Dec. 30, 2023
Dec. 31, 2022
Deferred Tax Assets:    
Net operating loss carryforwards $ 0 $ 132,632
Stock compensation 209,609 209,092
Credit carryforwards 865,928 1,253,956
Inventory 84,955 80,628
Accrued liabilities 0 5,071
Depreciation 143,081 179,481
Capitalized R&D, net 263,421 205,878
Other 2,732 2,698
Net deferred tax assets $ 1,569,726 $ 2,069,436
XML 58 R47.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 9 - Income Taxes - Summary of Changes in Deferred Tax Asset (Details) - USD ($)
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Gross deferred tax balance at beginning of year $ 2,069,436 $ 2,823,978
Deferred tax benefit (provision) (499,710) (754,542)
Balance at end of year, net $ 1,569,726 $ 2,069,436
XML 59 R48.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 9 - Income Taxes - Effective Income Tax Rate Reconciliation for Computed Income Tax Expense (Benefit) (Details) - USD ($)
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Tax at statutory rate $ 416,663 $ 578,214
State tax, net of federal benefit 142,562 177,036
Other 22,860 1,018
Total $ 582,085 $ 756,268
XML 60 R49.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 10 - Retirement Savings Plan (Details Textual) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay 4.00% 4.00%
Defined Contribution Plan, Cost $ 232 $ 94
XML 61 R50.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information (Details Textual) - Customer Concentration Risk [Member] - Accounts Receivable [Member] - Significant Customers A, B, and C [Member]
12 Months Ended
Dec. 30, 2023
Number of Major Customers 3
Concentration Risk, Percentage 50.00%
XML 62 R51.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Significant Customers as a Percentage of Total Revenues (Details) - Customer Concentration Risk [Member] - Revenue Benchmark [Member]
12 Months Ended
Dec. 30, 2023
Rate
Dec. 31, 2022
Rate
Customer A [Member]    
A 33.00% 21.00%
Customer B [Member]    
A 18.00% 15.00%
Customer C [Member]    
A 9.00% 17.00%
XML 63 R52.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Revenue by Geographical Location (Details) - Revenue Benchmark [Member]
12 Months Ended
Dec. 30, 2023
Rate
Dec. 31, 2022
Rate
Geographic Concentration Risk [Member] | UNITED STATES    
A 56.00%  
Geographic Concentration Risk [Member] | GERMANY    
A 18.00%  
Geographic Concentration Risk [Member] | Other Country [Member]    
A 26.00%  
Customer Concentration Risk [Member] | UNITED STATES    
A   42.00%
Customer Concentration Risk [Member] | GERMANY    
A   16.00%
Customer Concentration Risk [Member] | Other Country [Member]    
A   42.00%
XML 64 R53.htm IDEA: XBRL DOCUMENT v3.24.0.1
Note 12 - Net Income (Loss) Per Share - Basic and Diluted Earnings Per Share (Details) - USD ($)
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Basic EPS Computation:    
Net income $ 1,370,296 $ 2,131,400
Weighted average common shares outstanding (in shares) 14,495,709 14,424,381
Basic EPS (in dollars per share) $ 0.09 $ 0.15
Diluted EPS Computation:    
Net income $ 1,370,296 $ 2,131,400
Weighted average common shares outstanding (in shares) 14,495,709 14,424,381
Dilutive effect of stock options (in shares) 133,102 251,265
Total shares (in shares) 14,628,811 14,675,646
Diluted net income per share (in dollars per share) $ 0.09 $ 0.15
EXCEL 66 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( &!I;E@'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 " !@:6Y8H1VV.>X K @ $0 &1O8U!R;W!S+V-O&ULS9+! M2L0P$(9?17)OIVF+0NCFLN))07!!\1:2V=U@DX9DI-VWMXV[740?P&-F_GSS M#4RG@]!#Q.-8CDW.S3MP>'MZ?,GK%M8G M4E[C_"M90:> &W:9_-IL[W621A'^_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 &!I;EA4&PO=V]R:W-H965T&UL MM9O_;]HX&,;_%8N;IIU4('& MEN+1$/9N*TM5[I5N^E^,(F!:$G,V4Z__/?G MA$!(Y;P0R?2'EH2\#\FGMO,\CKEX9ORW6%(JT4L4QN*RL91R];'=%MZ21D2T MV(K&ZITYXQ&1:I,OVF+%*?&SHBAL8\OJM2,2Q(W^1;9OPOL7+)%A$-,)1R*) M(L)?KVC(GB\;=F.SXSY8+&6ZH]V_6)$%G5+Y?37A:JN]5?&#B,8B8#'B='[9 M&-@?AQTK+3"6(^O-$71J&J9(Z MC_]RT<;V,]/"W=<;]5%V\>IB9D10EX6/@2^7EXVS!O+IG"2AO&?/7VA^0=U4 MSV.AR'ZCY_6Q7:>!O$1(%N7%Z@RB(%[_)2\YB)T"QZHHP'D!?E-@=RH*G+S M.;2@DQ=T,C+K2\DX#(DD_0O.GA%/CU9JZ8L,9E:M+C^(T__[5'+U;J#J9'_( MO$3]&R4:Q#ZZCF4@7]$X7K>G]/_21-^G0_3AW9\7;:D^+BUJ>[GTU5H:5TC; M&-VP6"Z%TO6I7Q9HJ_/G.P5!A6'U&LAQSI!V,*.YH1O;^HH-)8T$O_JD*\E.WK)=)#X M*%;$HY<--0H(RI]HH__^#[MG?=+A,BDV-"160MG9HNQ ZOV\X;J*)B>A NK3 M%_25ONH(PDJ6^CFS.[W3G@X86%L7F"&Q$K#N%ECW$&#W=!$(A4PUPEL241TN M6,>=3-'#M?OE]N[;W>?Q]12Y=_>3]O"ZK:,'2M6E9TBL1*^WI=<#KWJ@NJV? M==U12!8Z:G#]G(1"!]L%R^H2,B16(G2Z)70*MXN$\XQ/(#S5(7]2PM.[ %+W M*&TK@]6:31LW'4M'#"RL2\R06(G8V9;8&7B-V[M!CFQ">6(;$2+-LJ/)YU&*Z'UY6V M^^VIMZWF5QTBN*PN(U-J94@[1M@^#-(@CA/5IN[IBG&II04+29YH!W>XK#8M M0VIE6KB@A0^CE8]3T."^3VKCZBMM/2Q0FYPAM3*YPO7;H!/>Z8S*=XD@<_U M6X/%*IT$7%<;V3',O5VX>_L@>S\*0HINDVA&N1;5'F??5.=S=J:%9=37FU(K MPRJJQMVYSG !_*"QK[JJ,$\\-;A'&A[L*35:>(S!W>MYB?9N#)6W;1E.6R"5Z9-RC0E*NVC.G5#=BNK!8 M;9K'R 1V$0ILV,>_I>FF6ZH7/[#G6$L2EKM5=QFF*W3APMK4CA$.["(=V+"E M?TMM._A-.'L*8D_?"&'-FX$6F]&48$JM/+E:Q 0,V_RWV"9,2&6$_PE6E7>+ M/8H6/NWUFMBVL':VUFA\,*56AE?$!PR[_JQG#C@EU:Q@@:ZE]29P56U(QT@- MN$@-&+;ZWU@VM;%D,63D]HA@C)M6S];-X+MP:6U:QT@*N$@*&#;W#X%4AI?- MD8T_S/Y$4^HE7+4R+3)8R651I/S+5#+O]PEZ9[4L&ZT(1T\DU&=56*\VQV/$ M!US$!PP[?Q6T_"!>H.EK-&.A%A\LX$ZF7[24C.8&4VIE2D5NP+"SWS0O=/WB M+4F\H)6/!/8(W0ZFP\'?6EY&8X(IM3*O(B;@@V+"(PW#YN]8^3'508E0(YN/ MQD(D%4,;K'G+M-B,Y@-3:F5L13[ !^6#'RQ4.93P=:KGVGG;/4H5L(S:?U-J M95B%_<<'V?_-TY3U-%$VE"E'JY_LWJ/XD^JJ7+BJ-K5CV']5I%.39(-12PU6K*)FU/V;4BLO1BCW1N6=PD MGD>5C!+QUX+:U0=&[;\IM3*]POX[L'O/Z4TC$H;H*A'J;:'MGWMTJAX>P&6U M81TC!CA%#'!@!Y_#NHXH7Z2CV6>E()2<320DJIXGLU+5JU"V*-73@APO3 MI7*]8'^%9:IA&4T(IM3*L(J$X!R4$";)+ P\U4D9T7H/6*7VFCZC82%7ZV9J MZ1KBI[[3L;*?B_:3CDX1!)R#@D!Y:F*Z).JLT%TBU=@6IZE=2\RDQW=SM=[. M-=J=KGV.[>[V&G,:QT@#3I$&'-B[;X;^4< C-!YJR< *SKEV(A:NJMUFCN'^ MG<+].[!7WU"JFKW84_[(PCEZ3Z+5I\WX=H(F+;>EY6;4_YM2*Z^@+?Q_!_;M M&V[I'&UZ*]2QVR-QQ81,'S;?$"&(MTP$E5(;G&"=V@MIC5K_]LYB^M2@9E]* M$,A+GYNOU]5O]VZ_^##(EONWB\/7WYJX(:F_%2BD+BGQ*4\/4._/&9.;C?0#ME\'Z?\/4$L#!!0 ( &!I;EA6 M0)*^%@@ "$J 8 >&PO=V]R:W-H965T&ULK9IOCZ,X M$H>_BI5=C>ZD9.(_@,UT=Z2=Y%:WTMRJM7V[]YHF3@<-X"R8]/1^^BL( TEL MW&'%BYD.2;G,KVR7'Q?;P MRTX56:3ALGA9EH="1MNF498N*<;!,HN2?+:Z;[Y[+%;WJM)IDLO' I55ED7% MVV>9JM>'&9E]_^*WY&6OZR^6J_M#]"*?I/[]\%C U;+SLDTRF9>)RE$A=P^S MG\BG#1-U@\;BCT2^EF>?42WE6:FO]<4OVX<9KN](IC+6M8L(_ASE6J9I[0GN MX\_6Z:SKLVYX_OF[]Y\;\2#F.2KE6J7_2[9Z_S 3,[25NZA*]6_J]=^R%>37 M_F*5ELW_Z+6UQ3,45Z566=L8[B!+\M/?Z%L;B+,&Q!MH0-L&]-8&K&W ;FW@ MM0V\)C(G*4T<-I&.5O>%>D5%;0W>Z@]-,)O6(#_)ZW%_T@7\FD [O?H M2_14>RC1 OW^M$'_^/&?]TL-WFN;9=QZ^GSR1 <\;63\$3$R1Q139FF^OJ4Y M'FR^N;UW>ME\"2'IXD*[N-#&'QOPMZZ*0N8:164)ZX$H*P@ ;WR^-Y="QV- BXSSJ["^%>)]QS M"O\ICE4%.B$;QA)$/Z=RH8MH*^X;@@0C(;F2;5H%P@\"85<==*H#I^I?\B-, M;54DTCJ]G8W'Z@S, ?8%"1F^4FJQ$]P/,;%+Y9U4[I3Z6,A#E&R1_ ;(4/-",,V=9XK;8%PNAX;"&X(I#Q@7G@5!XL9(=2C]C"(+@S"&8;_*AVE-RAV M>AFK6!A2B"">1_WK66XQY() :@OMJL-.=>C<#1\+ ,U"OS6#7N?T Z"?MNZ* MX93"IW2VF[%-ZS(''# M8)LM56D?Y4GQK_5V,8$9)=@GWK5 H2HG2.@.><,DJ?E) M)";Z,48QOB9EBYT7!.=VE])[1B1N2-S(G01 W"(=?9/EX/G/[66T:@O\^4'( MC?.OQ9#B(/18,*"[IT3B9*@VW0]#L;OY:,&AA? ##)1O*+9:\A TVR73'NLH MOJE.E";1'_'+8U^Y^1T?)I$./<3*P0=*S0J,;#KO*21L!JV 3T*C/ M?"R":\G3UA'-;HE@@0@&BD6T!T/J!D,0752RKR9815LP#7.?,&.#N3GNNHVZNNRP!G25^JRI+ M.0X'@G-C1*?DOXVE6Y_QT ^&U/=81]U8=Y&M85S+\J:,;:*6P*$QM%-BX,;2 MI^\);Z"<07NZHS?27;N.T8#4:>2R*9EP8^F4 M,H+IT"SH28^Z2>\+2%W44F]:V29^$6[R^/I&NXW%CL%D&EK9K(3P4@[]!5LCZS&Y21)O@MBYCV$,<;N,Y-GCXW>>'\-L5#DJZX#.T8_X(R:PVQ3H&*45 MG ZB2N]5D?P%Z9?B.:SY^A\J]Q'KC<. 9*.L1F+D1^$N#?:K42.V0H'/*Z6GM MP'(D ?QR6L/-8H.%<:B*> ^8L)UV09F,NP!UA(GKN$Z*UK9N/2R\@;,2Z\F: MN1S4YBC8')N(0S2H ,KH/ C9J)W7)C\PD')]\G T=@UJ,SN^7I M^1E@-6,_4K(PA-C+?FOWS8P>=VN_MB+B\NQUO/KER?]$Q4N2EX#*.VB*/W+P M49S>1SQ=:'5HWM![5EJKK/FXEQ&$HS: WW<*#EWM1?W27_=6Z.K_4$L#!!0 M ( &!I;EA(R84.= ( (' 8 >&PO=V]R:W-H965T&ULE95?;YLP%,6_BH7VT$I=# Z0K")(:ZII>Y@4M?OS[,)-L&IL9INDW:>O M;0A*4[*E>0BVN>?P.P8NV4ZJ1UT!&/14L]@N*03'H[W[E]\=IOE@6I8 M2OZ;E:9:!/, E;"F+3=W!:@HM5&UKW8$M1,=$?Z MU._#@2"*3PA(+R#G"J:]8.J#=F0^UBTU-,^4W"'EJJV;&_B]\6J;A@EW%^^- MLF>9U9G\AG(J"D#WSD&CBQ55($P%AA64ZTOT$7U &.G*+NL,&WM%I\-%[W[3 MN9,3[K=03- TND(D)-,1^?)\.7DMQS;G$)8,88GWBT_X+65=VT?';FKQ>(4: MJM"6\A;0!1.HE)Q3I5$#JHM[.1:W\Y]Y?_>";/-P$D89WAZ&^D_1*_3I@#Y] M!SIM3245^PME?VM\A&XXRMV9IP=(]C7WOR/V,PI?\<<#?_P.?J9U>S9[_ 8I MBM,PBN>S(_:Q0EL9S]-Q]F1@3][!;ENA-E243&S.#)",<"71)Q(E1P'&"N,D MC&UU863F8VNNH[;38QL?--ZD,:V0#^L[$<*E"NPY]=2FOW$]<'ALY>_ M %!+ P04 " !@:6Y8K1F<= \$ #]#0 & 'AL+W=OQYS5\V0A991I>Y=97>\FSW"I5I4\Q9GZ5%;4WG]JQ%SF?BH,NBYJ_ M2*0.597)'T^\%*>91[S+P)=BN]-FP)]/]]F6+[G^NG^1\.:W5O*BXK4J1(TD MW\R\#^3]@C"C8"7^+OA)W3PCX\I*B._FY6,^\[ AXB5?:V,B@Y\C7_"R-): MXY^S4:^=TRC>/E^L_VZ=!V=6F>(+47XK8F'2%N%,!1MP(]*]"N0CB@$)P5 NMH M0V;=>LYT-I]*<4+22(,U\V#7QFJ#-T5MMG&I)7PM0$_/ESK3'+9%*R0VZ/.> MR\PLKT*_HJ_+9S3YY=W4US"/D?;79YM/C4TZ8)-0]$G4>J?0;W7.\[<&? !L M*>F%\HF.6GSFZT<4X =$,0T<0(M[U(E5IR,X0;MH@;47#MA[D2(_K#526(.:5^0I#2)DG" -&I)HU'2/Z10"DZTW!:U"S#JS( $YQ@-QYK\=@HWA(23%%O']"6UQ ;Y0/*ZAQE.81BH;0)EB-'_!6RJG(O M,.MQ180RW#L)#CG,X&^ /V[YXU'^C_5:5!QMI*B0:*/;!1KW-YBE:<""#FA? MCM(@#.D :-*")C\!U5QR.+5%0SPY+ZHS_R0.ABB.NF>V+T8H)I$;-&U!TU'0 MSWK'Y5V4:9\RIHQT(/M2+"0T"-R4!%\3.[YGYU<<:CV_\.KLU9G/L2.Z(0DD M75B'($V2F+%D />F#I%[< '0)*UC8?N$R0JB;E-H=Q$B_9!)*$ZB+G-?+HX8 M'42F5V0ZBOP7OYQ6)Q[MY782Q)BFWN@&A20II] MAR #F*ZG6",8K6"%U2Z#TS$I:I2+LLRDLB)VU+WHS8SQ#2Q^["5CI]10X)%K M42/C5>V;;/4[]0P'BH==.MMJ/M'>:#[=P[ MXT_F;F,;]*N9YF+TR78Z"I5\ R;Q8PPK+YN[1O.BQ=ZVZRNAH?FWCSNXGW%I M!.#[1@A]>3$3M#>^^;]02P,$% @ 8&EN6,@/#0'7! VQ@ !@ !X M;"]W;W)KS9P#DA _4MLS M%]O,]>$ZF;C7/G3ZH!@Y9@+(!W*<_/<5F! C83F^H2\Q@MUOI?U6JUUEO.?% M8[EA3(#G+,W+B;418GMMV^5JPS):7O$MR^67-2\R*N2P>+#+;<%H7"MEJ8T< MQ[,SFN36=%R_NRVF8[X3:9*SVP*4NRRCQSRQG&I&+&4K44%0^?/$9BQ-*R0YC^\-J-7:K!2/GU_1HWKQ DKR)K*0KY-9%Z8KH45# 9*:($? V6 M@J\>-SR-65'^"A;?=XEX 2/P;3D''W[^.+:%M%CIV:L&_>: CDZ@SWB6R?"I M8<$_7UEVSXI_>V!F9IC/<9Q4<4A3<$N3>)3D8$:WB9!C ^C<#'K'A-QX+ 8+ M6N1)_E":L!9FK#_EIBYWQP+G MAJ8T7S'P0;JLW-""E1\!%6#.5E< D4\ .0CVT7I ]6K4*CD]3:&+B>,'WMA^ M.B;.:+Y*B]?EEJ[8Q))YKV3%$[.FO_P$/>>W/L*&!%L,"18-!-;A$+<#DA$Y2U06-/%<(@"&$"G*SC7!4?(0\1S0]257/1)$DBZ4E'/_##T/ QA M*]CQD=OZR#7Z:%G%]J@Z8F*PXID\=TM:GUSLN7IF?;XR(EX8(#-7VS"(.)B$ MBC^'M+D8$BPZNX .+Z3EA1AY663;E+\P!OBVH8,5JZ1DY7%&ZB.'Z G("7U' MB<^9T?JEZ6=(L,608-% 8!T*O99"[\WI$TAS=.Y#5TO4#+*W#BM M2^G0;8YP@#%6\E//U(CONE[_+O!;%_I&%_XA.X0DEWFI-P\9=2_-0T."S7T] M)\AT[:J[<#&DT>B\T0X'02DCRIA0DLU"C%X<^\@("E6RD"XZ0"^49J55" M/9*N$[A*#1;I8C+5.(3 $\D&.F\MG3-X,=1 'OM+/6L;D<[.=%Q?3>_S'CDU M89P7BH,:[+:3&NBXR0S!:A%NFZH NQ1TX$^EO;",U] MH[GJ@'HKICD#GUODO$<$8M]!H:=ZXRQ6] ZLKB?>FD-H[@Z-9[]3GR&XUT=Z M4P3E&0+=0"UIS1.X>,\/VB8.BA8-A=:E\JV?A.:&4BL!3/21GBTOZ5-K@!XY MUX&!$X18#7==5N+>/KGFK:_^OM'A( M\A*D;"U5G2M?8A2'F_3#0/!M??-[SX7@6?VX831F124@OZ\Y%Z^#ZC*Y_7_& M]#]02P,$% @ 8&EN6$B1+5B/!@ LAP !@ !X;"]W;W)K"^))1\>?^?Z'9+S1ZF^Z8T0!CWE6:$O)QMCMA>S MF4XV(N?ZO=R* KY92Y5S X_J8::W2O!5N2C/9L3S@EG.TV*RF)?OEFHQESN3 MI858*J1W><[5X5ID\O%R@B<_7GQ)'S;&OI@MYEO^(.Z$^;I=*GB:-5I6:2X* MG9^2(? M?Q>U0;[5E\A,EW_18R4;@G"RTT;F]6) D*=%]9\_U8XX6H"#@06D7D"Z"]C M EHOH*6A%;+2K%MN^&*NY"-25AJTV0^E;\K58$U:V##>&07?IK#.+.X,-P+" M8C22:W3#]09]A-!J-$5?[V[1VY_?S6<&?L=*SY):YW6EDPSHQ 1]EH79:/1K ML1*K4P4S -B@)#]07I-1C;8^H]PLB'J$.0#B8/Y;']L M05^.8(J9YS5R)^#\!IP_&IZKU=]0.%52&PG-)I%%DF8"%0UJ^SZQ4=PJN4\A M2=']X>5A],\9QC,I._%4T'@J& WCW88K,;5M<(7 +< -FMONZC*ZTA0!UQ<+?>8SXH87-_#B47B_ M ;LC\*/F4!/0]:$&(//-H72L^+Y+M[9V7+#C'IXNXK[$E X6-/9:EO+&.^Z& M%P]"(PN\K5*M!92X19VE_#[-ABNV5G^FDCV7ME-G'%$V'HW?59+(G6UN4!(B MW?-["..;GR*"\0=D%%\Y>W*M\R0R <8XZD;0(8B]&&H]& @B:7&3_XQ;FHU0 M3MRD!R?P" N[?<-1)EU\*O90#E*E[E*N5Y]TO)A",7)R,ETIL>0JE^V0;N*@JHG0H3)#0API3EXH3/G/XS<=> MS[]].Q.-$ M"2C53K0N=J)T41\C40]E7PY0^G[H#Z!L21(_QY(U[R@!*;MS^[)/>5/"@ACC M[G3FD,0>\ST\U,U;>L3C_&BGQQ=-7TX#^J2(21 RO\OM#D'J^Y@.%ES+GSA^ MU?R?0H?0+QD<\2@QOYJ&SJ3M=$O62#;?]YE4S1*WU) %#')&0 M=>+G$F306,.!\8>T!$K&"72I9"+$JH[>Z\<@TJ?(+HLZ1(;G(-)2*!FGT*9R M=KJJ&E?J.2$[Z-'M=8<@HP$=]'K+H^1UN^9U6G#8ESU?->2LV^9S:3OU0DO6 MY#FR/LX]D6\S>1 ":2.3;] #[7[&'< ^_S), [\;/@=-^R$;&MY(R]-DG*>7 M_&#+P>X;"FG$*%\3!P]##O5&(I><'WAT*-5:NB;C=-TGF+>V8-[9BG&EG=,( M%TU3K\N2#C'L88;9@ TMF9-Q,J^/6)2 %FOW/:4]MC65'VQ_VD/C*MQ3'>ES MM\^"*.QRI$..$APP-C#7D9;CR3C'WPS!1=R@>_&0%H6- ?3=@^#.R9_T^3LB M01#VB-XAZ'N^1_%0'K5$3\9WRJ-&"#MEC\#O;X6C""J6]#+((=BQ\_24LF5H M.KYKOMMMMUEYNLNSR@3;?B&9JN-_:#7N4\JS;I;/I>W4!RW7TW&N+T-8;H_ MZ.;T;^A.9^Y@H:M42;6H-)['P(F55V050]&;LL[IGMI MC,S+CQO!5T)9 ?A^+6%FJ!_L#S37E(M_ 5!+ P04 " !@:6Y8'M9B]B,# M "P!@ & 'AL+W=O%)F.M' ME,C,MC[!DV:6P#JK('-38M MLNQMVBCCDL6LW[L.BYGOR!J'UP%BUS0J[)9H_7:>Y,GCQHW9U"0;Z6+6J@W> M(GUKKP.OTCU+:1ITT7@' :MYURAM4+$,OX?.9-]2 $^M1_9/_6YO #/"[CRCNH('UV)Y7."E+7L!16/@I;%4<8/J"^+)XQ 'CX9IYPVRL(M*4)^6!0/)3S0G1ZFDQXYCZW2.$^X"2*& M>TP6KU_E;[/W1\2>[L6>'F-_?AOP\RL^$"RMUW>_#BD]RG58Z24G#OEJ L\C MF0B*.X2[&GP%QFFVHG$;T-YI#$[JURC'72IE$Q_E2O:[1WZ@(;(%J^O;"?RH MC44QH581UH@.+K]>W#!-TUJC&,IC1)AVL$,5X@E0K4C@AKA3*R@]7Y;S!&=9 M!OF[? )7?\.:X8AWNHJ[F:6S0N,(0^A:Z?$(S%ZB5;O((3M;@JHJ;G_P70"U M-E9RE51DV@W-A0)H)!OY6!YKXE!S+_.)]I$B7%:P12D.3Z[U;Z%C#RWU^T\1 M*7W':;##$)!KU\G,6T?B=.6U#23,?@*FXA-=PP@;.;7&&*O._LMB-LY41DO= MN'J]?H,<+6#;\1OFC)F_5J$YZ=67)HZ%$(62,\_NH(;*Y!>09WW]O$,X]%;3 M)U.$Z[+I9V5?2$?#0-GO[L?QQ3"%_KH/L_Q*A8WAH!8KAF:3=V\2",-\'!;D MVWXFK3WQ)?1FS;7'( Y\7GENVW$A ?9_4HL_4$L#!!0 ( &!I;EC?(1U/ MB ( (H' 8 >&PO=V]R:W-H965T&ULG95=;YLP%(;_ MRA&3=K4&0C[7)4A)NVJ5UJE*L^VBVH4#![#J#V:;IOWWLR%AJ92X56_ QYSS M^'T-',^V4CWH$M' $V="SX/2F.H\#'5:(B>Z)RL4]DDN%2?&AJH(=:609$T1 M9V$<1>.0$RJ"9-;,W:ID)FO#J,!;!;KFG*CG)3*YG0?]8#^QHD5IW$28S"I2 MX!V:G]6MLE'843+*46@J!2C,Y\&B?[Z8]F 0?8(XB@<>WJ#S.VAX@[?[A>\V!ZX-\J..6][P.,_],^>Z(BG. _M3 M:%2/&"0?/_3'T1>/VF&G=NBC)S?$H**$P1H5UR#S8^\)[M?X9&#)9/KPYY@# M[QK'';C=@,_+'JQ+A O)*R*>H209" E3R&6M3 G]R(8&/#Y'G<^1U^>J9FAQ MF]%9_X6S128K@QG<7S%2'/7FY^:$:?3H&W?ZQE[.#RG.WJ_1SWY-XZ33.'G7 M'KI/APKBE^A'OR9QVDF4C=$%51H8)C;TJ@WL1^@:CM_&QA9-=UV(XWMW&PO=V]R M:W-H965T&UL?57;;MLP#/T5P@.&#ACVH-F,+E41/DIOF[T?)KM=B:5YB7RK'PX2.?36I2X1O^]7EG>I3U*(34:)\F Q3=.?,#+0T[5<\=GEXYG#VFD/6.621=QLHLKP47LRGEK9@@S6CA464 M&KV9G#2A*&MO^5:RGY]?DT<8PP>X%KZQ"+2!1>/8R+EIZCE ,$OS#FS1@F6O M@(TSN"+C*P>?3('%2X"4F?7TLB=ZB^P@XB7F0YB,!I"-LLD!O$DO=Q+Q)@?D M.O $GZ41)I="P=H+C]QF?J_@%NYH/UQX,>>N%CG.$GX2#NT#)O.W;\8GHXL# M9(]ZLD>'T.=/A8!+=+F5==O&IH"%<-*%4JU"4,,"PLVO6WSTL%"4W__>)^5@ ML/U2WG%KO-_3&K!$6\\J0HE)R2I=DZR&\\Q7"VS=GV?CD8DFZ%F87=Z<7 M0+:_6*V[P_=06WJ0!?N+XH'K@07WMD<;ZN)(-4%7+%? ]5885Y-MY0Y -/PX M*#SJ :!!6^X&D'-0]C)E*@WC&/0#\&$$D-:-D7ET=>R+EJ+:07C"/&,P)I:D MBM]2.(8,9.P]\M"#;XUEKC+,K?\9 A=#H^<3OK+R,;(@)[G5AO 3.8*3)1/6 MPC0;'D,AF2$*SR;5O?%7_-N5"XL1U($ZQ9X0M%^_HS?39'-"*KC5+HCS_KCLN(_%;3!@.\WQ$^UVX0 _=_4 M_"]02P,$% @ 8&EN6%A=4+F=#@ 328 !D !X;"]W;W)K&ULK5IM;QLW$OXKA L4,2#+MO+27I,8L-T4ET/2&E%RQ>%P M'ZA=2F*]2V[(7>F=6;G0_7<6M,JV[K MRL6W!]NV;7XZ/H[%UM0ZSGUC'.ZL?:AUBZ]A+DY-5QK:T[ M.'O#UZ["V1O?M95UYBJHV-6U#G<7IO*[MP>G!_G")[O9MG3A^.Q-HS=F:=HO MS57 M^->2FEKXZ+U3@6S?GMP?OK3Q0M:SPO^:W!" M"IG*%"U)T/COQER:JB)!4.-KDGG0;TD/CC]GZ;_PV7&6E8[FTE>_V[+=OCWX M\4"59JV[JOWD=W\WZ3PO25[AJ\A_U4[6OEPF#!>LM&K.7/NM5G;X+?J4"K(8T^\%'Y:2AG'3EEV0;47ZNEW3B[MH5VK3HO"M^YUKJ-NO*5+:R);XY;;$R/'Q=IDPO9 M9/'()J<+]=&[=AO5.U>:+)R7^;(JY>GXR4XN3Q?,GY#WO MS?"(HDWZ*C2[,VP.D2C3A MQAR?[D]*WZ_[,\3( MX?\0(XH?>*8/U:6.6Z5=*1_>?>WLC:[(JNKSUJA+7S?:W:G"(\U+$Z+25:6V M2*7J3E46JTMEW8V)+7L"R=%"&A*@[8)M69-V&XQ)^ZT.LS)1?3*%P5ZKRDQV M"J;Q ;(B2^P<,IHABY7) M"A+PE*IK@&-K )F'H6(7 FZ69';2..D2;+QF>S/>)1O%QA3DK80HL/,,1L;' M ]6J@W&E;ADX 9?TS(/N2TK1:(\Y >81&H @2DR!3ZQ-9U@W<$91IE;;-)" MRVR-\_*/+OL-ZTG'P7H:3Q1;'39X #=19(*6#:WCI;A@/3E?[;:VV$YV7T'1 MFNQXHVW%7FNW\%NM[Q2 P=0K:)O!873EE*\LYGVP/%.G:F_$'/W&)SZ/9+R' M(DG*0[E\+PLO#M5[Q*TC$T/3\6B1P*7.PP2B0@ZT*'UOUC/_:['2<%ZM= MJ4/)]V,R" ?1K;@ ON[@1[Y].%,ZHC"U)J!>4-0

*6@#;PH-/GBW.?J !24<<]Y GFABH]?(!5%:_2LHK2T0Z2=EML3+H5 M-A1=33XIC.1'M#"_1"]BVFU@E0X>XJ"D0#)T=H"'1585*8'2/9@DA#O*80&: MR%'L?/LMD3Q+1UX?(G818)VA&/9 9MXC7[,,<'3Y3\,91; 22LY#!E2)#5CP MU!Y1*E.R#"AK67"44FAK3R&$5XD9Y(>-V##@6FWL!?"13( M!H MBF!#Z5T83N9 (9&09U79C9AVCB1*%HN&_*K5&J2O(@P9;=&.5-IB/W-K MBDY@"0ZFI% ?=<3_:HDZ%-7YH,\S NW%R>N/RW/^=/KZD#$]"EQU]2J />KQ M$205V[N&O .6JT:$E-VTU7,XP0E&/VD'* MXM$N=GR8A,2$NV+O'6IN:YQJNH X)R^PSJSM^#2^7C'R2+4NKIW?5:9,59!7 MC[S$?B6?2K2@<:!4@0]FXNTL-7:KFHNV6E4=0,:2+*2HIA):=D4[F_A^*+;J M:TJH<;M$DY=H]Q1V)9!H& F$BYKYIB->T0(>6D6+B MC^RL^8.$NS*!:QV)_6U(@.R//A_1EBBC$4E9U-0" Z=BQ6!V"[VH$@?MXAK: M)<-1Y2>QTG24I*+2_>?YIF(@6DK))Z MG[RC"E05=(Z*:*8E..W1G\ ^&[5/N(=.?" 8Z$E1@4#"8;/8<=6HJ1.I[KA* M0M0=GS8=QY1SM=S:IF% QEY \[+B+\*F*&U(?,K[Z0DEH*(PMV X23_O#4E' M-:8+9+TC@ =@&%4 5/J.$AZ2-IVFK\;$H5 D9X%NN2)1LYB]6K*RM:&RE;E> M=L@7AAS*G+V(-#Z#7Z\9I5%R4@D2$I$#\S,%CI9V^@K4<\HA0MO1XH87 MB\$SHV:Z(Q$J)3$I+B6*G9P#G6T ?!**R6Q2&#LCH[E-19?]GF([D,Z]=015 M<;N/LT1(:^;YT!T+XANYAPGQZ:CX.(40M&L!&MX.6 MS.^+HH.1ET2+IJID+>^9@)@"OM'"U&\$83. 2RI%0ZES;&Q:?J/14G'RL2]G MPL*2I!548GQT$WTSR7PL9KM(@62LN'@[:G,D"KQBV_!T12X MY0SYTAAIW[BO(S&]I=?,GCA5QS:?.KP_^L"4>Q-,MTX)]?!XS!)2+IC;EFDZ MTPR>>I."=L8V1BL1]TH<#LW"2,V M!<& HK\)&IVC>214>Q2,TCD>*Y^HYS;I;*AGM#@>/GD2RI0E/D=&RVDW MDWA^[#V3RXI2&^JX@UIY4]Y1=V=;]$Z-R_5L!-\(JM/,LE7ZF88V7-L$X5%HN MX6@WC2[!#]!OTYV]O)$4C#TS(DCD5-HX"L\1*;0NY>0LZ\\XBGGZ8;TN!L:J-#81WWF0CM>WN4\YLZ= M8;,"#-J*QE^U 1=DB^AA3LF]O8CCNIUI4DOL2YX@OQ*1(&_JVSP4&,NV]XM6 MCKZ^1J31&#U/462^=H9+)[G'U(T/5'M+2[1+;JQ,NS,I4M;]*%IFEIF3#GIS MV69ICVE'*ZC(UXWD2:9D,X8AW1H<^MP98BOT;LI%) M0R\U<3S/@_NAM$-)I/-$)+]G_\/0WSP]_ M.5]># /$=PR9%$O_T*XCP)=\?TY_3U^I4WSX*/B<)]:70I8_\(L4HB##[N]! M.T(G&LH0L$T&NSY47^3X[_J>)I'3*Q00'?J1_+YWG RCS73=7D];EUU*Q35- M^$8V1!S:AMC!0!MD2C;T]5^*F6_:N[OZJ/U%\CB:A.2\M&!^%9TR//R"XE3:T31.TU M5!Y5C;1(E%SN]62JIP\C7!TJ?D98;IU'1@@T@: 7;!*CX]>,_$3BXJG[C5W% MD65N>:RW4=R2Y%:]'+WYXU%*'FP;MBHS37HM(8%6'2*"(KTW_!>2^.B=*_?6 MX+6LH40'V>#!,L_U-.KODM[?EII'S'T=?+E0+Y]+;7RYD(J([[)G?2CE[^B" M!Q57TBU.66 B.3'U8U$.7#>5OS/#*+!OP!^,CF@JMZ,\3F^MVCLF^3G;^A$) MB6?0EQA8:]#R- Q(XTJ20L0DO12[]P*F'W$F,IS\-,J>K<^Q-GA_-&)9?^^EY#!A[6Q+5N;1G/T MP@F^'JPR2^%OQ\.)X2EFG/Q2+(?P)&A[4Z?WFJ,'*6N")<(YW]\"7%2ZN#Y: M%EM/()3*,?7T=,C:HU4,E5NY0%%Z4HO3[GQZD4EXON\G(L>CG_@ +3?\0R9JP8 M\FN? M_FK_6ZES^8G0L%Q^:/51APT"6U5FC4=/YC^\/!!RDK^TON$?#*%51*O*'[=H MG$V@!;B_]N!)Z0MMT/^"[.R_4$L#!!0 ( &!I;EA+E'50PP( -8% 9 M >&PO=V]R:W-H965TOV5;>"^O$._=KE3+C-N\%+5CZ*RR[&7>5#AG*]K.U6; M[[C-)VWQ2E4;]X5-YQLG'I1K8U6S#28&C9#=G[]LWV$O( O?"6#; .9X=Q!2==%$3LBV*/=6TZF@.%O\4!8AAL]P(Y]16J4%FE%@ M";D]#\HMRJ1#8>^@1 QNE;1+ U]EA=7_ %1ZGFQ':\).XIXA>49Q*$/+&3Q M$;RXSS-V>/&1/ U8!=="[6KS"E3!EK9CP M*57^TW[EX<* F@,]/C8SU'T!]BR1L[#.[*0IWU!'6M3TJ 9.@/G9(/+C.';R M($G])&'P2,,)0L)*JQ*-@HAJ(ZB5*U@H51E(XZ&?#U-( M6>IG0P;?M*+ M\=)_"RGR_(04C^,26,#F':Y :TK4#.C:C0ERA+A-(Y"/Q^$ ME/!IE&9^SE(2'Y2E3C@AJ#2+_#P.G9P-4S\/(SA4RF!OUAK4"[=1#)1J+6TW M=KVU7UH7W:R^N7<;[Y;KA9 &:IQ3:'@V3#W0W1;I%*M6;G)GRM(><.*2%B_J MUH'.YXJZ>JNT%_2KO/@'4$L#!!0 ( &!I;EBNVUBU*00 '4) 9 M>&PO=V]R:W-H965TY(2:) M- F#%HF;!F;G8;4/';N,Y7;2;!RKCCO=&R\PDS8MBXPIYM4FTPXVIIEQQ8&1>*5,M6)PG#8R83, M@^G8G]V;Z5B73LD<[PW8,LN$>9FATIM)T VV!]_E& M=IT&)9$9YE;J' RFD^!K]WS69WDO\(?$C7VU!O9DH?43;ZZ221 R(508.T80 M]+/&.2K%0$3C[QHS:$RRXNOU%OW2^TZ^+(3%N58_9>)6D^ L@ 1342KW76]^ MQ]J? >/%6EG_'S:5;(^$X](ZG=7*Q""3>?4KGNLXO%(X"S]0B&J%R/.N#'F6 M%\*)Z=CH#1B6)C1>>%>]-I&3.2?EP1FZE:3GIK?:(?3A%*Z1?+/CCB-0ONK$ M-<"L H@^ .A&<*-SM[+P+4\P^2] A]@TE*(MI5ET$/$"XS;TPA9$8=0[@-=K M7.QYO-X!%RTX#9%R%]@)1+0.?H$P"4N3$G]RKMA&V[Y@I+.\C0%%*#E8()B M&,#G0AIF+7,O#[EV_H_%;[5QU(BIB*62[J56B0$B:9)>LLE1J=>>TZ#)\_G47=T1=+LH5T0LE_D,+2Y*5B+RRC M4H@E=2+*I@^31!(5Y\ MV;)N'XZ@.^RW1F'(VP%M!JVH'U:!CT:M :T?-0&2\XFT,<=DCPL-YA'T!J-6 M_RP$KL)SN,J*DA4H9DCQ=G <#?SU"=Q7\8>U4"4R];>@.^*$VHM:(9&<"47] MA_#@7YNY$M;*5,95\N:E,8SX7ITZRZM?ZWQY2DRR=S+=466@E4\/_W\QN14K$E]R<7-;]H.QELF^4/E8.&8TIWY>7@"E(5WJ-L\@.&F^27< ML#V$W]X. RI02^GBJIYS&5_Z,KY[XW9,0E[&EWHA9 (;JM:C[C"B*J\*TA/@ MDG<;5&O<4YZ[DZX_B=KPS3K?HTGE*+5J4T%49U@#4K1\:[B/&K]%DR.FBN P M<.<==7L[7C2MC[K]W5ZO:]Q=+MJP;]QV7CV%&9JE?_"IA3GFU:O8G#;?%%^K MIW0G7GV0W BSE+DEDRFIANW1( !3/?+5QNG"/ZP+[>B9]LL5?1>A80&Z3S6] M//6?6M-_ 5!+ P04 " !@:6Y8\>(PO:D$ "@ &0 'AL+W=O M- MTNXB6GF_.1L.7;G"1KC8;%#3SM+81GB:VGKH-A9%%90:-4R39#QLA-31[#RL M7=K9N=EZ)35>6G#;IA'V88'*["ZB4;1?N)+URO/"<':^$35>H_^ZN;0T&_8H ME6Q0.VDT6%Q>1//1V2)G^2#P3>+.'8R!/;DU9LV3C]5%E# A5%AZ1A#T=X=O M4"D&(AK?.\RH-\F*A^,]^OO@._ER*QR^,>I&5GYU$9U&4.%2;)6_,KL_L?.G M8+S2*!>^L&ME\R*"W.AYZ,L!+_SS M!>\]+)0IU_\^Q_U%].>Y'U%>',.AX:=Y 5]6&):%?@!1F8TG,4]K%*,$HO#] M)&RY@BS$+8G;'8\:EE2.-$NF\)4RQ#ZJ4:"QN:65?;!CF.^[!I@E4%&4:R!; M?5E+3]8=[SW1A9M0F$2K'\SOT%+#@2ODKB5U#?.ZMEA3[.'=/=I2.G9*>TO@ M6TJ+CS24U(?*]C0<7%I9(OPEEPA'#RBL.X9O0FT1/F^]\T)7#"H\W&(M=;! MU%@0IN/1($\2> 5IG$_@ T60*65Y/BBZY6G2LZC@:)2/!@GM'-/>*)Z< C6C M)4I6.DJS<0 [;O4RTMM(&W:* R4:_,0+=?7(*,EZT^,QC.-BQ&,"S@:3<0J? MPSD[P):3N%7($*Q[PCCY-!^,]QZED,?%*5L=C*;3P8C&G"%+(2W>4E-ELC3*J="Q>$@Z59BZY@ZKR^4*-%Z-(B\ S)Q)).UEHN9

SU32=?=Y&NMI8YA=2D3WKV.(0KZ=8G2XL(DF2) MKP?+T%F<9Z^I1^=QFK^F@!8%S]+XE&84/(:BD.(BBJIXI@^2%05)/2[^?ET?@QE\,K!*\H^RIHL'HU@ MKE3O-!5+[_A.^A6=^SZ/."!<1/B=*XP.LC\_*O,UO49Z&[RQY0ZA'OCD2M,T ME")=$W@F5^(?FI+%TE $.=*OTB0?3*838L&3(AEDQ93[1HO5WGWE88_#>QZ' M8^VC-'C:8P;P7(/LVHA9*C<2! MPB6I)O&$7A.V?6^T$V\VX8Z_-9Y>#&&XHB<:6A:@_:6ARZZ;L('^T3?['U!+ M P04 " !@:6Y8)FRIR#L# #C!@ &0 'AL+W=O'H@\4-;:( M4*26I.+D[SND9-5MO7Z1AL.9,^=PJ-'JH,VS;1 =O+92V774.-?=)HGE#;;, MSG2'BG9VVK3,T=+L$]L99'5(:F62IVF9M$RH:+,*OD>S6>G>2:'PT8#MVY:9 MMRU*?5A'671T?!;[QGE'LEEU;(]/Z'[K'@VMD@FE%BTJ*[0"@[MU=)?=;N<^ M/@3\+O!@3VSP2BJMG_WB8[V.4D\()7+G$1B]7O >I?1 1./+B!E-)7WBJ7U$ M?Q^TDY:*6;S7\@]1NV8=+2.H<<=ZZ3[KPP<<]2P\'M?2AB<R@46#XPQS8KHP]@?#2A>2-(#=E$3BC? ME"=G:%=0GMO\HAU""3_ '>>FQQK>O5*_+=I5X@C>!R5\A-H.4/E7H+("\44 M%TS"DV,.Z9*YLX('N/EY./^]W-J.<5Q']$%8-"\8;;[])BO3'R^0G4]DYY?0 M-]00W1,O>&1OK)((3-53EWX6K!)2.$%Z'H3E4MO>(/SY*[XZV$K-G_\ZI^=B MQ?-ZOJ/;\?W_;L?DP*.#.:!V85NAF5IVXLF")Q_+$CXJ+GNZNR#4?]*%A:M\N0R<&*F% M\8" YB)T=*^(-\G@!FOAPAVKD)*L1Z#XCAD'>@>$!5]Z1IU[&W9I@EAN1.7# M*OV",^( K"80/[,(QC54>BP6A_Q[W79,4;ZB:C20B"U5M$RB#W2]4=;S]Z&L M]0?J"U]EZ3S.\G+@2VQLL Z-X VI&7C#@:B.I GA)Z9Z&M2^7?,9G+O2R9%$BN?H M4"*5;K5YMB4BP:Z2RDY8253?1)'-2ZRX'>@:E=M9:5-QIBCU=L*&;.]8B'5)WA%E:$\]2H[=@?+1C\XN0:D [<4+Y1WDBXW:%PU'V11/"%;R'!6ZTW BUAL\N M!/0*[@P6@M*(W#$^.,H[RFE+F;Q".4Q@IA65%CZJ HM_"2*GKQ>9[$5.DY., M]Y@/8!2?0Q(GHQ-\HS[I4> ;G4C: FEX$(JK7' )3\0)7;&1/99P2S<^3N?[ MYL;6/,<)UOG,57%TP,&TOM@;I M.M3_4I/KIK LW?>%Q@>X_95VY= 9_H#^0\S^ %!+ P04 " !@:6Y8UN*. M LD" #_!0 &0 'AL+W=O4R$5S@W8=5D*\SK#0F^F7M_;&1YEEI,S^/&D M$AD^(7VKYH9W?H>2RA*5E5J!P=74N^J/9Y'SKQV^2]S8O34X)4NMG]WF+IUZ M@2.$!2;D$ 3_7O :B\(!,8T_+:;77>D"]]<[]-M:.VM9"HO7NO@A4\JGWLB# M%%=B7="CWGS!5L_0X26ZL/47-HWO(/ @65O291O,#$JIFK_8MGG8"QC]+R!L M \*:=W-1S?)&D(@G1F_ .&]&2XRC^J@EA!&?@%A;F MXE4L"YSXQ-C.PT]:G%F#$_X'IQ_"@U:46_BL4DS? OA,JF,6[IC-PJ.(-YB< MPR#H01B$@R-X@T[IH,8;'%%J@33<2B54(D4!3R0(^861/22X@8L.P[EF&=M* M)#CUN!LLFA?TXO?O^A?!IR-DHXYL= P]OM$&EP2_%K@EF!4Z>?Y] MB.I1L,-43[GJ']Y6'>X4/ B3Y"[EG'C*I4EAD2.(+#.8<;+XZ=':2)(;.V*CRRX0"^G\!4/520=A>&=AI0L>#78,C^BFB%092#5V MI.K20+IFV%>HT$B=PNU/QRZ"$XA&O8^746L8LF'4ZP^'<(_6LA*^$RVQ]33L MA5'(6A>:N.9S([GXE5OM+CB!8=0;C2Y;#[F+Q2V//HM.S5N1*:> 6;J'Z3XA M'*JXO]>4)9JL'CT6$KU6U/1G9^VFVU73U/_(@B0T)*$"H&7UZWL 4IF%:FTE&_%)DVGKFNOMM:C4YG(0 M#78;G^5R9=W&:'JQYDMQ+^R7]2>-M]$>92YKT1BI&M)B<3FXBB;7B9/W K]) ML3%':W*>S)3ZZE[NYI>#T!DD*E%:A\#Q>!0WHJH<$,SXN\<<[%6Z@\?K'?I[ M[SM\F7$C;E3UNYS;U>6@&-!<+'A;V<]J\XOH_4D=7JDJX_]IT\G&Z8#*UEA5 M]X=A02V;[LF?>AZ.#A3A"P=8?X!YNSM%WLI;;OGT0JL-:2<--+?PKOK3,$XV M+BCW5N.KQ#D[_:BLH#&]I;NF5+6@!_XDS,7( MH)C,H>YKJ#82_ 1(P^J,:N M#/W4S,7\6X 1;-H;QG:&7;.3B+>B'%(.QAXO/N&H(:OHO6QX M4TI>T;WE5B#![+,.=W#)\W"N5B9FS4MQ.4 Q&*$?Q6#ZYE64A>].&)OLC4U. MH4\/P:!;:QIQM5KU7C6"&U M(-E]LK!$/*$3&$%G,]&(A;3GA)Y @IB[G08/XU%5$PCL981 '+PRX4E*29__7RQ\K76CU*WPGVZB=4L"#.4T#D M+*-;L1 X-C]HB=,\2,.]- [&B-E=\XB0*;VE(L%& M2D489)"X*DO=PLA*\IFLI)5(L;>4!F$>P0-D(DK1ZXV2&!1&B,LX2/"\X6L) M2/6?M:/\FQ,S7J'AH#8L MS<12-HV+#!3YHCDVPZT+!CKS[]*GST$ZV^?E.9WM4A'+73:>T_5!EVCF.RT= M;R]Y?_=CB<.]N5S E>%"ZUJSP.O5>O:@DN7UL*VV9;X>EUMG4-.X,OP?DB+ MOOH,JJWU"7%46-I5(*Q"^)"DI8-'2T86N(^]'(CEN.\-[M5=/#JBH>:8:I?V M\/.@QX._IB1"86>QJ\J\"%B4](4/%1T1 -T9N6/6-84T8TB^/ C!29]3B$<6 M@K8P*DZ4^@,L=%V3-]LWKPH6Y>_,L<\+I'VS-+X_FG;V%^81Y[06CVYHX0B3 M>.*XVKLR *<[X]PGLS/=<=[2,_=::.CJ:,6>NEG*Y<= M2))N -GO[L>WJVYJ.8AWL]\'KE$8ABJQP-%PF&-:TMT\U;U8M?8SS$Q93$1^ MN<((*K03P/>%PO7>OS@%^Z%V^B]02P,$% @ 8&EN6 1/$UYK @ ;P4 M !D !X;"]W;W)K&UL?51-;]LP#/TKA(H5+;#% M'TG;H$T,-.V*[= A:+KM,.R@VG0L5)8\B4G:?S])=KP,2'*Q28I\>I3X--EH M\VHK1(*W6BH[9151_ M-=ZAE![(T?C38;)^2U^X:V_1'T+OKI<7;O%.RY^BH&K*Q@P*+/E*TI/>?,&N MGPN/EVMIPQYPQ"!?6=)U5^P8U$*U?_[6G<-.P3@^4)!V!6G@W6X46-YS MXMG$Z T8G^W0O!%:#=6.G%#^4A9DW*IP=91]TX20Q/ )GI"$07?>! N^%FII M82ZYFD3DMO')4=Y!SEK(] !DDL*C5E19^*P*+/X'B!R_GF2Z)3E+CR+>8SZ M8?P1TC@='L$;]DT/ ][P2-,62,.#4%SE@DM8$*?0O-W7< LWV@_G=7-M&Y[C ME#EA6#1K9-GI27(9WQPA.^K)CHZA9SOW,D.%I2 +OY[QS;E2YZ^_]_$]BKB? M[YF?@O-#4P#/%<*=KANNWL$V6EEM+/"#Z6?D\D]/QFER>>,#P;RZ.8>5&PD# M?K4Q>BV\MBWH$A:=2D=QXF[:3?A[N&Q(/D IC"7OI9TY@'W'&NV(H$:S#%*W MD.N5HE8/?;1_36Y;$?U+;Y^B1VZ6PO&26+K2>'!UP<"T\FX=TDV0U(LF)]!@ M5NY%1.,3W'JIW81UCM^@?V.SOU!+ P04 " !@:6Y8K>/X"B@$ "S"0 M&0 'AL+W=O2 MY=R:M0W8WDOW(6V09-N'H@\T-;+84*26I.+X[SM#V8K3.D8?"MB41,X.[ E2VL?^.-+,4DR)H0: M96 $08]'7*#6#$0TOFTQDWY+5MQ_WZ%_BK:3+4OA<6'U[ZH(U22Y3*# 4K0Z MW-KUS[BUYXSQI-4^CK#>RF8)R-8'6V^5B4&M3/<43UL__!>%?*N01][=1I'E M!Q'$=.SL&AQ+$QJ_1%.C-I%3AH-R%QRM*M(+TU]L0!@.X1TLK)%H@A/L+0^V MA(7#0@6X5?YA '=J952II# !%I$7.@_"%/ 9['T7\@/($1MD \BP?'<$; M]]J3/3V&/GT1SQA$^*"\U-:W#N&/>WP*,-=6/OQYB/E1[,/, M?^ \^O'_SJ,]7ROC@VNCLV%-8A6UDN5?5-X0*J1]ZT:8#8='_HN"["@X]@*M M>N4#-$X1;B.TWD01X:M!' &_M>I1Z+@1,R.D JF!2-ORE$.)M+[4> +W>SMS M#PST]QU*@8WUBN05-1_P:\1FAS$@_NAPN8&R-05M0A$1+?F"&,M(J+:/6+ F M<71=@C')[_*S;)!EV8M]*9+(*%LCV0&]8]>5?B9=.6*%!%[+=3)CYXHS M&(W@>\B'-,QA>$F/X1D-"_B)7R]HF$5O4__ >DFZNQXR('RXK5/*REW-VD"^CJ\5W:K0L0"M MEY9.F^T';]#?TZ9_ U!+ P04 " !@:6Y8-$&HZ@T# .!P &0 'AL M+W=OB!D486$8K4DE2<_OL=4HKB J[/O4A#<>;A.R1GM#PH_6!J M1 M/C9!F%=36MHLH,D6-#3,3U:*DF4KIAED:ZGUD6HVL]$&-B-(XGD4-XS)8 M+_VWK5XO56<%E[C58+JF8?K'!H4ZK((D>/[PA>]KZSY$ZV7+]KA#^T^[U32* M1DK)&Y2&*PD:JU7P+EEL#!'-KA,[I5Z<(./Y2J(G2 46%A'8/1Z MQ"L4PH%(QG\#,QB7=('']C/]O<^=0 E5JP3]HLZ?, A MGZGC%4H8_X1#[YN1<]$9JYHAF!0T7/9O]C3LPU' //Y%0#H$I%YWOY!7>,\EDP5G G:66:0+9\VIA'M;GZ.L;IB67>_-R)/#M#I\L;(0J'KZ? MDGL6>%KN:W<1WAQ?A)?E[FJ$2@FJ8=)!U5@HVC/A=I FJ"QX 4R64'+162Q! M$H/WC)88QC,*)HI.,%>-9@+C@?9&TI^L>Z2P\<";[0ZN5--VULCDC.PT38N5Q3%RIJ&)Z_Z^^/$D9>R3$'AVXH:[@E1GX MN[/&4@(NN20/\\MI>!%?>C/-PVR>'$EZ!?&$YMPKF<+UD/%O)=:+HFX'6%74 M_D!50)VD> #5^MV'),O")$XAG29A.IO"G;)4 .?0+-T'LZ3Q)L7TW"6S\9$ M3Q[MSWMRZL9'1SV*-F;O.[&!0G72]NUJ_#HV^W=]CWMQ[_\4GYG>1B&H#NNV\_L*KU'>]>6>J?WJSIAX7:.=!\I:CXAX%;8/P%KO\'4$L#!!0 M ( &!I;EBOYV;R?@0 /4) 9 >&PO=V]R:W-H965T48KM!XA=;(N^^^^Z[XU'SC0\/4C%'>JI=(XNLBK&]&(\EK[@V,O(M M-]@I?:A-Q&M8CZ4-;(KD5+OQ=#)Y-ZZ-;;+E/*W=AN7<=]'9AF\#25?7)FRO MV/G-(CO-GA>^VG45=6&\G+=FS7<<_VIO ][&.Y3"UMR(]0T%+A?9A].+JS.U M3P9_6][(P3-I)BOO'_3E<['()DJ('>=1$0S^'OF:G5,@T/AOP,QV(=7Q\/D9 M_5/*';FLC/"U=_>VB-4B>Y]1P:7I7/SJ-W_PD,^YXN7>2?JE36][?I91WDGT M]> ,!K5M^G_S-.APX/!^\H;#='"8)MY]H,3RQD2SG >_H:#60-.'E&KR!CG; M:%'N8L"NA5]<_NDCT^F,?J-K7]#3*7T!0B7TL2FX^!%@#)8[JM-GJE?3HX@WG(]H-CFAZ60Z.X(WVZ4^ M2WBS(ZD+14^?;&.0I7%T%TWD),%K"?=P9Z_#Z>FYD-;DO,AP/(3#(V?+GW\Z M?3>Y/$+V;$?V[!CZ\FAUZ,9*[KQT@>F?;_P4Z(/0/9-!>.E6WW'@5-;\KC<&5OC,5A1(]M0 MK)@:/7H.6%T0)E_2JL,V"PI7F8CU1PYD]- P!8-H:H/#&CG(/N0)F=H#U ,R M@(M2"Q@(*3#7K?-;S6O@<)DFB0+DOL;T$Y,&R/,FB!<=?)TU*^MLW,+>! 2/ MVX17^\*6-D].EVG%%-]QDE,$'S#*6@>%^]>2NL9"4/&N&*&.0<7+O:C&(AY= M&;E >K%*[+A$#R ]:IT*8/ \=["!2]M&:?(%5&:,7"M"\[ M;U^DERUH-M)!]Q/:,&A"FLAT0,+Z97H]6@M!648F?D"KQ>.&#RFF0Z, F27YP4L#4:#U0/M6D@BVXXO9*VR/Z=I"6 M.B(71H,45@R$![]=O_=G;D1WE>^<=IR59V#(KI58]R$/E4K*XF9FM MJS*Y4 MAFI1=L@4AP C'#A)T17\K[U9WWS0?^JM\;]Y_$'TQ 4415+J$ZV3T^WE&H?_(Z%^B M;]/%OO(H?IT>*WR7<5 #[)<>-]SPH@%V7WK+_P%02P,$% @ 8&EN6#__ MH]70#P B2\ !D !X;"]W;W)K&ULK5IM;QLW M$OXKA L4-B#+EM*\M$D,V$Z"RZ%IC2BYXE#)3?DKF7UU]\S0W)? M;'EK!_]WM3TXN3L3277:J'JK]65PZ^3EDJN2V6\MD8XM7I[<#[[ MY6+VDB;PB']IM?6]9T%;65I[33\^YF\/3HDC5:BL)A(2_]VH2U441 E\?(M$ M#]HU:6+_.5'_P)O'9I;2JTM;_*'S>O/VX-6!R-5*-D7]V6[_H>*&GA.]S!:> M_XIM&/MR?B"RQM>VC)/!0:E-^%_>1D'T)KPZ?6#"/$Z8,]]A(>;RG:SEV1MG MM\+1:%"C!]XJSP9SVI!6%K7#5XUY]=E"KXU>Z4R:6IQGF6U,KCMZ&]RE0\)G(#1EMMYXO9B/DKQ MGGKT>X_:GE]J7TF^$-+G@A_??>C"V5J M/PG<[\2?\?\OZK86%X7-KO=N8G29_9LX%'-Q="B/Q(-,B"\;)2YM64FS$YF% MW^;*>2&+0FS@&L5.%!JCN.4$B/B>MZ* MZ_FHN*)RO?BL,@4NEX5ZK(!&"8\):'DD]BW;%XU3E77XK/%/IK&N&RMKB$"1 ME*S.5"YD24-$H3S&&Y*GW4J3*8&0+#*G0"N@4^&Q,\_V^3# WCB<=. M>A(SLHUT:TS 1Z0Y)\."VO!0O-"6K%5L-SK;#%9?@M&2Y'@C=<%:JS?06REW M B%*E4MPF\)4[\V,W\RG(AG+H9B)O19S_#OO^-R3\.Z3)"KWZ?*WZ9CKO&A= MY\6HZWR$BQHH9_?4R#)*=LQQLB.1%J4@W'\F3?E:DF:C;T"'V#8DDUE?BT/^ MJY.-0CT8;7+I3A M*OF3F%$TKLM>GBGUTJ3&QYTKID#*6*F)6"L#[RR00E: <#%#\..((EZUBG@U;NL(E]HQNPA_ M[[2OK(=M8!^_6K,^_A7+Y'!$KYZ>9T<7'E.+@C?TV-K#RIV40Z$QM:/"8:3,1W^W.KPYU$=?L:F3//H]#Y*;$PO MJR.1ED*LMH#.+(CT3G,BI]=_*W=C+F"T'VM9A&H7&+,Z(0*I-KA31Y!I>$I,?*0KIF4*?HC26*4Y: MCAPQ9MAEH==!_U-$WZA6K\CXI%BANBHH5_:6J'LL;;">NE59$](OK)"BJ?@D M/?X7"P!$+\X[?@X)G,Q/7W]:G//3[/418Q$?SI;B\FJ1E@^YO_04Z)$4 M+%NQH?_NPMN@*0I>!NSTI6I)W4M %E%)5Y.:-A(JY_Q#KJE#L,?4QC>\F8@X M"%\$>6\!AFME1-4X."-I@7EF;ON[L>624U: T=FUL=M"Y1'M\>B>EEBOI--@ M+2C1R9^A@TG0=J+JFV7)X%0LBP:A71,MQ!%)4#%OLGHRT'T'*L6WQE)RQ>8& M!.%$P(UYB_:'NTKFYE5DKMX#8N%(JN)H%4H$=5$XPM.5QX*3$U.+BX^>A)Y)!AE$!UT;MB RY M7&)?%,XTQ?PVYU**34)M'>Z^$N\11H@GJX A8;.);#]7EU3[%SN&5R"UX]W& M[:A\*A8;756<-; 64DY>\(]0-9#;$/GH]\,=!H/RH4)QBIWTRUZ3-)0(&T?2 M.T;P0!A&J@+0Y>R-2?P]VM>(HC;P8\V1 G\DPOY#AR-"WND*)-*P@6ZP:B-:]P14/#@)/ ME2/CY&"A(6]'QD.*8B4G0V<9(#Z%4HJKIE"991[* -K>1NK C!4-'FB ML%<6T,M5U&>@2?,H23N:9Q2+![-R=L18AS$>XM%.H;0TP\H:8:PH"*HBNFAJ MAHB($ICS9#UQ)D,NK -.O'2[KD9)WT,5'&!V5R4/X%E;@O9-"%:K,UW)NN.2 MZ]@L:R#D!6&W(2N)RSLB(*2 7S0PUM4NH!F$2TI%7:HS+&P:?B.=#KT*UN4D M0,5(:0F6.#Z: ;\)VC]DLXTG0U(ZJ'C3*^>#%=CPMJ1:K]#7"@'F(?L.<30: M;CZ!OU0JM"FX?T%D6DFO&#VQJ_9E/E1XN_6N/FE%,%PZ.M3][3%*B+X <,K% M$<,'*&G9=1!0'_4:LJ0)%XN1J)5@?/NQ]1\D\]B%H=C&D8V#=:_K@KB=2K,> MF@)AA**?0S0Z+X"<9?UP,(K[>"A](I_?:%<';$/]ORZOWQ<,\:$#E[)32S+= M+I+:,[)HVB,$ HQ?":-H3E:<+I?]' A--94(Z5,']H8\4+B-FMT6+8QX=.B?W0# [NP^ LY^Y"(Y[ MRJX4:AS_7"KPD2LJ#EV0]B"[1^]*LFYG]-+U[QG4"*G0RI.8^AF&53:4"]N)$8]"TRHI#(KK0V9)X]4*A-],E)XI\Q0$Y A3?" MZ)I%03O;IL#3[JUJBL)SUYE;6H* ;Q0^T( "$/8A=#=M :#;.(X-3T@Z'#ED M+W7&]B 1(CVG@BOV2)>[004P?;"3U[>I#CI1[#/D,R$+ >?#1D*/-AB4B;M= MJDP2VS'=8[&_0B"*[&UM4^1!0JQ/:^Y "0ORY//T8:00GYUVYTFG?],ZI-:H M^")OG]HM&2<\5I:OJ7F8EE7#WDB30@]W1#C2%XCIF9+G[:^FV>3P[1I+7:M:3X9OOK6*,[V9%&J MK*PCN)!K0HKAPU+56Q6-&\4O?$(C-83CA 2C.[X9:3"UA[BC%CT8*)6$WW++ M+053922S2&20R8 ISCF=!QOMFO': M=W@JD&1$HAB@[1-U:N<'!'"'%Z=D01V8_>[/PFN,Z'\83NH79250LIF%Q,E3L:'K*!7Q80&3RD+VZLY^I>*<+ M;FG]O_CR3=FFGL>R6!6-IQJ(RT@^M.A_97^\%^5[N])(OY;P)@6+G/9#U=R0 MR$;F82*23!-C54*/2*+9M;!5\%B37K3ME]!#G"9MAJ^J=RR\OU#+HV23Z+K< M)EEN=(9'HFTS76HBA+TN%1= QVE#HZ=>LWGG(/._Z2-G!2),6]5/0O1P*5]T M)XJ/=IC1!<<<1E.O>L\#ND^/2=]S+ M"&+^+XM9W;G^,F F]<,-E0CD@ #=C'B7E#)1V$_ZA^PJ)#@5KCZ$VF3;QQ?5 MD'CTN1@A/K2ZZ[&S2.>9%Y;^IO;YA_/%1=<_?\_IEYS[G](T!!Y"[GA&?V P],#K4;5W=UAFXY=8O@;1O4_M M@"=K^KLOKUP?B;N+IZ+R"BA*NO8 LQ/#HG.@+UQ@#<;M=31MDD=1Q(B=^9[R M$=%T1:B^@_NAN]WUX[X:3;]X<882YZAC$ /@N@BL%+%[]@:W+>6UZC58&-G! MJLHJ=1X)LP5T1N0#9&ROEOP=2*2^&,(Q@=70:J&-<(_X@3EAE9Q.FV*RVRNH MU&+N<1%+Z?"M+8):#-W+T!WL3;F:6UX](3CJ'%*X#L[5OP;#,V(-';M6OBG8 M)=0MM^/7@EL)J<66]VZF< LT'4@IEBI7B'3F.>8AW;6EV?B]I0^0-R1UQ5P^ MV3V^^^I2<23BRO]&Y#]^;_*]\'D5QE!V0)W QUA\BB !G1=TC2N7?*#50MCG M<_'\68"US^A7[6N?4WX^*?JS,OOO62GDD M]O P+$!C?>5C]\H',RNKPNY4=W#2MBOO-=KI#&-+83_>K*AWW!))P;EM*!-Y M!FW!\U92N]0ZC8<[1(5JHGAQX\YQ=7L@%%L'T=GB097I6.9I'(<&)TSM3NZ= M%*2U)]%S,=)BE^\YI, Q"!6MJ./UH=Y$BE5.4ZT[W=]]N"AD=GV\ MR#:60G^$T]0!I4V6-E<%R;(]V0E1EV[?M/?/S<+NZ&QXNJ7^2;@WG$X5:8>KI]"6B MK0OWOL./VE9\UWIIZ]J6_+A1,E>.!N#[RJ(6BS]H@?;V_=G_ %!+ P04 M" !@:6Y86U84+; " "B!0 &0 'AL+W=O2Z^8=&NWNIBHC16UQ%L-9M,T7+_,4*CMU(N\ MUX5YO5I;MQ 4DY:O\ [MC_96DQ<,+%7=H#2UDJ!Q.?7.H[-9XN*[@)\U;LV> M#:Z2A5*/SKFNIE[H!*' TCH&3K\GO$ A'!')^+/C](:4#KAOO[)?=;53+0MN M\$*)A[JRZZF7>5#ADF^$G:OM-]S5DSJ^4@G3?6';QZ:A!^7&6-7LP*2@J67_ MY\^[<]@#9&\!V [ .MU]HD[E);>\F&BU!>VBBW:P!=9 M8?4_04#:!H'L5>",'66\Q/(4XM '%K+X"%\\%!QW?/&1@@WT!1ZJKTM0#!O43>L6'=]$H_'Q$6S)H2XZQ%W?4?+8,ZW]+HLZIH+ ^^!^=DH\N,X[NQ1 MDOI)PN"!&@UJ":U6)1H#D9_DL9]FC*QL1!8]@ZM:UO0L*U@I51E(X[&?CU-( M6>IG8P9?M2+@4"0D?I93LCR$U ]C\M@(YKT^H-$#:F$4W5B)LD0XB:/0STE,2$GDYW'8V=DX]?,P@D/7$^SU38-ZU4T' Z7:2-NW MT+ Z#*#SON_^A??3ZX;K52T-"%P2-#P=IQ[H?B+TCE5MUX4+9:FG.W--0Q2U M"Z#]I:*'N7-<@F$L%W\!4$L#!!0 ( &!I;EBZI$4W-0, +$' 9 M>&PO=V]R:W-H965T,32 %DJ9OB+65 M:-DT)!@5L/%AV@D"GZ[7Z%^]=M(R8P8G2MSPS.;#X#" #.>L$O92+;_A2H\G MF"IA_"\L:]]^+X"T,E85JV!B4'!9_[/[U3T\"3B,WPA(5@&)YUTG\BQ/F&6C M@59+T,Z;T-S"2_711(Y+5Y0KJ^F44YP=?5<6H0/[<(:DS<#N-9L)-'N#R!*Z M\XG2%=*X1DK>0&HE<*ZDS0U\D1EFSP$BHM5P2];PMCH=+;WYND;4V^6=KNB1*":0-Z!/VAH7VX$=:/4Z83^.G=DEHQLF'6_T(.F'75I?*P*$ M2F;8.M+O]L',8@[O.(S@MRLH%< HC719VDZX_WH.ITRDM MW#%1H:/^$O21.*&VDS FDEOJW&WJW'VGSKZJ$T5L_J]TV_'&3#"9(ESY#CX1 MS!@^YRGS+6]2:>U$OE9$K]8K.E-RL4^74[SR:?5KS?7]_\_M7-B% MRW_C>R)F^^R.PA=(7=S-B4<8GYG\GSV<%[FH)]$++'QKV0-Z&*]0UT\#* S? MA^L=].#CIE)&3]IH@7KAAX4!CUUWU&:WF4?'=1M^=*^'V3G3"RX-I9Q3:'S0 MIRKJ>D#4AE6E;\HS9:G%^V5.,Q6U&PO=V]R:W-H965TM&1) T;OD.+,-V&FW%5A7(^G:#\,^,-)9)D*)'DG;\;_? MD9(5;_",(D!T)._E.=YS1T_V4KWH-:*!UT:T>NJMC=GWR]RJ^\4OG+< MZQ,9;";/4K[8Q<=JZD46$ HLC?7 Z+/#!Q3".B(8?_<^O2&D-3R5C]Y_=KE3 M+L],XX,4WWAEUE/OSH,*5VPKS*/<_XI]/@Y@*85V_V'?ZT8>E%MM9-,;$X*& MM]V7O?;W\#T&26^0.-Q=((?R/3-L-E%R#\IJDSN$.-'0)GLNOL\[.6]NNN=<;5N+4H[;0J';HS7[\(2ZBGRY@RP9LV27OLZXL M"U>6)3M0.QB8*\7:&JWLP]S2FIL#_.D2@"_X:F A9/GRU[E<+D8[G\LWQVR* M/PCS'2KJ6'A$V_:\K6%>UPIK1ESZ\(JJY!J)1*U1U'1;)N CB9P:N>QHIF&I M>(GP&U\A7!^0*7T#7YG8(GS>&FU86UFGS, SUKQU$>0*K"*,B]C/H@C>01)D M(_B%KL)"2K/,S_OM<32@J. ZSF(_HI,;.HN#T1U0-Z^06Z/K)"VVCS1@A\E5B5Q8VUOK M)QMG?G',*($LR.]L5#\>C_V8Y LLR@<6Y9=91+.\VE)#-'F MB-=W%>EFP%S3T.[3^#Z>7<1SGF>VFVU+)_#(]"OJ,WI9T4E)FP?9./ M@]$5Y*P.+]Z\&_1OZMUS^8DI:@T- E=D&@4CNG'5/4'= MPLB-&_O/TM CXL0UO=JHK *=KR2-O7YA PR_ V;_ %!+ P04 " !@:6Y8 M^K^_RWL" !B!0 &0 'AL+W=O[3?VEM-632PE*+&Q@C5@,;U(K@8G2_'KMX7?!>X,P!B_L'_TWLG+BAN\5/*'*&VU M"*8!E+CF6VGOU.X3]GY2QU3[7:@?:51.;"[Q5CR9QHG$?Y=YJVA6$L_E791$R> \7 M1:&W6,+UGKZW00-O'_A*HGDWCRSU<=51T7,N.\[X/YRC&&Y48RL#UTV)Y;\$ M$0D<5,8O*I?Q2<8K+,X@82'$+$Y.\"6#Z\3S)2=<&^@,'O/7H.X W>V[H#CH:W$#9? FY*&IU#;QHIF Z]AFH6,,0J2 M-$QFTZ&\Y<]:R0Z@47)+:X4RUD VGH4Q&\$D8V'"T@&A;(4:DF06SI(,XC0< MI0GQCD(VH3B9N&8Q"Z=I!L=.-CKX[VO4&S_=!KS4;@2&U>$"N>CFYF]Y=_O< M<+T1C2'+:X*RLTD:@.XFNDNL:OT4K92EF?1A19<@:E= ^VM%_U2?N ;#M9K_ M 5!+ P04 " !@:6Y8#.ZVI'<" !+!0 &0 'AL+W=O=8%(\%J50L^\@JB>^+Y."ZR8 M/I,U"K.SEJIB9%R5^[I6R#)75)5^& 3G?L6X\)*IBRU4,I4-E5S@0H%NJHJI MMSF6Y2,5R@TEP(4KF?>Y7 RCVR^ M2_C.<:-W;+!*5E(^6^\ K+T@(9&G\Z3*]O:0MW[2WZ MC=-NM*R8QBM9_N 9%3,O]B##-6M*>I2;6^STC"U>*DOMOK!I<\\##])&DZRZ M8L.@XJ)=V6OW'W8*XO<*PJX@=+S;1H[E-2.63)7<@++9!LT:3JJK-N2XL(?R M1,KL H;O Y#>)"" M"@U?1(;9_P"^8==3#+<4Y^%!Q&M,SV 4#" ,PM$!O%$O>>3P1@3)#ES7F .0:'A@U MBA,W9(UW+T5^ND15P36N"'XY_K#$5X)Y*=/GW_ND'&RV7\HCVE'F(@#31=0%QB80#X;C,=RCUG G" TNF>AQ M. BC$$Y@*8F5L%!U=[Z/] M2W'9#LB_]/:9>6 JYT)#B6M3&IQ=C#U0[>BV#LG:C&PO M=V]R:W-H965TD.=I(]:B7 MB :>J[+68V=IS&HX&.ALB970%W*%-;V92U4)0UNU&.B50I$W0E4YX*X;#2I1 MU,YDU)S=JLE(KDU9U'BK0*^K2JB7*99R,W8\9WMP5RR6QAX,)J.56. ]FE]7 MMXIV@UY+7E18ZT+6H' ^=BZ]X32V]YL+OQ6XT7MKL)[,I'RTFYM\[+@6$):8 M&:M!T.,)K[ LK2*"\:W3Z?0FK>#^>JO]<^,[^3(3&J]D^7N1F^7821S(<2[6 MI;F3FY^P\R>T^C)9ZN8?-NW=.'0@6VLCJTZ8$%1%W3[%'/8'$_8X [P1X M@[LUU*"\%D9,1DIN0-G;I,TN&E<;:0)7U):4>Z/H;4%R9O)5&H04SN&FSF2% M\"">4X?T>?W'ON-/O^(QQI:!P_YUTH'AZ5MC0SU2F0X=J@( M-*HG="8??O B]^,1;$&/+3BF?7)/-9>O2P0YARM9K62-M=%VMZ,'/CU316J$ MTRG6."_,&?S1> ,/^&Q@6LKL\<]#CATU?=@Q&W(;=PY7:Z4(RQ ^8XY*E' " MB<=2+Z6%QWCLPKT1E$I!_[CX4+6Y#N%=*/A5-,9_..N1#2#CSXY!4Q#R" M:YPCB>4[*WX8L]"-(8QCED119\0+...N#UXR;UAC4%-72Y(4Q9[+L1A MP,* PX,TC3LA07&3D%9Q&#$>)7"$T+ G-'PWH3U*2^*EUDC,BCJ'GPLQ*\K" M%)26[V/RJ,W#3%(5835#U5<2[$X\UG)\ . 0OE+(Z!.@A"GJ!912:\B$4B_T M/=@(E6N*U[G- 9^SR.=$$($&8L'FJ&@:+W=3%KEI\W132B4R49A_:$FBD*4\ ML;D4^BRE#+JIGRB!I'J!)*"#$!*7173C,LO4FD"6>V$[AY"YL4<>D,=9T=KU M I\(]2A+4A;0\TJL"J*Z^(N$[SZ(:O7QNLT('ODLX!X!#%D2)_"+65)8.(O) M'_(J39H@Y-OHV.P2+7TV]\,H;9+WA.ZZM [\Z%CF1'WF1,-[,7+5S#DS:6AJ:I9+&E-1 MV0OT?B[IR]]MK(%^\)W\#5!+ P04 " !@:6Y8O\"XA\8" "(!@ &0 M 'AL+W=OM#-P3M]C#MP20GQ&IB9[8I\.]W[(24233JBV\YE^_[CGTRW$CUI'-$ M ]NR$'KDY<945[ZODQQ+IL]DA8*^9%*5S-!6K7Q=*62IEV63.TF6,C-R N]_<&92@,)LY(W#J\G VCN#GQPW^F -ELE2RB>[N4M'7F !88&)L1$83<\X MQ:*P@0C&WR:FUZ:TCH?K??0;QYVX+)G&J2Q^\=3D(^_2@Q0SMB[,7&Z^8[3N107C/#XJ&2&U#6 MFJ+9A:/JO D<%[8H"Z/H*R<_$W^7!B$,X1-,I4A0&,6L6AID!E.%*3F*)3CRZ"%I5,_HQ>_?A>?!EPYL_19;ORMZ MO*!WFZX)F"OA85'M05W,YA53PVS&!!]P:F!0R>?ISC%1WVADJF\GF M>)"&%3#'9Q1K@G'LYKA"V"&",?1Z< )12,,$PDN:P@$-4_ALEQ=PTB'*H!5E MT(FN 0.9DB5\W1I4@B"^W&,2Y. :CZF]Z3>JTIWW=56F&."1K+!X)R$Z$J"&Q *H M&T5[VK;9<=U=7LSK'GW/U(I3@.D" "]!@ &0 M 'AL+W=ORT+HB;X:%W$Z\R-LOW.7KC;$+P71<\34NT'RKYHIF M08N2Y24*G4L!"E<3[SP:S1+K[QR^Y[C5!S98)4LI'^WD.IMXH26$!:;&(G : MGO "B\("$8U?.TRO/=(&'MI[]$]..VE9 ,/,ESQNC!W#@(&X2L!;!? '._F(,?R MDAL^'2NY!66]"R,(IVV-$3?[MA^UH7,T7<"'+JC;< M%MP(;NL2%3=2C=SCRIO'=0:1'_=#GPU[9#,_(JPD# E72'K@C?^#JR;2PY\( M8HT6N*0BUE:WAJ^UT89D4SX@2OQDV/7[X="9+/'C071 Z0S"#NW9(>JV>?JO MR#I2U)P 5ROJ5O:VJ?#31Y"5):'%'I^ >FS@#Z+( MF?VNWTMZK5#Q(J:BA^-B_LG)L8<:'+042LS:-4X-J:R%:;I+N]KVYO.F);VX M-XW]AJMU3B(*7%%HV.EW/5!-LVPF1E:N02VEH7;GS W]7U!9!]I?22K1W<0> MT/ZQIG\ 4$L#!!0 ( &!I;ECZ[MT]X00 &@7 9 >&PO=V]R:W-H M965TT=+:)2J1*4GD8]N%WE&S92A4Z!M@7C23K_CS^=#S>U!-#D M)4NYNN@LM<[//4_%2\BH.A(YB4<9A(HHHLH_+U"E+Q?-'Q.^L']VRQU.:!-Q[E= %3T(_Y1.*= M5ZLD+ .NF.!$PORB<^F?1_Z),2C?^(/!L]JZ)F8J,R&^F9N;Y*+3,QY!"K$V M$A3_/$$(:6J4T(_O*]%./:8QW+Y>JW\J)X^3F5$%H4C_9(E>7G1..R2!.2U2 M?2^>/\-J0L=&+Q:I*O\GS]6[)_AR7"@MLI4Q>I Q7OVE+RL06P9!\(Y!L#(( MWACX@W<,^BN#_D='&*P,!B69:BHEAXAJ.AY)\4RD>1O5S$4)L[3&Z3-NOOM4 M2_R5H9T>?Q$:2$ .R;3Z\$3,R90M.)NSF')-+N-8%%PSOB 3D;*8@2('$6C* M4D4>X$47-/UUY&ETQ0AZ\6K8JVK8X)UA_8#<":Z7BESS!)*F@(=SJ"<2K"=R M%5@5(XB/2+_7)4$OZ)/':40.?FYS+/R(C%_)M)A''S0P$ESJ)1#'3\R)=?QW5)1,)&2LR12A/R%>]!$GN(0;V1&E([$&RY.:Y8E]9?(80XL\ MT!=R_4)QCZ.F(L"4!IRF>@WRAB-@4.6.) M(+*OT9"<[JT/[LG,DUF!W6K,[ MM;)[Y!)B@=OUOYC+#,$KX#!G9D=XQ-U"XC[-R^<3H9C!VAILIS]L!6^!6;W8 M%Y@CL0:PLQK8F178ER*;X2+$*N=K#I*6ATX^=*H6N5)KLMRJ MJ_U=+#' -&X-D]04TB:'U5!Q=2HP!=PMFP,Y^ NH;"^B[6,T;(O;T&ZY M-TM':DV6P89E8)WGIT)RI@L)574[Q]X$6B*4_$?N&&=9D=F#UCK8WD'K4BUR MI=8$O>DR?'N;X29H7?8,X0Z/^^\N@P0M?=D=M"X;B]"I M6N1*K0EZTZCX]D[%3="Z;$W"'1Z_G[UZP/%+8.#[9.%%:5 MNC5.7;8EH5.UR)5:D^VFS?'M?1,LJJ4\KZ:7V,?%D>GGJ;UZLS MZ#LJ%XPKDL(<37M')SBXK(YUJQLM\O*@3_(F6 @ *0< !D !X;"]W;W)K&ULC971;ILP%(9?Q4*[:*6M@(V!5$FD-5&W7FRJVG6] M=LA)8M78S'9"^_:S@:(T(5%O@FW.?\[W.^9X7"O]8C8 %KV60II)L+&VN@Y# M4VR@9.9*52#=FY72);-NJM>AJ32P92,J18BC* U+QF4P'3=K]WHZ5ELKN(1[ MC(G=\M)$'D@$%!8GX&YQPYF((1/Y##^=3F# MOJ07[H_?L]\VWIV7!3,P4^*9+^UF$N0!6L**;85]4/5/Z/Q0GZ]0PC2_J&YC M*0U0L356E9W8$91$(DP'Y[#/RN)'CC_+0.>YM MX]XV;O(E)_(]L-KMH@7-F3!#;EHY;>3^2]A-<9[&A#CVW3[V0%R:T"3!?=P' M/M+SD;-\S^[L(RY1I54!9I"P39#N58Z3$:$Y/B +3'HV?Q?FAE3'^,WX;XZ%'A)!_A M?!0= !['T8@D.4Z'"=.>,#U_!,& W@%RG1BIA5$"3 &R@"'4] CA&XFC47J( M.A 74V>*#J-F/6IV%O6/LDP,<65'IS^A>3PBAUP#<7E&1U%\P!7N-3)_B?QB M>LVE00)63AE=92Z%;AMS.[&J:GK;0EG7*9OAQMUEH'V >[]2KK]U$]\N^]MQ M^A]02P,$% @ 8&EN6/8]O?QR P @PT !D !X;"]W;W)K&ULM5?;;B(Y$/V54N]HE9'8] 4"3!:00B[:E2:S*,GL/*SV MP6D*L*;;9FQW(-)\_)3=T&D(\0Z(?8'VI4[5J>-+N;>0ZJN>(1I8YIG0_6!F MS/P\#'4ZPYSI4SE'02,3J7)FJ*FFH9XK9&-GE&=A$D7M,&=ZQNI04\6 M)N,"1PITD>=,/0\QDXM^$ ?KCCL^G1G;$0YZS2?YR-%K;!"&?,92 M@,))/[B(SR_CQ!JX&7]S7.C:-U@JCU)^M8T_Q_T@LA%AAJFQ$(S^GO 2L\PB M41S?5J!!Y=,:UK_7Z#>./)%Y9!HO9?:%C\VL'W0#&..$%9FYDXL_<$7HS.*E M,M/N%Q;EW'8G@+301N8K8XH@YZ+\9\M5(FH&2?L-@V1ED&P;)&\8-%<&34>T MC,S1NF*I*+D#9V81F/UQNG#6QX<+*>&\4C7*R,X-/TB"TX#?XB)0,#2=7 M:!C/-#S@TA0L>P\3\^LO<:?[.W !#S-9:";&N@'O-MJ]T% P%C),5XZ'I>/D M#<=Q K=2F)F&:S'&\29 2"PJ*LF:RC#Q(EYA>@K-J %)E#3A\_T5G+Q["7]' MA)<_@Q<[O&2-YXFS6:6\Z7!;;Z9<&5K -RSE&3?/\,\MYH^H_MV50R^2W>+G M>LY2[ >TAS6J)PP&1+<=[:1[)+ -TJV*=,M+^H+.&) 3N$.6P;4VC);=2-%I MI"@#)_??"J80;J0T[^&[3[-AZ:;MW-@SZFG0[/;"ISI/;R0'\CRK>)X=)"ZQ MNN6"YT7NU=L+OJ_>1P+;R$.[RD/;FX>/J#5B _XBA9GA8EH>,(URTV?/M!"$ M@1%[IBO![#P^2ORSFM!QUT*TMH;TA'$CP0T7P@Y=@I?##0M95=C3A>CGGEK<4#: +PXW:"R/R MJN_UN*_Z1P+;2$X-Q)/'F]C]O)MI"[)D75I#+, ML%;.YJBFKLK7D,I"F+('*Y!>8\GERR]24"PT93@@R M.NU01*JL^,N&D7-7-#]*0R6X^YS1*PF5G4#C$RI5U@WKH'IW#7X 4$L#!!0 M ( &!I;E@W5?&?6@( .\% 9 >&PO=V]R:W-H965T^KXLM5$Q?R 9J7%E+ M53[7Q=:. E4Y4"9\&0>)7C-=>GKEW2Y5GLC6"U[!41+=5Q=3+-0BYGWLS M[_7%/=]LC7WAYUG#-O YK%9*ISY@TO)*Z@UES51L)Y[GV=7UZG=[S;\XK#7 M!V-B*UE)^60GM^7<"VP@$% 8Z\#PL8,;$,(:88P_O:J1HM5&5KT8$U2\ M[I[LN?\.!P)*)P2T%U"7NP.YE MF6)XIN2?*[D8W.W"E.C6&X[4]E >C<)6C MSN3?I0$2D7-R!UB;QL$-:[AA@O^%DOQH0#'#Z\WK\MD"#.-"?\Q\@W3KX1<] MZ;HCT0G2 HH+$@:?" UH2!X?%N3LPQL;'\,/%="A NI\HPE?M(O&TG2JV*GL M7W.7SY(H#8+,WXW0PH$6OD>+QVB=*OF/%M-H@A8-M.@]6C)&BXYH-(VG8/$ MBT_"?DH\=M+6)=>%;&N#YR^'\Q?V_$G#7O!"&CV6*3[*%,9I=#D1*AE")2=# MW8'65^2V:EJ;AV,J!=J,\9,C_CF-)_GIP$]/\I>(PXK)CHD6B%P??1+!V8H+ M;E[&,J5'_\$PQ';Y-I-_<']M*_S&U(;7&@EK% 87*3JHKKUT$R,;=Z57TF"# M<,,M=F10=@.NKR5>ZWYBN\30X_-_4$L#!!0 ( &!I;E@X) Y*Q@( #T) M 9 >&PO=V]R:W-H965T=[#W-' MO!+R3LT!-+DO>:7&SESK^LQU53:'DJJ!J*'".S,A2ZIQ*@M7U1)H;D$E=WW/ MB]R2LLI)8KMV*9-8+#1G%5Q*HA9E2>7#.7"Q&CM#YW'ABA5S;1;<)*YI =>@ M;^I+B3.W8\E9"95BHB(29F/G\_ LC4R\#?C%8*76QL0HF0IQ9R;?\K'CF82 M0Z8- \7+$B; N2'"-/ZTG$ZWI0&NCQ_9OUCMJ&5*%4P$OV6YGH^=4X?D,*,+ MKJ_$ZBNT>D:&+Q-\)&)^MA&W*"3DZP5\Z%J(IC#;(\ M1%"PG<*)ORVH"8N>"4NWV0+OXTY!82^PQQNJPIZQ+_2GAL6C3J+1GLMNK5E$/)CND27 M"L#";5K#?[?L>%WU/D=O&PO=V]R:W-H965TK&MD6XQ)2(*[9"JN[,&4^)5)=\88L5 M1Q(94)K8GN-T[)3$U!KV3=N4#_ML+9.8XI2#6*?P30R@&M4T=HYX#VJ0 _!YBIV]G<3> F1))AG[,M<-U; ML>D3$WV#5O&*J7Y0'B57=V.%D\-[)A%\> N/2\+QK8YY!&.6J@=1$&/E-"%4 MP,4$)8D3 >_Q2:Y)\D9!WB\1/,=S(/B\CN4.WM$0J?;=8."?.TQGR/]5/3\\ M3N#BYS=]6RK)>F [S.6-,WG>$7FN!W>,RJ6 @$88E0EL-==BPMY^PK=>+>,= MX5?@M"Z-\BI!]? )AE?0<@R\50&?G )W#=RK@ >$+E"M"!)FN]+#,24[TSS:$AY=POU:FPQLGG42,%K+)>/Q?ZKK14Q! MF-8JZV]KM>D5\D:L2(@#2RV! OD&K>$O/[D=Y]O;FPKOVH5W[1.\NSW1N]O3O-NH'">S!$&]@N!WQ2-?,[%6Y+DFMK\) M5:_E=0\BE=G3Y)A!0V0E#_W"0_]D#PMOGNV[A.!)^XI5@:]E/C?P&9E_$'C/ M:7>ONR\"7]'-=UK^=;E;T)"T4D@[14@[WQ?2>T8W**2ZG6?!F FI6B7LU+[L M 4.VH'KUNH11RM945L6^5L*YL>]\$U2_X_1<_T7LFQPS:(BLY%"W<*C[?SDT M11ZSR"Q6>;-9 2_^1L(K5ZM:9><:5S]-3ZDE7$ 'TFP'X_8@(CM1];YI4E;0 M$%G)VU[A;>_[O/US91S:[PVK/*H=X5R/FB2;-$D6-$16LNFZL.GZ1^_[U)LI MYOD70I:%Q[.N7HSK9)E295\M\ES[FB0+&B(KV>I3%=O)ZEKPCRCV=I M/?)L&YMD"YIBRVRT#RHM*?*%*7$)"/5&,:M!%*U%&6UDBDHY,R8E2\WI$DF$7'=0]^>,R?V% M'J H.@Z_ E!+ P04 " !@:6Y8;Q>R9.@# "N#P &0 'AL+W=O65/E="[&P(NC:0:@.QW*4C M2WE#%9U-!-\@859K:^;&AFIW:SB6FW_E00G]E.E]:O:)*T!#=($>EE3 A0DP M0=<\T_^ZI%:W^Y3FTBQ0/'Y"GPL[>6G$9.H%G=V HBR5YWK%GTM Q",>NOVQ M,L\^YC'D1G1K _U]!]DCB'\FKM+@QKT;5Y!7)23I@,0$W?%<+26ZS1-(]@VX M.N(Z;+(-^XKT6KR!>(!\[[WA]='7AQMT]NXQ%VW$ 4U47 \ MT<:FK?[/Z1J$?@T1/(.(F014"!:#14UXFE(A40&BA#74C59MY"7!:(><#()1 M._>PYA[V*">'P3#+O7"FB(\AN)DRI7>HSWEHG;D48T\ZD6^ MK<"25R?@Z$#""QQ@KTO#<0TT/A;H1"J.#_(/#T;C=NJHIHYZJ745F -3;Y Q M.I21^&'GBXR]YN/M'8MT(B$K@/TW.?([P'>J#OY%!A1,O$')RNR^E,/.A,2D M 2+' 9U*Q]+]<#U!?< M7V#:T068PZV>0[$^@PA]C%S1%*5LKO&_ Q7GK83]GD+T B;F$&7EN<9'"7WI M.V[@IC[A_@*U%\7E8B%@0?49CVEVI@_3,5K3= 5&XU;P\"!/2>#YHY!TJ-L4 M(=Q?AUB0@B@(.[.V*4BXOR*UPITJ>P^+DSX<=>G;5"?< M7Y[Z0WA;%O=[#'[.8A+]*HU)4]I(?VEK#>?5Z5PYV?OLXBC"PY_/ NY."Y6! M6-A&46JQ5KDJNZEZMFY&+\L6K%E>=K)W5"PT&DIAKK=Z@Y'V+LKFL!PH7MB& M[)$KW=[9VZ5NJ$&8!?KYG.NFK!H8!W6+/OL/4$L#!!0 ( &!I;EBIFI>] MFP, (,, 9 >&PO=V]R:W-H965T]!##DL>!"3[RE,>6I[^MT"075/5F"P">Y5 4U.%0+ M7Y<*:.:2"NY'03#P"\J$-QV[N2LU'LV:-G'[_AG]JQ./8NZIAKGD M=RPSRXDW\D@&.5UQ3:_9)-'1MX)%UI(XLZ&1D43%17^E@7 M8BLA'!Y(B.J$:#\A.9 0UPFQ$UHQ<[+.J:'3L9(;HFPTHMD;5QN7C6J8L-MX M8Q0^99AGIM^E =(GQ^1F214_Q>AKT^B?#L;_>IEY%A<%N6-)$[3!,&H;)VQAF;,TR M$!EY8L"S-I9)R_I[%#M#=OCU&W[]3GZ-=6EMW=SZ<&U]:.V[4&A<-"03)).< M4Z5)":HRY.@_FD3T8GP7A$?!+8C=MB('7:*O6;ZX3A7 (0) M XAOB+*'S=$U_K;NW[#E50GB)-XS8FM8V.^W[\VHH3MZV\O"66XIDR>PCCOZ MB9=6MMUP_2J_;5.Z$P=MB3N*3AI%)]UNHX^ONJT3X;UN^R"P';%A\/+Q##[8 M;S7@GI.2*-DS7'M<-#IP/(=;W_OP8SWW"EYM.C(@A?OTMFW2*Q##5^T71B_R MHO_U?*^7VSZ3H]Y)N+];G:3>:T-_JYTK0"UWY)U8)A6\8A1\B@-\1/CZHZWFI@9.F:QGMIL 5UMTO\EP#* M!N#S7&+C6 _L LW_CNEO4$L#!!0 ( &!I;E@X04H'- ( ,X$ 9 M>&PO=V]R:W-H965T6M)5'\P$E:R[O]CW=3@(B.,7 N(^(/; P/RQF\??U,)F3> 3H> MH&.OF[R@NQ2* 1=(K:GM&?#QP%P8LJ!+N#582#J#.VLYG6/,G?:%UW9W=IN- MHF043])P>X1I/#"-3S(MT*+9(I0.AHM:DQ2JI['P\QZK%9I?QWA.ZKJFO+*- MR'$:<-?Y/8+LS:O1)/IXHI+)0)W\#[4]B@VD884G*IG\4\GX\C**HF>5# ^N MI^OT>V'6LK:@L.3 Z/P#*YBN>SJ#=.-O[$H3WW\_W/"#@\8Y\'JIF;0W7!,, M3UCV%U!+ P04 " !@:6Y8_[UWYFP" J!@ &0 'AL+W=O25FGF%UO6#[ZNL M@)*J>U%#96;60I94FZ[<^*J60',G*KD?8AS[)665ER9N;"G31#2:LPJ6$JFF M+*G(>!9[8IM!WPTZ2F&W@!_5HOI>GYO4O.2J@4$Q62L)YYC\'# M/++UKN W@YTZ:B.;9"7$F^U\SV<>MD# (=/6@9K'%N; N34R&'\[3Z]?T@J/ MVP?WKRZ[R;*B"N:"_V&Y+F;>Q$,YK&G#];/8?8,NCP/,!%?N%^W:VCCR4-8H M+TRLV7E8FFTJS:#(5KW2+G9H_(-IW$&./$WQYG.*\B M$9E.^JH/J*1')5>AUG0O!6]A)7"JS5@FE%9#O*UE?$02CZ8A#DZ S\O&,28X M&B8>]<2CJXB%+D .T8W.EB5D.B7Q"=UY61@%$1F&BWJXZ']P]CTKM*1[NN+@ M]O- _(/1%>-,,U!W:-Y("94>"A"=O>@ CZ. C$\2G-=-0CR)XI,(_M%)MK?H M3RHWK%+FZUP;(;X?&P?9WDQM1XO:'>Z5T.:J<,W"7.8@;8&97PMSP+N.O2_Z MOX?T'U!+ P04 " !@:6Y8CCJ=0MD# "H$P &0 'AL+W=O^^)XO*7LA<< NW2).,3 M(Q8BOS=-'L:08GY+<\CDR(JR% O99&N3YPQP5(+2Q'0LRS533#)C.B[['MAT M3 N1D P>&.)%FF+V.H.$;B>&;>P[EF0="]5A3L/N_9@W+RU8DX -C],P"G!CBG /<,H%<#>I=Z MZ-> _BF@=P8PJ P%N#7#+W%?)*C/M88&G8T:WB"EKR:8>2KE*M$PPR=3* M>A1,CA*)$]/?J T1)_1$C8TV9!LC7Z5)HBNT)Q!1 3ZZ(' ).'H"7:BP,FG M(^/:*, A28AX17\N('T&]IY? [1+NM,#];O@"OR++/NL\>!]=^[8Z,MEKED^OI.N?I>,=3I2!?:>YSB$B2$K* >V 6/Z\T^V M:_W2)J!.,D\GF:^3+-!$=B1]OY&^WRG]29G85X ;M, [DA8IFE$F*;K) LJLD%)IHX.FVG/LN1VWK3(.6CD''3+2;/U9P$L M/:G_-^B)"IRT23?X5QAO,51ZO&OA=09U;9)UD@6:R([$L,*-!$=I3]49/]46?VES1\2>2A$CTQ>5*6)XTTQ]EK MYRFCD_!:,722>3K)?)UD@2:R(XGO&HGO_H]31J>3:V772>;I)//O+BCW@2:/ M1W+:UMO[IO5C@C:E=(GE*ZE7,*7I S!"HS9%:S>CPSIW:XT&UN''/OFGZX[M M6NFTLOE:V0)=;)7*YL$%0PIL75X%<132(A/5:W?3VUPW?2DO64[ZY_:]5UT: MO=%4=U@+S-8DXRB!E:2T;H=R%;/J6JAJ")J7UQC/5 B:EH\QX B8,I#C*TK% MOJ$<-)=STW\ 4$L#!!0 ( &!I;E@L.5I[. 0 '84 9 >&PO=V]R M:W-H965T# 38(6,&N;9"+UQ]<&ADDRQ%TDJ_-APL/G7-]S\#76U%9Q-2\"3.8$41*](4T],<$G*<&K;Q>N$IWNVYO&#.)CG>P1KX<[ZB MXLQL6*(XA8S%)$,4ME/CH_T0V(X$E"-^C^'(SHZ13&5#R%=Y\AA-#4O."!(( MN:3 XN< "T@2R23F\:TF-9J8$GA^_,K^J4Q>)+/!#!8D^2..^'YJC P4P187 M"7\BQU^A3LB3?"%)6/D?'>NQEH'"@G&2UF Q@S3.JE_\4@MQ!K#=&P"G!CC7 M .\&H%\#^M> P0V 6P/<[YV25P/*U,TJ]U(X'W,\FU!R1%2.%FSRH%2_1 N] MXDP^*&M.Q=U8X/CL-\(!C=#/2!XPM,(GO$D W?G <9PP] 5>>(&3#V+$\]I' M=S]^F)A. MDG$-^3WJ6SWD6/:X+2$U?(FI@-L2[EAM^:CA/H2OT9U^"SSX'G@5W5&(T6\> M@7[)Y][@6U%1=B@_]= JP1E'.(M0\*V( ]]IH2QGI0^SG9HCL68$%IF M/5=&D07O@>4XA*DA*AH#>@!C]M,/]L#ZI:59+)R'F9VW[$MSW8G MYN%<^):!SM :C;UQ,_!"8K>1V%5*_)AQ$//D*'@1%9Y!#_FPX6TB*GFZBJB3 MS'??:>-9X\&5@.\'#<>>VRZ>UXCG*<5;8L9PN"\8<,[0O&#B/F-"P8/8YLJ' M%"T(S0G%Y=;SUQ+2#="_T3_H"0XD.;K) LTD5U8.F@L'2@ME4\_>LP8IT559+X %9M;9> *:$PB=/)#L0F4+P'-.X!JC2@9NZX1 MG62^3K) $]F%+:/&EE'W-:)8%4JVKI:HI^;=7&*^SED$FL@NY!\W\H^[R5^5 MI3B4ZZ,VA'".6\>.?_+ M=YPZ3&?#G'?UR[%&[RN8UJB!+K;*"O.LOY("W96-+89"L0QXU71HKC;-LX]E MR^CJNB^;:F7?YHVFZL@M,=W%&4,); 6E=3\4@M&JR56=<)*779P-X9RDY>$> M< 14#A#WMT2\N]4G,D#3:IS]"U!+ P04 " !@:6Y8M*_0D!(" #4! M&0 'AL+W=O!CO=0V"WN6 M#:] &JXDT;"=!=_&U_/$U?N"WQP:7W&UF0>0,@8 "'0.SKV>X M 2$DD'/([?V&]][[:7-3-PH\0?OL%R%J0!V<"6[04^J.8[=/UX M@X42QC])T]8FMKC8&U15![8.*B[;-WOIOL,1@-(S -H!J/?="GF7"X8LS[1J MB';5ELT%OE6/MN:X=#]EA=KN5PMR\>F$)K3N^Q9HWP+U MO/$9WMN_CC$>,M0"$P]TQ_,YC].O4UOZ/* WZ?4F_Z&7#.FUP*LCO72<),-R M<2\7?RCW XPA=Q)!@\$AT?B=Z"6E,1U637K5Y$/57PJ9($O-9<%K%[&#'44T M0P:2=U\YB=-T>F(@/#JD;M[OF=YQ:8B K<5%HZDET.T,M0FJVI_;M4([!3XL M[;4#VA78_:VR9[1+W"CT%UG^"E!+ P04 " !@:6Y8IV=BEF," *!0 M&0 'AL+W=OC)R_M[A&\>].5J#RV2MU*,S9L4XB)P@%)B38V#V MM\-;%,(161F_.LZ@#^F Q^MG]GN?N\UES0S>*O&=%U2-@P\!%%BR1M!2[3]C ME\^EX\N5,/X+^\XW"B!O#*FZ UL%-9?MGQVZ.AP!XJM7 $D'2+SN-I!7.67$ MLE2K/6CG;=G-(2)Z\0QPG,E:3*P)TLL/B7(+0J>ZG)L]1)K[1*WPS2:@E$[#$'%_9I"SW=1RK9>!VVRUEGK CBW;"D60%4 M9(PB#LNI=>E>S%T#,!$_,]B)5AMI*X^,/>G.]W1J.5H1Y)!(34'4WQ;FD.>: M2>GX79-:S9H:V&Z_L'\UYI691R)@SO)?62K74RNR4 I+LLGE+=M]@]J0K_D2 ME@OSBW9UK&.A9",D*VJP4E!DM/HGS_5&M !N< 2 :P#N D9' %X-\(S12IFQ MM2"2Q!/.=HCK:,6F&V9O#%JYR:@^QCO)U6RF<#+^P22@,?J,OM.$%8#NR3,( MU9VSHF04J!2(+5N3Z.I999 =#(#"LM,GJ*3!4B2Y>)4P1[N%NCDX^G$EDJ; M7L%.:AVS2@<^HL/%Z)I1N1;HBJ:0[A/8RE3C#+\XF^%!Q@4DY\ASSA!VL-$".UVRT9_B\(WSS#>=J.R_ZMJ9"COJ1^B)?B)(D,+74317 MV#% MGSZX@?.ES]8[D>V9'#4F1T/L\5=(@9/\3&6N<=MGMF+P#8/^R&SCR!V[XXF] M;;L87.<_7?B-"W_0Q9TD$@8]5/B@Y6'D!QT'_H'/=LR>L* 1%@P*JW,(9=5U ME.HZEIQM,_--/7FL+V1OB@4'BB/LA7Y'\V&4&^(CHL-&=#B8^ M8@I*=]LH* MWS/SWXELSV74N(S>EOEI;;?/;72PO9X?^D[8.87#,#\,H^#(.8P;A>.W9/60 MOO'A\8\P=KR.OIZP, C"(_I&PO=V]R:W-H965TV@-3&T%RL"Y)UNV;D8YN()&HD;2?[]3N4%4VQ M:+<7N[%%\;POGT.1AYP=I'K26P!#GNNJT7-O:TQ[[?NZW$+-]95LH<&>M50U M-]A4&U^W"OBJ$]65SRA-_)J+QBMFW;L[5WUQ+S9;8U_XQ:SE&W@ \ZV]4]CR!Y>5J*'10C9$P7KNW037BZ 3=!%_"CCH MT3.QJ3Q*^60;MZNY1RT15% ::\'Q;P\+J"KKA!Q_]Z;>,*85CI]?W7_MDL=D M'KF&A:S^$BNSG7N91U:PYKO*W,O#%^@3BJU?*2O=_9)#'TL]4NZTD74O1H): M-,=__MQ/Q$@01&<$K!>P'Q6$O2#L$CV2=6DMN>'%3,D#438:W>Q#-S>=&K,1 MC?V,#T9AKT"=*;Y* R0GOY#;II0UD#_X,VAL+F3=R@8:HXE^78+BH] =4?'M8DO<_?YCY!K&LN5_V")^/".P,PA+**Q+2CX11 M%CKDBQ^1!YVSNN]8M+V'NX?;2 MH/;@%>]^"A+ZR97B_V3V)N%P2#B\Y%[8CXME07$CF@VII-:DY$J]8(TX<+72 MKN2/CG'G:"O%OJ S?S_.:!H1A"P)V1#VAC4:6*.+K ]&ED\$5RJ6,QR=DCBB:C/C?<*4#5WJ1ZZ8LU0XW7R7X MHZB$$>".**2_!S5Z"0,OEL'5Z_%WV#QYUWQ=W(& MT^H6)WG*DE/4:2"C21Z%I]O7'QWA]O[T&U<;T6A2P1J5]"I%"W6\DAP;1K;= MJ?XH#=X1NL>\[Q M.6-[$F^Y>)4E@$*[NF)RZI1*-7>N*],2:B)O> -,K^1-W)K0IF3Q';N220Q7ZN*,G@22*[KFHBW&51\.W5\9S_Q3(M2F0DWB1M2 MP!+42_,D=.3V+!FM@4G*&1*03YU[_VX>F7R;\)O"5AZ,D7&RXOS5! _9U/&, M(*@@58:!Z,\&YE!5ADC+^-MQ.OV6!G@XWK-_L]ZUEQ61,.?5'YJI' X _.@' '0 ? M \(3@* #!-9HJ\S:6A!%DECP+1(F6[.9@:V-16LWE)E37"JA5ZG&J>0G5X F MZ!H]L)37@'Z1'4@=+MM313Q'\Y*P0D]2AA:0@Q"0F31T+Z6^91<+4(16\E*# M7I8+=/'E,G:55F;XW;13,6M5X!,J?(P>.5.E1%]9!ME' E=;ZGWAO:\9/LNX M@/0&!=X5PAX.!@3-_P?N6S@^(R?HRQQ8OO $WW?!I337JRV?TN5;D8JP%!!1 M: 4%98RRPI3[#8@8JF"[060W,&]SDV!O- F#4>QN#HT-Y-WB8#*^[?,^. A[ M!^%9!XL/VH%!3O7A-X)OJ'G1@X?>,HX.I%R'D\G8]XXD#^2-HS *\;#DJ)<< MG94\>Z\PL&Q?VRO$0 VIC3X5SH]&DS$^+O#GO..#:-6Z!Z^R!E'89B51RM=, MM1>YG^W[X;UM T?S,]TGV[;V3M,VV4#, EZ/>?Z_7>!V:#_]TC^ 5!+ P04 " !@:6Y8\?:&#[ " M #1!@ &0 'AL+W=OVBE;HF,22P"I *=%HONB%8MVN3G)"HCLWL0Z'_?K:39BD$M)O$'^=]\YSC MY&2TE^I%YP!(#B47>NSEB-L[W]=)#B73MW(+PNQD4I4,S51M?+U5P%(G*KE/ M@R#V2U8(;S)R:PLU&+I29^8U+6I0@="$%49"-O?OP;A;;>!?PJX"];HV)S60MY8N=/*9C+[! MP"%!Z\#,[15FP+DU,AA_:D^O>:05ML?O[E]=[B:7-=,PD_QWD6(^]H8>22%C M.XY+N?\&=3Z1]4LDU^Y*]G5LX)%DIU&6M=@0E(6H[NQ0UZ$E".,S EH+Z+&@ M?T;0JP4]EVA%YM*:,V23D9)[HFRT<;,#5QNG-MD4PI[B"I79+8P.)]\E OE" M/I-'D<@2R$]V &VF#UD&KL*M#;)D)G@)B11)P0OFSL&\2&0FR^T.(6W'/AS, MBZ:!7$U!0%;@-;F: [*"ZVMC_[R:DZM/UR,?30Z6Q$]JWFG%2\_PAI0\28&Y M)@\BA?2C@6^2;RI WRLPI1<=YY#QU L_^1ATY.+^#TF@/I.;_^ M&3];.X9$(\,=2O5&E"EZ5YTJF\C9V&_U==(/XS@V*;RVZ4_#HL&0AOTF[ -E MOZ'L7Z1D3<$388!+VX MFSAJB*.+Q#\P!]5%%9T\CM)A'!Q!G4:%03CL1HH;I/CR44MDO LI/CVS(0V& MT1'3:=C 5#,^IO);W:$$M7%-4Y-$[@16GTFSVO3E>]>.CM:GIE]7[?6?3=7L MGYC:%$(3#IFQ#&X'!DI5#;2:H-RZ'K26:#J:&^;FGP/*!IC]3)H^5$_L YJ_ MV.0O4$L#!!0 ( &!I;EA%_D03:0( + % 9 >&PO=V]R:W-H965T M;R301C6:4XTR":JJ* MR):&W"\SIJM0VX*=)35:X0/U4SZ29^3U+3BODB@H.$HN1=QO>3(8V MWR5\I[A1>V.P3I9"/-O)UWSD!580,LRT92#FM\8),F:)C(R?':?7;VF!^^,= M^V?GW7A9$H43P7[07) (0=X#8&6V5.5M3HDF:2+$!:;,-FQVX MVCBT<4.Y/<6%EF:5&IQ.OPF-$ ;P'N:HJ41S0!H69$WY2L&,$0[G4]2$,@6/ MN-4-81)KXTBR^MGW>[C=O?HQ.YA! ^"ZU+! M'<\Q/R3PC97>3[3S,X[>9)QB-H XN(0HB.)7!$W^!1XZ>/2&G+@O;^SXAB?Y M"A/)86)<2KILW-6U9;V$NZIFX@4E/!"=E:;>!TF7,$.9V<,0Q2X5U3OX(H4R M!T->7BMVJR4,G!C[?M=I, B&B;_>K\#?L@Z,#GNCP_\U.A%*OZ:V);S:DQ'% MT9'6/W,^'0OU]RY_A7+E>H*"3#1FC_9MY]:]MJ/XV+2CMGO\IFE[V0.1 M*\H5,"P,93#X8 3)MC^T$RUJ]\260IL'ZX:E::DH;8)9+X1Y9MW$;M WZ?07 M4$L#!!0 ( &!I;EC^-1KV70( "P% 9 >&PO=V]R:W-H965T!:BYVT"&P!7KKDX,)PNAR*'FAI)+&A M2)4G?EZ04Q6D=7R0N,V_>O)GA[*CTO:D0"1YJ(/!SM>5N0.PG36L!+OD+XV6VUWX8"2\QJEX4J"QF(>+.*;Y=39>X-O M'(_F9 TND[U2]VYSF\^#R!%"@1DY!&9_!URA$ [(TOC=8P9#2.=XNGY$_^!S MM[GLF<&5$M]Y3M4\>!= C@5K!>W4\1/V^5PYO$P)X[]P[&VC ++6D*I[9\N@ MYK+[LX=>AQ.'^/H%AZ1W2#SO+I!GN6;$TIE61]#.VJ*YA4_5>UMR7+JBW)&V MM]SZ4?I9$4(2E[PC$F"E>>%V@"3 M.7Q$56K65#R#6]FUB=/[U1J)<6'@"SY0R\1K%Z-W?![,1X ?&ZSWJ']:LT66 MJ5:2@1UFR ]L+_#T^CR5Q0B6(T]H-1C/0K(:N4S#K-=CV>F1O*!'G,!&2:H, MO)2[:"N/92;ST-J*1S.1)\.T:<7H_]?N!%L4;LS.\/G*'1X<73"(1I? M_<,B/.E@FTOIY]2 ;X.NF8?3X2E8=!/P9-Z](QNF2VX;6&!A7:/QVZL =#>; MW894X^=AK\@*YY>5?R/0O4$L#!!0 ( &!I;EB_ M.IV8W@( #T) 9 >&PO=V]R:W-H965T9-&W22E[ET0XB0;I'/W1"=(\/TSZ8Y$*L)G9F&^C^_6PG30&%B$J5 M$/'CGN-[CBU?CW=!!5UG MR@RXT;@D:[Q']:.<"]US&Y:4%L@DY0P$KB;.U+^.1R;>!ORDN)-[;3!*EIP_ MF,YM.G$\DQ#FF"C#0/1GBS'FN2'2:?RM.9UF20/<;S^Q?[;:M98ED1CS_!=- M539Q1@ZDN"*;7"WX[BO6>OJ&+^&YM/^PJV,]!Y*-5+RHP3J#@K+J2QYK'_8 M_M4)0% #@G,!80T(K= J,ROKAB@2C07?@3#1FLTTK#<6K=509G;Q7@D]2S5. M1=^X0O!]N("8LP29$L38*X&O(!:84@4+*A\^P#U=,[JB"6$*8IL7"@F$I? % M^5J0,J,)W++J7)D-NC@%T3^8HS"+Z7-B%OK.%68GI(X&I_&Y.#)Y-G02?C#28]"+T/$'A!" NBL"6K^!P.WW($+1P'B87- M[H>6]/($:>/NM-.O3A)SSUS+DB0XOO$'WLQ9A;;QMYO3 U6_W?]CD,SS/_[C3_TZ2E_K_2F0'>D>-WM'+ M_1^U.>M='?G?&N4/C_QW]RJ1]G5M"[2$A&^8JN[+9K1Y TQMZ3L:G^FW057* MGVFJA\4=$6NJ"U2.*TWI]8;Z0(NJ6%<=Q4M;[Y9&PO=V]R M:W-H965T'[,DH@(_*$KX'I-TLN,J+T4*Q\N19 8AN4I7X8!#T_(Y1Y MHX&=NQ.C =^HE#*X$TANLHR(QPFD?#?TL/DUD0"5.>?J.Q2H9>WT,Q+,DF53.^ M^Q,*0J<&+^*IM-]H5ZP-/!1MI.)9$:PSR"C+?\F/0HA* #Y_(2 L L+7!G2* M@(XEFF=F:5T2148#P7=(F-4:S3Q8;6RT9D.9L7&NA'Y+=9P:W7(%"&/T'DTY MBX I08R\$O$EF@J(J4(S*A_>H3E=,;JD$6$*36U>("0B+$8?@:\$62GZ44%JDI,*7R"%0W3#F4HDNF(QQ'4 7RM4RA0^R30)G8B7$)V@3O . MA4'803.BH"&KZ6LPL,4(&S!JB75*_SH6M/L":$7\FH'6M5)"]!-]N;V^O[I$ M\_OQ_=6\25+G/N8VN9!K$L'0T]>%!+$%;_3;&]P+_FA2XDA@-4FZI21=IR3C M)G9Y" YLC+G;MJ/@Y+075#]XX&^K))S;'$CBM"1Q>AQ?/U[-;L:W?S5Q=N[0 MUM$C@=7$Z)5B]-H[VFMR%/>?>>@$/C#MLS+ML^-X^%DE(/2:C5[QZ+SWG!NV MM?1(8#5M^J4V_?:6]ILL#7O/+'4"'YCV>9GVN3/MI_]\__6R=>[2UL3#JJ5=J'WP,-QU7K'N#UCR/A%:7(]S+$1[@ MI#.F-<.P\=;NO>#DO@K"[C+HE4Z^_J)U[]>:]O]1#^%]080/J(C<,:T9-A98 M__H3]2N=BK9K91LXB2+C2%Z-E[-EDSBVK=&S^8EI'FT'M(?).\\;(E94-S I M+#5D<'*F*Q>1-W/Y0/&U[8<67.DS8Q\3W0"#, OT^R77/5$Q,!N4+?7H%U!+ M P04 " !@:6Y8V8FB7G<# #."P &0 'AL+W=OEL"Y%$ MC:3M[M_O2,FR[,A*A@;]$HO4OK=7GGNBK> M0L[5K2BAP#=K(7.N<2DWKBHE\,2"\LQEGA>Z.4\+)YK8O:6,)F*GL[2 I21J ME^=<_CN#3!RF#G6.&U_2S5:;#3>:E'P#*]!?RZ7$E=NP)&D.A4I%022LI\X' M>C>GS !LQ-\I'%3KF1@K#T(\FL7'9.IX1A%D$&M#P?%G#W/(,L.$.OZI29WF M3 -L/Q_9?[?FT+3-F_Y%#' M>@Z)=TJ+O :C@CPMJE_^O;Z(%H"&5P"L!K!+0' %X-< WQJME%E;"ZYY-)'B M0*2)1C;S8._&HM%-6IA_XTI+?)LB3D>?A09"&7E'/F/.?"QBD0.Y^5,H]98L M09+5EDO MS.NTICP(B&+--MI2,@]ET5:;%0K[&8!FJ<90M^1KZL%N?GU[<35 MJ-*,W5^Y;/O\*7W65]\L5F8N\W&EN\OFNZZ(JGJ";QQ3XG2IY M#%,'*UB!W(,3O?F%AM[[+I.O1'9F.6@L!WWLDY#8N@CJS+'#*)/3BF#O M4QH3'W.=W*3'[<[$KLX)VT:"8#P8>N,+)YV!+/!'M-M*V%@)>ZV<4LLH3426 M<:E(B05J57>*KAB'+2W>[1/!74%TT"UVV(@=]M9!TTA>4 G#UZR$5R([,SUJ M3(]^H!)&+ZR$IW&]E3!NQ(U_4B6,7UH)G8$]E4"]TX?-ZS5CTPM'! +K-NW#0$<<&E(57JH.VOLRTU\!?0O/L>/?/ MB:4=]QBRT8C22[F=D<-!&(17!+.38/;\C6/V%$V.GUK/_VA(]2G/=*3.J";UKM#5 -'L-D/I!SN*7>S/S+!J)ZX3337I?N)RDV(Z9;!& M2N]VB&4IJ^&Q6FA1VOGK06B6QEF^A2&]6S.2EJ?J8I)B^1*E]38 MJ2["NM*,9C4XE2(<]'IQ6%(NR7@D%^55:>I@IA;2I.2\,P7N]C5+23_^2 )' M-U$92\G=R?M?"V4NWP7N?O3AZ*AW=WJY;S]I@%,2>DG/7T!ZUL-Y+891Q[O4 MZ^7'EJOS/<:<+UZDZQE9&/'0HVHCR>D)VX*,1[F2F[I$Q!DL+RU9<$]%2B94 M\*GFX)73DHN5,P_ ,%-"Z<#8AK"!^F"I'QS<=S/HE9:GY%+I)K:+X/Y.V^5[ MP'H& KD0G< !<8;QJ*+&,"VO[*19W!B?0$$[OEU55F&AZ:H_."<;A^9F@TR5 MSICNPO3)VC0>"9:#',V+.=R-JD( C5&E'62<%DK21L/:HQU8VAD3X@8>I)_Y M#O:Y7S9 MS)=Y)P!C[^/LM*K$ZK/@A2R9V_R+ XY'=.T7S)7F#S8:M,K,&I@FP3W3AL^V M+;\UK6[9TJS;:9GCF@=O4//?S7/!)--4;(NVO7_(67ZUXO;D^1>:FW\K^XJ] M(J.+P]?8GK:'+C)^"R+?1+F'!RDR;,_&K0-XY_CMK &\YJ3D![PNB4W08+K@ MPG#9SN8\RYA\<@I;>D.G]B5YA]^NSUA.%\+<=F!*-N/O+..+,NE674,BVE6; M\3?87C_NWK%L+"XSMF39I)WJ8MH, SNP4=L+'/:1J^;R(YB/P_P(8%@<3 'F MX[RP./_3?H;H?AR&:1MZD2'J,T1]G)"!Q8%(?Y9KO-IXASS?!UA-G^L0;*=X)V([Q7,-B#]OX)$D M_FIC<< #JP+6.Q#?'P=ZRN\315!53!OV!.-(DF (]**_1^,8R4X,'W]]L*-8?20$3;8T.P6BP^0"X99K>]9!:GD"4! HB, \ !X;"]W;W)K8F]O:RYX;6S% MFEMOXC@4@/^*Q#0:#RO*Q>#;UWU?LO%@^T&KF+H78:+P_ZS">*E^C]AE.LUS]FUS.N*"=/$4;'2 M @J]X5L](()6;#+8-R%7HB WPD"0R$PT74%;>Z5PZEG17+4!7"^&ZI+# 34K M''A_D-]I247.B(NG]IABA"D.R41.YE3!#S;,W2GZBP>9()!)OY +>U[;1A.Y M)O=;IIHV'EV*T*4AZ19&YH\;619,Z3_(S;^U!YDAD%E(R"G5&_*CE$]^",<( MW;A?NNG+"L+%\EK!@^LAG2%(9_TBS83F,(9DJ6@!68U<*47%0Q-"C_ <(3SO ME_ .G$$BE:&8TN![991W<;"I!'U; V'E=F1W8 O M3E? 5I"IK*!+#:U]3$P;4<_><)ACP+S*Y(^I9'H[NPCV_ MN:P86=+G]@AC%HEZUDB3I$=NB U7SA]D0>U00R!+'Q-3213$)58F4PG306%> M9UBO=Z*/B0DE"F&4R"KE#L[P.MXGMU+K+V3.E#^EQHP2AS!*E+AH5A4WS;R+ M"ILC12L]QIA=YV8(RN4$+(YIV?RQ_8A\3,TT8W/N8F(22$!)J M8TIMWJ+J8V(22D)(J-.5B8^)22@)(:%.S-3'Q"24A)!0)V;F8V(62D)8Z/C, MP]Z=/B9FH22$A8YBNBI_1QRS4!K"0ET;&RT+I9B%TA 6.C*/>\WR/B9FH32$ MA?:8;Y1O11\3LU :PD(?IYM[9?J8Z.N:$!;Z@.G6ZELI_+V.%+-0&L)"79CM M1PBS4/H9NV^'Z:>/B5DH_92ET"FY6:_MBW )/[F/!00D5#B]B %28/D<269Q#) M[HE"$8Y%08/F5-;8\O5?6)^L\?PE[=JR[0YYL^WSY+C?'?*BV932/X20EYNT M;_--UZ?#^C;Y7N[3D>UD8?LYH'N<_9TY>3WWZR\1NM=HN MTU.W_-BG0_EE\2:DTD]=V6*>R:,)Q=SV=P^4@-^?)S>3Y;=$,SV_2 MA-I!"D%:/\@@R.H'.01Y_: (0;%^T R"9O6#;B'HMG[0'03=U0^ZAZ#[^D$R M11FG!$DCK FT%N1:"+P6!%L(Q!8D6PC,%D1;"-069%L(W!:$6PCD%J1;".P6 MQ%L(]%;46PGT5M1;"?36T<BN!WHIZ*X'>BGHK@=Z*>BN!WHIZ*X'> MBGHK@=Z*>BN!WH9Z&X'>AGH;@=Z&>AN!WC;:+"'0VU!O(]#;4&\CT-M0;R/0 MVU!O(]#;4&\CT-M0;R/0VU%O)]#;46\GT-M1;R?0VU%O)]#;1YO=!'H[ZNT$ M>COJ[01Z.^KM!'H[ZNT$>COJ[01Z1]0[$N@=4>](H'=$O2.!WA'UCO^I=RZG M7]/U\9?E]\G1JW+!. @=!&S:;EL6_0$W>4!$$ENVH?#W=<(@M:*HB$J]FT2)[7=?;.EL,GK; M6O*]35TU?IPL0K /C/E\0;7VJ;'4Q)&9<;4.\='-F=7Y4L^)B<%@R'+3!&I" M/[0UDLGHB69Z587>\R:^]J5IQHFCRB>]Q]W$-FN<:&NK,M\3 MTKBRF^,7I?4W<4+"3B:T(S\'[->]KLFYLJ#>5+OPHNLXBVTJYL.V(I^>+W&B M1S.;E3D5)E_5<4GJK2-=^ 51J*MT5_3F?'*(.TR[*[\ZORMS+C#.G#IC?3PQ M1Y?''8ZD7=VWL1"Y4)[_Q&-B+'WU]U%[V@45O\R.V_MAW+([#\^ZV_5[_/6, MC_4O[$. ]"%!^E @?60@?0Q!^K@%Z>,.I(][D#[X *41%%$Y"JDX K @ $0 M @ &O 9&]C4')O<',O8V]R92YX;6Q02P$"% ,4 " !@ M:6Y8F5R<(Q & "<)P $P @ ', 0 >&PO=&AE;64O=&AE M;64Q+GAM;%!+ 0(4 Q0 ( &!I;EA4&PO=V]R:W-H965T M&UL4$L! A0#% @ 8&EN6$C)A0YT @ @< !@ M ("!/!@ 'AL+W=O8: !X;"]W;W)K M&PO=V]R:W-H965T&UL4$L! M A0#% @ 8&EN6$B1+5B/!@ LAP !@ ("!."0 'AL M+W=OUF+V(P, M + & 8 " @?TJ !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ 8&EN6- ; M[:H: P L@8 !@ ("!%#$ 'AL+W=O&UL4$L! A0#% @ M8&EN6$N4=5## @ U@4 !D ("!.$, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 8&EN6(T+>XD$!0 X H !D M ("!75@ 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ 8&EN6#1!J.H- P #@< !D ("!F60 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 8&EN M6%M6%"VP @ H@4 !D ("!F7P 'AL+W=O&PO=V]R:W-H965TR" !X;"]W;W)K M&UL4$L! A0#% @ 8&EN6/J_O\M[ @ 8@4 M !D ("!Q88 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 8&EN6+_ N(?& @ B 8 !D M ("!NY 'AL+W=O@.D" "]!@ &0 @(&XDP >&PO=V]R:W-H965T M&UL4$L! A0# M% @ 8&EN6.>3_(F6 @ *0< !D ("!\)L 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ 8&EN6#@D M#DK& @ /0D !D ("!]Z0 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 8&EN6*F:E[V; P @PP !D M ("!:K 'AL+W=O&PO M=V]R:W-H965TV !X;"]W;W)K&UL4$L! A0#% @ 8&EN6(XZG4+9 P J!, !D ("! M2KD 'AL+W=OS@$ !V% &0 @(%:O0 >&PO=V]R:W-H965T&UL4$L! A0#% M @ 8&EN6*=G8I9C @ "@4 !D ("!$L0 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 8&EN6/XU&O9= @ + 4 !D M ("![=4 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ 8&EN6-F)HEYW P S@L !D ("!/-\ M 'AL+W=O&PO&PO7W)E;',O=V]R:V)O;VLN>&UL M+G)E;'-02P$"% ,4 " !@:6Y8*F32ILH! ";'P $P M@ 'S[0 6T-O;G1E;G1?5'EP97-=+GAM;%!+!08 /0 ] *(0 #N[P " ! end XML 67 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 68 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 70 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.0.1 html 74 263 1 false 35 0 false 8 false false R1.htm 000 - Document - Document And Entity Information Sheet http://www.alsic.com/20231230/role/statement-document-and-entity-information Document And Entity Information Cover 1 false false R2.htm 001 - Statement - Balance Sheets Sheet http://www.alsic.com/20231230/role/statement-balance-sheets Balance Sheets Statements 2 false false R3.htm 002 - Statement - Balance Sheets (Parentheticals) Sheet http://www.alsic.com/20231230/role/statement-balance-sheets-parentheticals Balance Sheets (Parentheticals) Statements 3 false false R4.htm 003 - Statement - Statements of Operations Sheet http://www.alsic.com/20231230/role/statement-statements-of-operations Statements of Operations Statements 4 false false R5.htm 004 - Statement - Statements of Stockholders' Equity Sheet http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity Statements of Stockholders' Equity Statements 5 false false R6.htm 005 - Statement - Statements of Cash Flows Sheet http://www.alsic.com/20231230/role/statement-statements-of-cash-flows Statements of Cash Flows Statements 6 false false R7.htm 006 - Disclosure - Cybersecurity Sheet http://www.alsic.com/20231230/role/statement-cybersecurity Cybersecurity Notes 7 false false R8.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Notes 8 false false R9.htm 995453 - Disclosure - Note 1 - Nature of Business Sheet http://www.alsic.com/20231230/role/statement-note-1-nature-of-business Note 1 - Nature of Business Notes 9 false false R10.htm 995454 - Disclosure - Note 2 - Summary of Significant Accounting Policies Sheet http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies Note 2 - Summary of Significant Accounting Policies Notes 10 false false R11.htm 995455 - Disclosure - Note 3 - Inventories Sheet http://www.alsic.com/20231230/role/statement-note-3-inventories Note 3 - Inventories Notes 11 false false R12.htm 995456 - Disclosure - Note 4 - Leases Sheet http://www.alsic.com/20231230/role/statement-note-4-leases Note 4 - Leases Notes 12 false false R13.htm 995457 - Disclosure - Note 5 - Share-based Compensation Plans Sheet http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans Note 5 - Share-based Compensation Plans Notes 13 false false R14.htm 995458 - Disclosure - Note 6 - Accrued Expenses Sheet http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses Note 6 - Accrued Expenses Notes 14 false false R15.htm 995459 - Disclosure - Note 7 - Revolving Line of Credit Sheet http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit Note 7 - Revolving Line of Credit Notes 15 false false R16.htm 995460 - Disclosure - Note 8 - Notes Payable Notes http://www.alsic.com/20231230/role/statement-note-8-notes-payable Note 8 - Notes Payable Notes 16 false false R17.htm 995461 - Disclosure - Note 9 - Income Taxes Sheet http://www.alsic.com/20231230/role/statement-note-9-income-taxes Note 9 - Income Taxes Notes 17 false false R18.htm 995462 - Disclosure - Note 10 - Retirement Savings Plan Sheet http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan Note 10 - Retirement Savings Plan Notes 18 false false R19.htm 995463 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information Sheet http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information- Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information Notes 19 false false R20.htm 995464 - Disclosure - Note 12 - Net Income (Loss) Per Share Sheet http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share Note 12 - Net Income (Loss) Per Share Notes 20 false false R21.htm 995465 - Disclosure - Note 13 - Commitments and Contingencies Sheet http://www.alsic.com/20231230/role/statement-note-13-commitments-and-contingencies Note 13 - Commitments and Contingencies Notes 21 false false R22.htm 995466 - Disclosure - Significant Accounting Policies (Policies) Sheet http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies Significant Accounting Policies (Policies) Policies http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies 22 false false R23.htm 995467 - Disclosure - Note 3 - Inventories (Tables) Sheet http://www.alsic.com/20231230/role/statement-note-3-inventories-tables Note 3 - Inventories (Tables) Tables http://www.alsic.com/20231230/role/statement-note-3-inventories 23 false false R24.htm 995468 - Disclosure - Note 4 - Leases (Tables) Sheet http://www.alsic.com/20231230/role/statement-note-4-leases-tables Note 4 - Leases (Tables) Tables http://www.alsic.com/20231230/role/statement-note-4-leases 24 false false R25.htm 995469 - Disclosure - Note 5 - Share-based Compensation Plans (Tables) Sheet http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-tables Note 5 - Share-based Compensation Plans (Tables) Tables http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans 25 false false R26.htm 995470 - Disclosure - Note 6 - Accrued Expenses (Tables) Sheet http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-tables Note 6 - Accrued Expenses (Tables) Tables http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses 26 false false R27.htm 995471 - Disclosure - Note 8 - Notes Payable (Tables) Notes http://www.alsic.com/20231230/role/statement-note-8-notes-payable-tables Note 8 - Notes Payable (Tables) Tables http://www.alsic.com/20231230/role/statement-note-8-notes-payable 27 false false R28.htm 995472 - Disclosure - Note 9 - Income Taxes (Tables) Sheet http://www.alsic.com/20231230/role/statement-note-9-income-taxes-tables Note 9 - Income Taxes (Tables) Tables http://www.alsic.com/20231230/role/statement-note-9-income-taxes 28 false false R29.htm 995473 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information (Tables) Sheet http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-tables Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information (Tables) Tables http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information- 29 false false R30.htm 995474 - Disclosure - Note 12 - Net Income (Loss) Per Share (Tables) Sheet http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-tables Note 12 - Net Income (Loss) Per Share (Tables) Tables http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share 30 false false R31.htm 995475 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Details Textual) Sheet http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual Note 2 - Summary of Significant Accounting Policies (Details Textual) Details 31 false false R32.htm 995476 - Disclosure - Note 3 - Inventories - Inventories (Details) Sheet http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details Note 3 - Inventories - Inventories (Details) Details 32 false false R33.htm 995477 - Disclosure - Note 4 - Leases (Details Textual) Sheet http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual Note 4 - Leases (Details Textual) Details http://www.alsic.com/20231230/role/statement-note-4-leases-tables 33 false false R34.htm 995478 - Disclosure - Note 4 - Leases - Capitalized Operating Leases (Details) Sheet http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details Note 4 - Leases - Capitalized Operating Leases (Details) Details 34 false false R35.htm 995479 - Disclosure - Note 4 - Leases - Costs (Details) Sheet http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details Note 4 - Leases - Costs (Details) Details 35 false false R36.htm 995480 - Disclosure - Note 5 - Share-based Compensation Plans (Details Textual) Sheet http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual Note 5 - Share-based Compensation Plans (Details Textual) Details http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-tables 36 false false R37.htm 995481 - Disclosure - Note 5 - Share-based Compensation Plans - Stock Option Activity (Details) Sheet http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details Note 5 - Share-based Compensation Plans - Stock Option Activity (Details) Details 37 false false R38.htm 995482 - Disclosure - Note 5 - Share-based Compensation Plans - Annualized Weighted Average Values of Significant Assumptions Used to Estimate Fair Values (Details) Sheet http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details Note 5 - Share-based Compensation Plans - Annualized Weighted Average Values of Significant Assumptions Used to Estimate Fair Values (Details) Details 38 false false R39.htm 995483 - Disclosure - Note 6 - Accrued Expenses (Details Textual) Sheet http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-details-textual Note 6 - Accrued Expenses (Details Textual) Details http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-tables 39 false false R40.htm 995484 - Disclosure - Note 6 - Accrued Expenses - Accrued Expenses (Details) Sheet http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details Note 6 - Accrued Expenses - Accrued Expenses (Details) Details 40 false false R41.htm 995485 - Disclosure - Note 7 - Revolving Line of Credit (Details Textual) Sheet http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual Note 7 - Revolving Line of Credit (Details Textual) Details http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit 41 false false R42.htm 995486 - Disclosure - Note 8 - Notes Payable (Details Textual) Notes http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual Note 8 - Notes Payable (Details Textual) Details http://www.alsic.com/20231230/role/statement-note-8-notes-payable-tables 42 false false R43.htm 995487 - Disclosure - Note 8 - Note Payable - Note Payable Maturities (Details) Sheet http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details Note 8 - Note Payable - Note Payable Maturities (Details) Details 43 false false R44.htm 995488 - Disclosure - Note 9 - Income Taxes (Details Textual) Sheet http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual Note 9 - Income Taxes (Details Textual) Details http://www.alsic.com/20231230/role/statement-note-9-income-taxes-tables 44 false false R45.htm 995489 - Disclosure - Note 9 - Income Taxes - Components of Income Tax Expense (Benefit) (Details) Sheet http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details Note 9 - Income Taxes - Components of Income Tax Expense (Benefit) (Details) Details 45 false false R46.htm 995490 - Disclosure - Note 9 - Income Taxes - Components of Net Deferred Tax Assets (Details) Sheet http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details Note 9 - Income Taxes - Components of Net Deferred Tax Assets (Details) Details 46 false false R47.htm 995491 - Disclosure - Note 9 - Income Taxes - Summary of Changes in Deferred Tax Asset (Details) Sheet http://www.alsic.com/20231230/role/statement-note-9-income-taxes-summary-of-changes-in-deferred-tax-asset-details Note 9 - Income Taxes - Summary of Changes in Deferred Tax Asset (Details) Details 47 false false R48.htm 995492 - Disclosure - Note 9 - Income Taxes - Effective Income Tax Rate Reconciliation for Computed Income Tax Expense (Benefit) (Details) Sheet http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details Note 9 - Income Taxes - Effective Income Tax Rate Reconciliation for Computed Income Tax Expense (Benefit) (Details) Details 48 false false R49.htm 995493 - Disclosure - Note 10 - Retirement Savings Plan (Details Textual) Sheet http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan-details-textual Note 10 - Retirement Savings Plan (Details Textual) Details http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan 49 false false R50.htm 995494 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information (Details Textual) Sheet http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information (Details Textual) Details http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-tables 50 false false R51.htm 995495 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Significant Customers as a Percentage of Total Revenues (Details) Sheet http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Significant Customers as a Percentage of Total Revenues (Details) Details 51 false false R52.htm 995496 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Revenue by Geographical Location (Details) Sheet http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Revenue by Geographical Location (Details) Details 52 false false R53.htm 995497 - Disclosure - Note 12 - Net Income (Loss) Per Share - Basic and Diluted Earnings Per Share (Details) Sheet http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details Note 12 - Net Income (Loss) Per Share - Basic and Diluted Earnings Per Share (Details) Details http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-tables 53 false false All Reports Book All Reports cpsh-20231230.xsd cpsh-20231230_cal.xml cpsh-20231230_def.xml cpsh-20231230_lab.xml cpsh-20231230_pre.xml cpsh20231229_10k.htm http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 http://xbrl.sec.gov/ecd/2023 true true JSON 73 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "cpsh20231229_10k.htm": { "nsprefix": "cpsh", "nsuri": "http://www.alsic.com/20231230", "dts": { "schema": { "local": [ "cpsh-20231230.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/currency/2023/currency-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd", "https://xbrl.sec.gov/exch/2023/exch-2023.xsd", "https://xbrl.sec.gov/naics/2023/naics-2023.xsd", "https://xbrl.sec.gov/sic/2023/sic-2023.xsd", "https://xbrl.sec.gov/stpr/2023/stpr-2023.xsd" ] }, "calculationLink": { "local": [ "cpsh-20231230_cal.xml" ] }, "definitionLink": { "local": [ "cpsh-20231230_def.xml" ] }, "labelLink": { "local": [ "cpsh-20231230_lab.xml" ] }, "presentationLink": { "local": [ "cpsh-20231230_pre.xml" ] }, "inline": { "local": [ "cpsh20231229_10k.htm" ] } }, "keyStandard": 248, "keyCustom": 15, "axisStandard": 17, "axisCustom": 0, "memberStandard": 17, "memberCustom": 17, "hidden": { "total": 37, "http://xbrl.sec.gov/ecd/2023": 4, "http://fasb.org/us-gaap/2023": 23, "http://www.alsic.com/20231230": 4, "http://xbrl.sec.gov/dei/2023": 6 }, "contextCount": 74, "entityCount": 1, "segmentCount": 35, "elementCount": 387, "unitCount": 8, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 408, "http://xbrl.sec.gov/dei/2023": 37, "http://xbrl.sec.gov/ecd/2023": 5 }, "report": { "R1": { "role": "http://www.alsic.com/20231230/role/statement-document-and-entity-information", "longName": "000 - Document - Document And Entity Information", "shortName": "Document And Entity Information", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "b", "p", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "b", "p", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.alsic.com/20231230/role/statement-balance-sheets", "longName": "001 - Statement - Balance Sheets", "shortName": "Balance Sheets", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.alsic.com/20231230/role/statement-balance-sheets-parentheticals", "longName": "002 - Statement - Balance Sheets (Parentheticals)", "shortName": "Balance Sheets (Parentheticals)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": null, "uniqueAnchor": null }, "R4": { "role": "http://www.alsic.com/20231230/role/statement-statements-of-operations", "longName": "003 - Statement - Statements of Operations", "shortName": "Statements of Operations", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R5": { "role": "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity", "longName": "004 - Statement - Statements of Stockholders' Equity", "shortName": "Statements of Stockholders' Equity", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "i_2021-12-25_StatementEquityComponentsAxis-CommonStockMember", "name": "us-gaap:SharesOutstanding", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2021-12-25_StatementEquityComponentsAxis-CommonStockMember", "name": "us-gaap:SharesOutstanding", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R6": { "role": "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows", "longName": "005 - Statement - Statements of Cash Flows", "shortName": "Statements of Cash Flows", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:NetIncomeLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ShareBasedCompensation", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "unique": true } }, "R7": { "role": "http://www.alsic.com/20231230/role/statement-cybersecurity", "longName": "006 - Disclosure - Cybersecurity", "shortName": "Cybersecurity", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "7", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "cpsh:CybersecurityTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "cpsh:CybersecurityTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R8": { "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "longName": "995445 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "ecd:MtrlTermsOfTrdArrTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "ecd:MtrlTermsOfTrdArrTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.alsic.com/20231230/role/statement-note-1-nature-of-business", "longName": "995453 - Disclosure - Note 1 - Nature of Business", "shortName": "Note 1 - Nature of Business", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "longName": "995454 - Disclosure - Note 2 - Summary of Significant Accounting Policies", "shortName": "Note 2 - Summary of Significant Accounting Policies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.alsic.com/20231230/role/statement-note-3-inventories", "longName": "995455 - Disclosure - Note 3 - Inventories", "shortName": "Note 3 - Inventories", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.alsic.com/20231230/role/statement-note-4-leases", "longName": "995456 - Disclosure - Note 4 - Leases", "shortName": "Note 4 - Leases", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "longName": "995457 - Disclosure - Note 5 - Share-based Compensation Plans", "shortName": "Note 5 - Share-based Compensation Plans", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses", "longName": "995458 - Disclosure - Note 6 - Accrued Expenses", "shortName": "Note 6 - Accrued Expenses", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "longName": "995459 - Disclosure - Note 7 - Revolving Line of Credit", "shortName": "Note 7 - Revolving Line of Credit", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "longName": "995460 - Disclosure - Note 8 - Notes Payable", "shortName": "Note 8 - Notes Payable", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:LongTermDebtTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:LongTermDebtTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.alsic.com/20231230/role/statement-note-9-income-taxes", "longName": "995461 - Disclosure - Note 9 - Income Taxes", "shortName": "Note 9 - Income Taxes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan", "longName": "995462 - Disclosure - Note 10 - Retirement Savings Plan", "shortName": "Note 10 - Retirement Savings Plan", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "longName": "995463 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information", "shortName": "Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share", "longName": "995464 - Disclosure - Note 12 - Net Income (Loss) Per Share", "shortName": "Note 12 - Net Income (Loss) Per Share", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.alsic.com/20231230/role/statement-note-13-commitments-and-contingencies", "longName": "995465 - Disclosure - Note 13 - Commitments and Contingencies", "shortName": "Note 13 - Commitments and Contingencies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies", "longName": "995466 - Disclosure - Significant Accounting Policies (Policies)", "shortName": "Significant Accounting Policies (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "22", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.alsic.com/20231230/role/statement-note-3-inventories-tables", "longName": "995467 - Disclosure - Note 3 - Inventories (Tables)", "shortName": "Note 3 - Inventories (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "23", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.alsic.com/20231230/role/statement-note-4-leases-tables", "longName": "995468 - Disclosure - Note 4 - Leases (Tables)", "shortName": "Note 4 - Leases (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "24", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-tables", "longName": "995469 - Disclosure - Note 5 - Share-based Compensation Plans (Tables)", "shortName": "Note 5 - Share-based Compensation Plans (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-tables", "longName": "995470 - Disclosure - Note 6 - Accrued Expenses (Tables)", "shortName": "Note 6 - Accrued Expenses (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-tables", "longName": "995471 - Disclosure - Note 8 - Notes Payable (Tables)", "shortName": "Note 8 - Notes Payable (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LongTermDebtTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LongTermDebtTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-tables", "longName": "995472 - Disclosure - Note 9 - Income Taxes (Tables)", "shortName": "Note 9 - Income Taxes (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-tables", "longName": "995473 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information (Tables)", "shortName": "Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:ConcentrationRiskDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:ConcentrationRiskDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-tables", "longName": "995474 - Disclosure - Note 12 - Net Income (Loss) Per Share (Tables)", "shortName": "Note 12 - Net Income (Loss) Per Share (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "longName": "995475 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Details Textual)", "shortName": "Note 2 - Summary of Significant Accounting Policies (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "31", "firstAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:TradeAndOtherAccountsReceivablePolicy", "us-gaap:SignificantAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:TradeAndOtherAccountsReceivablePolicy", "us-gaap:SignificantAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details", "longName": "995476 - Disclosure - Note 3 - Inventories - Inventories (Details)", "shortName": "Note 3 - Inventories - Inventories (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "32", "firstAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:InventoryRawMaterials", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:InventoryRawMaterials", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual", "longName": "995477 - Disclosure - Note 4 - Leases (Details Textual)", "shortName": "Note 4 - Leases (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "33", "firstAnchor": { "contextRef": "i_2023-12-30_LeaseContractualTermAxis-NortonFacilityMember_RangeAxis-MinimumMember", "name": "cpsh:LesseeOperatingLeaseMonthlyRentPayments", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2023-12-30_LeaseContractualTermAxis-NortonFacilityMember_RangeAxis-MinimumMember", "name": "cpsh:LesseeOperatingLeaseMonthlyRentPayments", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details", "longName": "995478 - Disclosure - Note 4 - Leases - Capitalized Operating Leases (Details)", "shortName": "Note 4 - Leases - Capitalized Operating Leases (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "34", "firstAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details", "longName": "995479 - Disclosure - Note 4 - Leases - Costs (Details)", "shortName": "Note 4 - Leases - Costs (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "i_2023-12-31", "name": "us-gaap:OperatingLeaseLiabilityCurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:LeaseCostTableTextBlock", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "unique": true } }, "R36": { "role": "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual", "longName": "995480 - Disclosure - Note 5 - Share-based Compensation Plans (Details Textual)", "shortName": "Note 5 - Share-based Compensation Plans (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "i_2020-12-26_PlanNameAxis-The2020EquityIncentivePlanMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2020-12-26_PlanNameAxis-The2020EquityIncentivePlanMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R37": { "role": "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details", "longName": "995481 - Disclosure - Note 5 - Share-based Compensation Plans - Stock Option Activity (Details)", "shortName": "Note 5 - Share-based Compensation Plans - Stock Option Activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "i_2022-12-31_PlanNameAxis-The2020EquityIncentivePlanMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2022-12-31_PlanNameAxis-The2020EquityIncentivePlanMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details", "longName": "995482 - Disclosure - Note 5 - Share-based Compensation Plans - Annualized Weighted Average Values of Significant Assumptions Used to Estimate Fair Values (Details)", "shortName": "Note 5 - Share-based Compensation Plans - Annualized Weighted Average Values of Significant Assumptions Used to Estimate Fair Values (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-details-textual", "longName": "995483 - Disclosure - Note 6 - Accrued Expenses (Details Textual)", "shortName": "Note 6 - Accrued Expenses (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "i_2023-12-30", "name": "cpsh:InreaseInSalesReturnsForPartsOfCreditIssued", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2023-12-30", "name": "cpsh:InreaseInSalesReturnsForPartsOfCreditIssued", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R40": { "role": "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details", "longName": "995484 - Disclosure - Note 6 - Accrued Expenses - Accrued Expenses (Details)", "shortName": "Note 6 - Accrued Expenses - Accrued Expenses (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:AccruedProfessionalFeesCurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:AccruedProfessionalFeesCurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R41": { "role": "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual", "longName": "995485 - Disclosure - Note 7 - Revolving Line of Credit (Details Textual)", "shortName": "Note 7 - Revolving Line of Credit (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "i_2020-05-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-MassachusettsBusinessDevelopmentCorporationMember", "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2020-05-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-MassachusettsBusinessDevelopmentCorporationMember", "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual", "longName": "995486 - Disclosure - Note 8 - Notes Payable (Details Textual)", "shortName": "Note 8 - Notes Payable (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:InterestExpenseDebt", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:LongTermDebtTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "unique": true } }, "R43": { "role": "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details", "longName": "995487 - Disclosure - Note 8 - Note Payable - Note Payable Maturities (Details)", "shortName": "Note 8 - Note Payable - Note Payable Maturities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:LongTermDebtTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:LongTermDebtTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual", "longName": "995488 - Disclosure - Note 9 - Income Taxes (Details Textual)", "shortName": "Note 9 - Income Taxes (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30_IncomeTaxAuthorityAxis-DomesticCountryMember_IncomeTaxAuthorityNameAxis-InternalRevenueServiceIRSMember", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30_IncomeTaxAuthorityAxis-DomesticCountryMember_IncomeTaxAuthorityNameAxis-InternalRevenueServiceIRSMember", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details", "longName": "995489 - Disclosure - Note 9 - Income Taxes - Components of Income Tax Expense (Benefit) (Details)", "shortName": "Note 9 - Income Taxes - Components of Income Tax Expense (Benefit) (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details", "longName": "995490 - Disclosure - Note 9 - Income Taxes - Components of Net Deferred Tax Assets (Details)", "shortName": "Note 9 - Income Taxes - Components of Net Deferred Tax Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:DeferredTaxAssetsOperatingLossCarryforwards", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2023-12-30", "name": "us-gaap:DeferredTaxAssetsOperatingLossCarryforwards", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R47": { "role": "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-summary-of-changes-in-deferred-tax-asset-details", "longName": "995491 - Disclosure - Note 9 - Income Taxes - Summary of Changes in Deferred Tax Asset (Details)", "shortName": "Note 9 - Income Taxes - Summary of Changes in Deferred Tax Asset (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "i_2022-12-31", "name": "us-gaap:DeferredTaxAssetsGross", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "cpsh:SummaryScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2022-12-31", "name": "us-gaap:DeferredTaxAssetsGross", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "cpsh:SummaryScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R48": { "role": "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details", "longName": "995492 - Disclosure - Note 9 - Income Taxes - Effective Income Tax Rate Reconciliation for Computed Income Tax Expense (Benefit) (Details)", "shortName": "Note 9 - Income Taxes - Effective Income Tax Rate Reconciliation for Computed Income Tax Expense (Benefit) (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan-details-textual", "longName": "995493 - Disclosure - Note 10 - Retirement Savings Plan (Details Textual)", "shortName": "Note 10 - Retirement Savings Plan (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R50": { "role": "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "longName": "995494 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information (Details Textual)", "shortName": "Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-SignificantCustomersABAndCMember", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "1", "ancestors": [ "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-SignificantCustomersABAndCMember", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "1", "ancestors": [ "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details", "longName": "995495 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Significant Customers as a Percentage of Total Revenues (Details)", "shortName": "Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Significant Customers as a Percentage of Total Revenues (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "us-gaap:ConcentrationRiskDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "us-gaap:ConcentrationRiskDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "longName": "995496 - Disclosure - Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Revenue by Geographical Location (Details)", "shortName": "Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Revenue by Geographical Location (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Rate", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "us-gaap:ConcentrationRiskDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-GeographicConcentrationRiskMember_StatementGeographicalAxis-US", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Rate", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "us-gaap:ConcentrationRiskDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true, "unique": true } }, "R53": { "role": "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details", "longName": "995497 - Disclosure - Note 12 - Net Income (Loss) Per Share - Basic and Diluted Earnings Per Share (Details)", "shortName": "Note 12 - Net Income (Loss) Per Share - Basic and Diluted Earnings Per Share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:NetIncomeLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2023-01-01_2023-12-30", "name": "us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cpsh20231229_10k.htm", "unique": true } } }, "tag": { "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingPoliciesAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsAndOtherReceivablesNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsAndOtherReceivablesNetCurrent", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Accounts receivable-other", "documentation": "Amount, after allowance, receivable from customers, clients, or other third-parties, and receivables classified as other due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [] }, "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableAndAccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "totalLabel": "Accounts Payable and Accrued Liabilities, Current", "documentation": "Sum of the carrying values as of the balance sheet date of obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits." } } }, "auth_ref": [ "r19" ] }, "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses" ], "lang": { "en-us": { "role": { "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]", "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period." } } }, "auth_ref": [ "r17" ] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Accounts payable", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r16", "r513" ] }, "cpsh_AccountsReceivableAndOtherIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "AccountsReceivableAndOtherIncomeMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable and Other Income [Member]", "documentation": "Accounts Receivable and Other Income." } } }, "auth_ref": [] }, "us-gaap_AccountsReceivableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable [Member]", "documentation": "Due from customers or clients for goods or services that have been delivered or sold." } } }, "auth_ref": [ "r474" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Accounts receivable-trade, net", "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." } } }, "auth_ref": [ "r205", "r206" ] }, "us-gaap_AccruedLiabilitiesAndOtherLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesAndOtherLiabilities", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details" ], "lang": { "en-us": { "role": { "label": "Accrued other", "documentation": "Amount of expenses incurred but not yet paid nor invoiced, and liabilities classified as other." } } }, "auth_ref": [] }, "us-gaap_AccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Accrued expenses", "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)." } } }, "auth_ref": [ "r21" ] }, "us-gaap_AccruedProfessionalFeesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedProfessionalFeesCurrent", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details" ], "lang": { "en-us": { "role": { "label": "Accrued legal and accounting", "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)." } } }, "auth_ref": [ "r21" ] }, "us-gaap_AccruedSalariesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedSalariesCurrent", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details": { "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details" ], "lang": { "en-us": { "role": { "label": "Accrued payroll and related costs", "documentation": "Carrying value as of the balance sheet date of the obligations incurred through that date and payable for employees' services provided. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r21", "r491" ] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "negatedLabel": "Accumulated depreciation and amortization", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r48", "r132", "r391" ] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapital", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Additional paid-in capital", "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock." } } }, "auth_ref": [ "r70", "r513", "r615" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "Additional Paid-in Capital [Member]", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r318", "r319", "r320", "r408", "r552", "r553", "r554", "r598", "r617" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "Share-based compensation expense", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r53", "r54", "r281" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Adjustments to reconcile net income to cash provided by operating activities:" } } }, "auth_ref": [] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_AllocatedShareBasedCompensationExpense", "terseLabel": "Share-Based Payment Arrangement, Expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r313", "r325" ] }, "us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables", "terseLabel": "Allowance for Doubtful Accounts, Premiums and Other Receivables", "documentation": "The valuation allowance as of the balance sheet date to reduce the gross amount of receivables to estimated net realizable value, which would be presented in parentheses on the face of the balance sheet." } } }, "auth_ref": [ "r557" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "us-gaap_AreaOfRealEstateProperty": { "xbrltype": "areaItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AreaOfRealEstateProperty", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_AreaOfRealEstateProperty", "terseLabel": "Area of Real Estate Property (Square Foot)", "documentation": "Area of a real estate property." } } }, "auth_ref": [] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "us-gaap_Assets", "totalLabel": "Total assets", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r105", "r133", "r152", "r181", "r195", "r199", "r210", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r348", "r350", "r361", "r385", "r435", "r513", "r524", "r561", "r562", "r603" ] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "us-gaap_AssetsCurrent", "totalLabel": "Total current assets", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r127", "r136", "r152", "r210", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r348", "r350", "r361", "r513", "r561", "r562", "r603" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Current assets:" } } }, "auth_ref": [] }, "dei_AuditorFirmId": { "xbrltype": "nonemptySequenceNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorFirmId", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Auditor Firm ID", "documentation": "PCAOB issued Audit Firm Identifier" } } }, "auth_ref": [ "r528", "r529", "r530" ] }, "dei_AuditorLocation": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorLocation", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Auditor Location" } } }, "auth_ref": [ "r528", "r529", "r530" ] }, "dei_AuditorName": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorName", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Auditor Name" } } }, "auth_ref": [ "r528", "r529", "r530" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "Award Type [Axis]", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r284", "r285", "r286", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r308", "r309", "r310", "r311", "r312" ] }, "us-gaap_BalanceSheetLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetLocationAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-details-textual" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Location [Axis]", "documentation": "Information by location on balance sheet (statement of financial position)." } } }, "auth_ref": [] }, "us-gaap_BalanceSheetLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetLocationDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-details-textual" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Location [Domain]", "documentation": "Location in the balance sheet (statement of financial position)." } } }, "auth_ref": [ "r58", "r59" ] }, "us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessDescriptionAndBasisOfPresentationTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-1-nature-of-business" ], "lang": { "en-us": { "role": { "label": "Business Description and Basis of Presentation [Text Block]", "documentation": "The entire disclosure for the business description and basis of presentation concepts. Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [ "r65", "r90", "r91" ] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Cash and cash equivalents", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r29", "r130", "r489" ] }, "us-gaap_CashAndCashEquivalentsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsPolicyTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value." } } }, "auth_ref": [ "r30" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "periodStartLabel": "Cash and cash equivalents at beginning of year", "periodEndLabel": "Cash and cash equivalents at end of year", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r29", "r87", "r149" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "totalLabel": "Net increase in cash and cash equivalents", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r2", "r87" ] }, "us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Supplemental disclosures of non-cash activity:" } } }, "auth_ref": [] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingencies", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Commitments & Contingencies", "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur." } } }, "auth_ref": [ "r25", "r63", "r386", "r422" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-13-commitments-and-contingencies" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Text Block]", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r96", "r216", "r217", "r475", "r560" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "Common Stock [Member]", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r515", "r516", "r517", "r519", "r520", "r521", "r522", "r552", "r553", "r598", "r614", "r617" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets-parentheticals" ], "lang": { "en-us": { "role": { "label": "Common stock, par value (in dollars per share)", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r69" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets-parentheticals" ], "lang": { "en-us": { "role": { "label": "Common stock, authorized shares (in shares)", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r69", "r423" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets-parentheticals" ], "lang": { "en-us": { "role": { "label": "Common stock, issued shares (in shares)", "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury." } } }, "auth_ref": [ "r69" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets-parentheticals" ], "lang": { "en-us": { "role": { "label": "Common stock, outstanding shares (in shares)", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r9", "r69", "r423", "r441", "r617", "r618" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Common stock, $0.01 par value, authorized 20,000,000 shares; issued 14,601,487 and 14,460,486 shares; outstanding 14,519,215 and 14,450,470; at December 30, 2023 and December 31, 2022, respectively", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r69", "r387", "r513" ] }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskBenchmarkDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Domain]", "documentation": "The denominator in a calculation of a disclosed concentration risk percentage." } } }, "auth_ref": [ "r38", "r41", "r60", "r61", "r204", "r474" ] }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByBenchmarkAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Axis]", "documentation": "Information by benchmark of concentration risk." } } }, "auth_ref": [ "r38", "r41", "r60", "r61", "r204", "r403", "r474" ] }, "us-gaap_ConcentrationRiskByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByTypeAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Type [Axis]", "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender." } } }, "auth_ref": [ "r38", "r41", "r60", "r61", "r204", "r474", "r538" ] }, "us-gaap_ConcentrationRiskDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskDisclosureTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Disclosure [Text Block]", "documentation": "The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date." } } }, "auth_ref": [ "r91" ] }, "us-gaap_ConcentrationRiskPercentage1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskPercentage1", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details" ], "lang": { "en-us": { "role": { "label": "A", "terseLabel": "Concentration Risk, Percentage", "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." } } }, "auth_ref": [ "r38", "r41", "r60", "r61", "r204" ] }, "us-gaap_ConcentrationRiskTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskTypeDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Type [Domain]", "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." } } }, "auth_ref": [ "r38", "r41", "r60", "r61", "r204", "r474" ] }, "cpsh_ConstructionInProgressNet": { "xbrltype": "monetaryItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "ConstructionInProgressNet", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Construction in progress", "documentation": "The amount of construction in progress, net." } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Deferred revenue", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r260", "r261", "r264" ] }, "us-gaap_ContractWithCustomerLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Deferred revenue \u2013 long term", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent." } } }, "auth_ref": [ "r260", "r261", "r264" ] }, "cpsh_ContractWithCustomerRebates": { "xbrltype": "monetaryItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "ContractWithCustomerRebates", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "cpsh_ContractWithCustomerRebates", "terseLabel": "Contract with Customer, Rebates", "documentation": "Amount of revenue recognized from rebates offered in previous reporting periods." } } }, "auth_ref": [] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfGoodsAndServicesSold", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-operations": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "label": "Cost of product sales", "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities." } } }, "auth_ref": [ "r81", "r381" ] }, "us-gaap_CreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "Credit Facility [Axis]", "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "us-gaap_CreditFacilityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "Credit Facility [Domain]", "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentFederalStateAndLocalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit", "totalLabel": "Current income tax provision (benefit):", "documentation": "Amount of current federal, state, and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national, regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r540" ] }, "us-gaap_CurrentFederalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentFederalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details": { "parentTag": "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_CurrentFederalTaxExpenseBenefit", "terseLabel": "Federal, current", "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r540", "r551", "r597" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details" ], "lang": { "en-us": { "role": { "label": "Current:" } } }, "auth_ref": [] }, "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentStateAndLocalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details": { "parentTag": "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_CurrentStateAndLocalTaxExpenseBenefit", "terseLabel": "State, current", "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r540", "r551", "r597" ] }, "cpsh_CustomerAMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "CustomerAMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details" ], "lang": { "en-us": { "role": { "label": "Customer A [Member]", "documentation": "Represents significant customer A." } } }, "auth_ref": [] }, "cpsh_CustomerBMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "CustomerBMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details" ], "lang": { "en-us": { "role": { "label": "Customer B [Member]", "documentation": "Represents significant customer B." } } }, "auth_ref": [] }, "cpsh_CustomerCMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "CustomerCMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details" ], "lang": { "en-us": { "role": { "label": "Customer C [Member]", "documentation": "Represents significant customer C." } } }, "auth_ref": [] }, "us-gaap_CustomerConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerConcentrationRiskMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details" ], "lang": { "en-us": { "role": { "label": "Customer Concentration Risk [Member]", "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." } } }, "auth_ref": [ "r39", "r204" ] }, "cpsh_CybersecurityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "CybersecurityTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-cybersecurity" ], "lang": { "en-us": { "role": { "label": "Cybersecurity [Text Block]", "documentation": "The entire disclosure pertaining to cybersecurity." } } }, "auth_ref": [] }, "country_DE": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "DE", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details" ], "lang": { "en-us": { "role": { "label": "GERMANY" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit" ], "lang": { "en-us": { "role": { "label": "Debt Disclosure [Text Block]", "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants." } } }, "auth_ref": [ "r97", "r151", "r231", "r237", "r238", "r239", "r240", "r241", "r242", "r247", "r254", "r255", "r256" ] }, "us-gaap_DebtInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "Debt Instrument [Axis]", "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities." } } }, "auth_ref": [ "r14", "r66", "r67", "r106", "r107", "r154", "r232", "r233", "r234", "r235", "r236", "r238", "r243", "r244", "r245", "r246", "r248", "r249", "r250", "r251", "r252", "r253", "r369", "r499", "r500", "r501", "r502", "r503", "r549" ] }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentInterestRateStatedPercentage", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DebtInstrumentInterestRateStatedPercentage", "terseLabel": "Debt Instrument, Interest Rate, Stated Percentage", "documentation": "Contractual interest rate for funds borrowed, under the debt agreement." } } }, "auth_ref": [ "r23", "r233" ] }, "us-gaap_DebtInstrumentNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentNameDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Name [Domain]", "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities." } } }, "auth_ref": [ "r24", "r154", "r232", "r233", "r234", "r235", "r236", "r238", "r243", "r244", "r245", "r246", "r248", "r249", "r250", "r251", "r252", "r253", "r369", "r499", "r500", "r501", "r502", "r503", "r549" ] }, "us-gaap_DebtInstrumentPeriodicPayment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentPeriodicPayment", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DebtInstrumentPeriodicPayment", "terseLabel": "Debt Instrument, Periodic Payment, Total", "documentation": "Amount of the required periodic payments including both interest and principal payments." } } }, "auth_ref": [ "r24", "r64" ] }, "us-gaap_DebtInstrumentTerm": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentTerm", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DebtInstrumentTerm", "terseLabel": "Debt Instrument, Term (Year)", "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "cpsh_DebtInstrumentTerminationPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "DebtInstrumentTerminationPeriod", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "cpsh_DebtInstrumentTerminationPeriod", "terseLabel": "Debt Instrument, Termination Period (Year)", "documentation": "The termination period of a debt instrument." } } }, "auth_ref": [] }, "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFederalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details": { "parentTag": "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Federal, deferred", "label": "us-gaap_DeferredFederalIncomeTaxExpenseBenefit", "documentation": "Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r551", "r596", "r597" ] }, "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFederalStateAndLocalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit", "totalLabel": "Deferred income tax provision (benefit), net", "documentation": "Amount of deferred federal, state, and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national, regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r591" ] }, "us-gaap_DeferredIncomeTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxAssetsNet", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Deferred taxes, net", "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting." } } }, "auth_ref": [ "r329", "r330" ] }, "us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details" ], "lang": { "en-us": { "role": { "label": "Deferred:" } } }, "auth_ref": [] }, "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details": { "parentTag": "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details" ], "lang": { "en-us": { "role": { "verboseLabel": "State, deferred", "label": "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit", "documentation": "Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r551", "r596", "r597" ] }, "cpsh_DeferredTaxAssetsEffectOfDeferredTaxExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "DeferredTaxAssetsEffectOfDeferredTaxExpense", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-summary-of-changes-in-deferred-tax-asset-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Deferred tax benefit (provision)", "label": "cpsh_DeferredTaxAssetsEffectOfDeferredTaxExpense", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to the effect of deferred tax expense." } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsGross", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-summary-of-changes-in-deferred-tax-asset-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_DeferredTaxAssetsGross", "periodStartLabel": "Gross deferred tax balance at beginning of year", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards." } } }, "auth_ref": [ "r336" ] }, "us-gaap_DeferredTaxAssetsInventory": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsInventory", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details" ], "lang": { "en-us": { "role": { "label": "Inventory", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory." } } }, "auth_ref": [ "r56", "r595" ] }, "us-gaap_DeferredTaxAssetsLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsLiabilitiesNet", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-summary-of-changes-in-deferred-tax-asset-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_DeferredTaxAssetsLiabilitiesNet", "periodEndLabel": "Balance at end of year, net", "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting." } } }, "auth_ref": [ "r594" ] }, "us-gaap_DeferredTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsNet", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_DeferredTaxAssetsNet", "totalLabel": "Net deferred tax assets", "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards." } } }, "auth_ref": [ "r594" ] }, "us-gaap_DeferredTaxAssetsNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsNetAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets:" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOperatingLossCarryforwards", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details" ], "lang": { "en-us": { "role": { "label": "Net operating loss carryforwards", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards." } } }, "auth_ref": [ "r56", "r595" ] }, "us-gaap_DeferredTaxAssetsOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOther", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details" ], "lang": { "en-us": { "role": { "label": "Other", "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other." } } }, "auth_ref": [ "r56", "r595" ] }, "us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsPropertyPlantAndEquipment", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment", "terseLabel": "Depreciation", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment." } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsTaxCreditCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxCreditCarryforwards", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details" ], "lang": { "en-us": { "role": { "label": "Credit carryforwards", "documentation": "Amount, before allocation of a valuation allowances, of deferred tax assets attributable to deductible tax credit carryforwards including, but not limited to, research, foreign, general business, alternative minimum tax, and other deductible tax credit carryforwards." } } }, "auth_ref": [ "r55", "r56", "r595" ] }, "us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxCreditCarryforwardsResearch", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details" ], "lang": { "en-us": { "role": { "label": "Capitalized R&D, net", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible research tax credit carryforwards." } } }, "auth_ref": [ "r55", "r56", "r595" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details" ], "lang": { "en-us": { "role": { "label": "Stock compensation", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation." } } }, "auth_ref": [ "r56", "r595" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details" ], "lang": { "en-us": { "role": { "label": "Accrued liabilities", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities." } } }, "auth_ref": [ "r56", "r595" ] }, "us-gaap_DefinedContributionPlanCostRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanCostRecognized", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DefinedContributionPlanCostRecognized", "terseLabel": "Defined Contribution Plan, Cost", "documentation": "Amount of cost for defined contribution plan." } } }, "auth_ref": [ "r277" ] }, "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanEmployerMatchingContributionPercent", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent", "terseLabel": "Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay", "documentation": "Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan." } } }, "auth_ref": [] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Depreciation and amortization", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r5", "r185" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement [Text Block]", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r279", "r283", "r314", "r315", "r317", "r509" ] }, "us-gaap_DisclosureTextBlockAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureTextBlockAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-cybersecurity", "http://www.alsic.com/20231230/role/statement-note-1-nature-of-business", "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share", "http://www.alsic.com/20231230/role/statement-note-13-commitments-and-contingencies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-3-inventories", "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes" ], "lang": { "en-us": { "role": { "label": "us-gaap_DisclosureTextBlockAbstract", "terseLabel": "Notes to Financial Statements" } } }, "auth_ref": [] }, "dei_DocumentAnnualReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentAnnualReport", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Annual Report", "documentation": "Boolean flag that is true only for a form used as an annual report." } } }, "auth_ref": [ "r528", "r529", "r530" ] }, "dei_DocumentFinStmtErrorCorrectionFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFinStmtErrorCorrectionFlag", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Financial Statement Error Correction [Flag]", "documentation": "Indicates whether any of the financial statement period in the filing include a restatement due to error correction." } } }, "auth_ref": [ "r528", "r529", "r530", "r532" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Period Focus", "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Year Focus", "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006." } } }, "auth_ref": [] }, "dei_DocumentInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentInformationLineItems", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Information [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "dei_DocumentInformationTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentInformationTable", "lang": { "en-us": { "role": { "label": "Document Information [Table]", "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r531" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Type", "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'." } } }, "auth_ref": [] }, "us-gaap_DomesticCountryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DomesticCountryMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual" ], "lang": { "en-us": { "role": { "label": "Domestic Tax Authority [Member]", "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile." } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details", "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "verboseLabel": "Basic EPS (in dollars per share)", "label": "Net income (loss) per basic common share (in dollars per share)", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r144", "r160", "r161", "r162", "r163", "r164", "r169", "r171", "r173", "r174", "r175", "r179", "r359", "r360", "r382", "r395", "r494" ] }, "us-gaap_EarningsPerShareBasicAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasicAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details" ], "lang": { "en-us": { "role": { "label": "Basic EPS Computation:" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details", "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "verboseLabel": "Diluted net income per share (in dollars per share)", "label": "Net income (loss) per diluted common share (in dollars per share)", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r144", "r160", "r161", "r162", "r163", "r164", "r171", "r173", "r174", "r175", "r179", "r359", "r360", "r382", "r395", "r494" ] }, "us-gaap_EarningsPerShareDilutedAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDilutedAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details" ], "lang": { "en-us": { "role": { "label": "Diluted EPS Computation:" } } }, "auth_ref": [] }, "us-gaap_EarningsPerSharePolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerSharePolicyTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements." } } }, "auth_ref": [ "r35", "r36" ] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Text Block]", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r168", "r176", "r177", "r178" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "terseLabel": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent", "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)." } } }, "auth_ref": [ "r153", "r332", "r344" ] }, "cpsh_EmployeeRetentionTaxCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "EmployeeRetentionTaxCredit", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "cpsh_EmployeeRetentionTaxCredit", "terseLabel": "Employee Retention Tax Credit", "documentation": "Carrying amount as of the balance sheet date of the amount of employee retention tax credit." } } }, "auth_ref": [] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount", "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement." } } }, "auth_ref": [ "r316" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)", "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r316" ] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeStockOptionMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Option [Member]", "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time." } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r526" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Common Stock, Shares Outstanding", "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "dei_EntityDomain": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets", "http://www.alsic.com/20231230/role/statement-balance-sheets-parentheticals", "http://www.alsic.com/20231230/role/statement-cybersecurity", "http://www.alsic.com/20231230/role/statement-document-and-entity-information", "http://www.alsic.com/20231230/role/statement-note-1-nature-of-business", "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan", "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-tables", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-tables", "http://www.alsic.com/20231230/role/statement-note-13-commitments-and-contingencies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.alsic.com/20231230/role/statement-note-3-inventories", "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details", "http://www.alsic.com/20231230/role/statement-note-3-inventories-tables", "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details", "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual", "http://www.alsic.com/20231230/role/statement-note-4-leases-tables", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-tables", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-details-textual", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-tables", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-tables", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-summary-of-changes-in-deferred-tax-asset-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-tables", "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies", "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows", "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "label": "Entity [Domain]", "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r526" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFilerCategory", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Filer Category", "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [ "r526" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r535" ] }, "dei_EntityPublicFloat": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityPublicFloat", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Public Float", "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter." } } }, "auth_ref": [] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityRegistrantName", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r526" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r526" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r526" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r526" ] }, "dei_EntityVoluntaryFilers": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityVoluntaryFilers", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Voluntary Filers", "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act." } } }, "auth_ref": [] }, "dei_EntityWellKnownSeasonedIssuer": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityWellKnownSeasonedIssuer", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Well-known Seasoned Issuer", "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A." } } }, "auth_ref": [ "r536" ] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r9", "r125", "r140", "r141", "r142", "r155", "r156", "r157", "r159", "r165", "r167", "r180", "r211", "r212", "r259", "r318", "r319", "r320", "r340", "r341", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r362", "r363", "r364", "r365", "r366", "r367", "r376", "r398", "r399", "r400", "r408", "r461" ] }, "cpsh_FacilityTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "FacilityTwoMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Facility Two [Member]", "documentation": "Represents lease expiration for facility two." } } }, "auth_ref": [] }, "us-gaap_FiscalPeriod": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiscalPeriod", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Fiscal Period, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for determining an entity's fiscal year or other fiscal period. This disclosure may include identification of the fiscal period end-date, the length of the fiscal period, any reporting period lag between the entity and its subsidiaries, or equity investees. If a reporting lag exists, the closing date of the entity having a different period end is generally noted, along with an explanation of the necessity for using different closing dates. Any intervening events that materially affect the entity's financial position or results of operations are generally also disclosed." } } }, "auth_ref": [ "r57" ] }, "us-gaap_FurnitureAndFixturesGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FurnitureAndFixturesGross", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentGross", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Furniture and office equipment", "documentation": "Amount before accumulated depreciation of 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." } } }, "auth_ref": [ "r93" ] }, "cpsh_FurnitureAndOfficeEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "FurnitureAndOfficeEquipmentMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "Furniture and Office Equipment [Member]", "documentation": "Tangible personal property, as furniture and office equipment, used to produce goods and services." } } }, "auth_ref": [] }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainLossOnSaleOfPropertyPlantEquipment", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_GainLossOnSaleOfPropertyPlantEquipment", "negatedLabel": "Gain on sale of property and equipment", "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property." } } }, "auth_ref": [ "r5" ] }, "us-gaap_GeographicConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GeographicConcentrationRiskMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details" ], "lang": { "en-us": { "role": { "label": "Geographic Concentration Risk [Member]", "documentation": "Reflects the percentage that a specified dollar value on the balance sheet or income statement in the period from one or more specified geographic areas is to a corresponding consolidated, segment, or product line amount. Risk is the materially adverse effects of economic decline or antagonistic political actions resulting in loss of assets, sales volume, labor supply, or source of materials and supplies in a US state or a specified country, continent, or region such as EMEA (Europe, Middle East, Africa)." } } }, "auth_ref": [ "r40", "r474" ] }, "us-gaap_GranteeStatusAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GranteeStatusAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "Grantee Status [Axis]", "documentation": "Information by status of recipient to whom award is granted." } } }, "auth_ref": [ "r280", "r282", "r284", "r285", "r286", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r308", "r309", "r310", "r311", "r312" ] }, "us-gaap_GranteeStatusDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GranteeStatusDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "Grantee Status [Domain]", "documentation": "Status of recipient to whom award is granted." } } }, "auth_ref": [ "r280", "r282", "r284", "r285", "r286", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r308", "r309", "r310", "r311", "r312" ] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-operations": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "label": "us-gaap_GrossProfit", "totalLabel": "Gross margin", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r80", "r152", "r181", "r194", "r198", "r200", "r210", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r361", "r496", "r561" ] }, "dei_IcfrAuditorAttestationFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "IcfrAuditorAttestationFlag", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "ICFR Auditor Attestation Flag" } } }, "auth_ref": [ "r528", "r529", "r530" ] }, "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOfLongLivedAssetsHeldForUse", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse", "terseLabel": "Impairment, Long-Lived Asset, Held-for-Use, Total", "documentation": "The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale)." } } }, "auth_ref": [ "r5", "r47", "r94" ] }, "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets." } } }, "auth_ref": [ "r0", "r95" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-operations": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "totalLabel": "Income before income tax", "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r1", "r78", "r109", "r181", "r194", "r198", "r200", "r383", "r393", "r496" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "Income Statement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxAuthorityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority [Axis]", "documentation": "Information by tax jurisdiction." } } }, "auth_ref": [ "r8" ] }, "us-gaap_IncomeTaxAuthorityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority [Domain]", "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxAuthorityNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityNameAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority, Name [Axis]", "documentation": "Information by name of taxing authority." } } }, "auth_ref": [ "r8" ] }, "us-gaap_IncomeTaxAuthorityNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityNameDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority, Name [Domain]", "documentation": "Named agency, division or body that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes" ], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Text Block]", "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information." } } }, "auth_ref": [ "r153", "r326", "r333", "r334", "r338", "r342", "r345", "r346", "r347", "r407" ] }, "us-gaap_IncomeTaxExaminationPenaltiesAndInterestAccrued": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExaminationPenaltiesAndInterestAccrued", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncomeTaxExaminationPenaltiesAndInterestAccrued", "terseLabel": "Income Tax Examination, Penalties and Interest Accrued, Total", "documentation": "The amount of estimated penalties and interest accrued as of the balance sheet date arising from income tax examinations." } } }, "auth_ref": [ "r593" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-operations": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 0.0 }, "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details", "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "label": "Income tax provision (benefit)", "totalLabel": "Total", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r116", "r124", "r166", "r167", "r186", "r331", "r343", "r396" ] }, "us-gaap_IncomeTaxPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxPolicyTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Income Tax, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements." } } }, "auth_ref": [ "r139", "r327", "r328", "r334", "r335", "r337", "r339", "r405" ] }, "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details" ], "lang": { "en-us": { "role": { "label": "Tax at statutory rate", "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations." } } }, "auth_ref": [ "r332" ] }, "us-gaap_IncomeTaxReconciliationOtherAdjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationOtherAdjustments", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Other", "label": "us-gaap_IncomeTaxReconciliationOtherAdjustments", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments." } } }, "auth_ref": [ "r592" ] }, "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details" ], "lang": { "en-us": { "role": { "label": "State tax, net of federal benefit", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit)." } } }, "auth_ref": [ "r592" ] }, "us-gaap_IncomeTaxesPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesPaidNet", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Cash paid for income taxes", "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes." } } }, "auth_ref": [ "r31" ] }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayable", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInAccountsPayable", "terseLabel": "Accounts payable", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInAccountsReceivable", "negatedTerseLabel": "Accounts receivable \u2013 trade", "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." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncreaseDecreaseInAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccruedLiabilities", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInAccruedLiabilities", "terseLabel": "Accrued expenses", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInContractWithCustomerLiability", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInContractWithCustomerLiability", "terseLabel": "Deferred revenue", "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r379", "r548" ] }, "us-gaap_IncreaseDecreaseInDeferredIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInDeferredIncomeTaxes", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInDeferredIncomeTaxes", "negatedLabel": "Deferred taxes", "documentation": "The increase (decrease) during the reporting period in the account that represents the temporary difference that results from Income or Loss that is recognized for accounting purposes but not for tax purposes and vice versa." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 11.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInInventories", "negatedTerseLabel": "Inventories", "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncreaseDecreaseInOperatingAssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingAssetsAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Changes in operating assets and liabilities:" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOtherReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOtherReceivables", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInOtherReceivables", "negatedLabel": "Accounts receivable \u2013 other", "documentation": "Amount of increase (decrease) in receivables classified as other." } } }, "auth_ref": [ "r4" ] }, "cpsh_IncreaseDecreaseInPrepaidExpenseAndOtherCurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "IncreaseDecreaseInPrepaidExpenseAndOtherCurrentAssets", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 10.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "cpsh_IncreaseDecreaseInPrepaidExpenseAndOtherCurrentAssets", "negatedLabel": "Prepaid expenses and other current assets", "documentation": "The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services and other assets that bring economic benefits for future periods." } } }, "auth_ref": [] }, "cpsh_InreaseInSalesReturnsForPartsOfCreditIssued": { "xbrltype": "monetaryItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "InreaseInSalesReturnsForPartsOfCreditIssued", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-details-textual" ], "lang": { "en-us": { "role": { "label": "cpsh_InreaseInSalesReturnsForPartsOfCreditIssued", "terseLabel": "Sales Returns, For Parts of Credit, Issued", "documentation": "Represents sales returns for parts of which credit is issued." } } }, "auth_ref": [] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingArrLineItems", "auth_ref": [ "r533" ] }, "us-gaap_InterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestExpense", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_InterestExpense", "terseLabel": "Interest Expense", "documentation": "Amount of the cost of borrowed funds accounted for as interest expense." } } }, "auth_ref": [ "r62", "r112", "r143", "r184", "r368", "r446", "r523", "r616" ] }, "us-gaap_InterestExpenseDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestExpenseDebt", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_InterestExpenseDebt", "terseLabel": "Interest Expense, Debt", "documentation": "Amount of the cost of borrowed funds accounted for as interest expense for debt." } } }, "auth_ref": [ "r84", "r251", "r258", "r502", "r503" ] }, "us-gaap_InterestIncomeExpenseNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestIncomeExpenseNet", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-operations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "label": "Interest income (expense)", "documentation": "The net amount of operating interest income (expense)." } } }, "auth_ref": [ "r111" ] }, "us-gaap_InterestPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPaidNet", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Cash paid for interest", "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount." } } }, "auth_ref": [ "r145", "r147", "r148" ] }, "us-gaap_InternalRevenueServiceIRSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InternalRevenueServiceIRSMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual" ], "lang": { "en-us": { "role": { "label": "Internal Revenue Service (IRS) [Member]", "documentation": "Designated tax department of the United States of America government entitled to levy and collect income taxes from the entity." } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-3-inventories" ], "lang": { "en-us": { "role": { "label": "Inventory Disclosure [Text Block]", "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory." } } }, "auth_ref": [ "r213" ] }, "us-gaap_InventoryFinishedGoods": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryFinishedGoods", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details": { "parentTag": "us-gaap_InventoryGross", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details" ], "lang": { "en-us": { "role": { "label": "Finished goods", "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer." } } }, "auth_ref": [ "r542" ] }, "us-gaap_InventoryGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryGross", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_InventoryGross", "totalLabel": "Gross Inventory", "documentation": "Gross amount, as of the balance sheet date, of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process." } } }, "auth_ref": [ "r546" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 }, "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets", "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details" ], "lang": { "en-us": { "role": { "label": "Inventories", "totalLabel": "Total", "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r135", "r490", "r513" ] }, "us-gaap_InventoryPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryPolicyTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Inventory, Policy [Policy Text Block]", "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost." } } }, "auth_ref": [ "r117", "r129", "r134", "r213", "r214", "r215", "r380", "r492" ] }, "us-gaap_InventoryRawMaterials": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryRawMaterials", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details": { "parentTag": "us-gaap_InventoryGross", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details" ], "lang": { "en-us": { "role": { "label": "Raw materials", "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r544" ] }, "us-gaap_InventoryValuationReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryValuationReserves", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details": { "parentTag": "us-gaap_InventoryNet", "weight": -1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_InventoryValuationReserves", "negatedLabel": "Reserve for obsolescence", "documentation": "Amount of valuation reserve for inventory." } } }, "auth_ref": [ "r46", "r546" ] }, "us-gaap_InventoryWorkInProcess": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryWorkInProcess", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details": { "parentTag": "us-gaap_InventoryGross", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details" ], "lang": { "en-us": { "role": { "label": "Work in process", "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r543" ] }, "us-gaap_LeaseContractualTermAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseContractualTermAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Lease Contractual Term [Axis]", "documentation": "Information by contractual term of lease arrangement." } } }, "auth_ref": [ "r539" ] }, "us-gaap_LeaseContractualTermDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseContractualTermDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Lease Contractual Term [Domain]", "documentation": "Contractual term of lease arrangement." } } }, "auth_ref": [ "r539" ] }, "us-gaap_LeaseCostTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseCostTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-tables" ], "lang": { "en-us": { "role": { "label": "Lease, Cost [Table Text Block]", "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income." } } }, "auth_ref": [ "r601" ] }, "cpsh_LeaseExpirationDecember2020Member": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "LeaseExpirationDecember2020Member", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Lease Expiration, December 2020 [Member]", "documentation": "Represents lease expiration information." } } }, "auth_ref": [] }, "us-gaap_LeaseholdImprovementsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseholdImprovementsGross", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentGross", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Leasehold improvements", "documentation": "Amount before accumulated depreciation of additions or improvements to assets held under a lease arrangement." } } }, "auth_ref": [ "r93" ] }, "dei_LegalEntityAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LegalEntityAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets", "http://www.alsic.com/20231230/role/statement-balance-sheets-parentheticals", "http://www.alsic.com/20231230/role/statement-cybersecurity", "http://www.alsic.com/20231230/role/statement-document-and-entity-information", "http://www.alsic.com/20231230/role/statement-note-1-nature-of-business", "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan", "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-tables", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-tables", "http://www.alsic.com/20231230/role/statement-note-13-commitments-and-contingencies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.alsic.com/20231230/role/statement-note-3-inventories", "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details", "http://www.alsic.com/20231230/role/statement-note-3-inventories-tables", "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details", "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual", "http://www.alsic.com/20231230/role/statement-note-4-leases-tables", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-tables", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-details-textual", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-tables", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-tables", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-summary-of-changes-in-deferred-tax-asset-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-tables", "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies", "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows", "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "label": "Legal Entity [Axis]", "documentation": "The set of legal entities associated with a report." } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-tables" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]", "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." } } }, "auth_ref": [ "r602" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "totalLabel": "Total undiscounted operating lease payments", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r375" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details" ], "lang": { "en-us": { "role": { "label": "2026", "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)." } } }, "auth_ref": [ "r375" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details" ], "lang": { "en-us": { "role": { "label": "2025", "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)." } } }, "auth_ref": [ "r375" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details" ], "lang": { "en-us": { "role": { "label": "2024", "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)." } } }, "auth_ref": [ "r375" ] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "negatedLabel": "Less: Imputed interest", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease." } } }, "auth_ref": [ "r375" ] }, "cpsh_LesseeOperatingLeaseMonthlyRentPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "LesseeOperatingLeaseMonthlyRentPayments", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "cpsh_LesseeOperatingLeaseMonthlyRentPayments", "terseLabel": "Lessee, Operating Lease, Monthly Rent Payments", "documentation": "The amount of monthly rent payments for lessee under operating lease." } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeasesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeasesTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Leases [Text Block]", "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability." } } }, "auth_ref": [ "r370" ] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "us-gaap_Liabilities", "totalLabel": "Total liabilities", "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." } } }, "auth_ref": [ "r20", "r152", "r210", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r349", "r350", "r351", "r361", "r421", "r495", "r524", "r561", "r603", "r604" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "us-gaap_LiabilitiesAndStockholdersEquity", "totalLabel": "Total liabilities and stockholders\u2019 equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r74", "r108", "r389", "r513", "r550", "r558", "r599" ] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "us-gaap_LiabilitiesCurrent", "totalLabel": "Total current liabilities", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r22", "r128", "r152", "r210", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r349", "r350", "r351", "r361", "r513", "r561", "r603", "r604" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Current liabilities:" } } }, "auth_ref": [] }, "us-gaap_LineOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCredit", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_LineOfCredit", "terseLabel": "Long-term Line of Credit, Total", "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement." } } }, "auth_ref": [ "r14", "r107", "r611" ] }, "us-gaap_LineOfCreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "Lender Name [Axis]", "documentation": "Information by name of lender, which may be a single entity (for example, but not limited to, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit." } } }, "auth_ref": [ "r18", "r549" ] }, "us-gaap_LineOfCreditFacilityInterestRateDuringPeriod": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityInterestRateDuringPeriod", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_LineOfCreditFacilityInterestRateDuringPeriod", "terseLabel": "Line of Credit Facility, Interest Rate During Period", "documentation": "The effective interest rate during the reporting period." } } }, "auth_ref": [ "r18" ] }, "us-gaap_LineOfCreditFacilityLenderDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityLenderDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Lender [Domain]", "documentation": "Identification of the lender, which may be a single entity (for example, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit, including a letter of credit facility." } } }, "auth_ref": [ "r18", "r549" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity", "terseLabel": "Line of Credit Facility, Maximum Borrowing Capacity", "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility." } } }, "auth_ref": [ "r18" ] }, "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityRemainingBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity", "terseLabel": "Line of Credit Facility, Remaining Borrowing Capacity", "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding)." } } }, "auth_ref": [ "r18" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebt", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_LongTermDebt", "totalLabel": "Total Principal Payments", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation." } } }, "auth_ref": [ "r14", "r107", "r244", "r257", "r500", "r501", "r611" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details" ], "lang": { "en-us": { "role": { "label": "FY 2024", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r7", "r154", "r249" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details" ], "lang": { "en-us": { "role": { "label": "FY 2025", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r7", "r154", "r249" ] }, "cpsh_LongTermDebtMaturitiesRepaymentsOfPrincipalInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInterest", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details": { "parentTag": "us-gaap_LongTermDebt", "weight": -1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details" ], "lang": { "en-us": { "role": { "label": "cpsh_LongTermDebtMaturitiesRepaymentsOfPrincipalInterest", "negatedLabel": "Less Interest", "documentation": "Represents interest related to long term debt maturities repayments of principal." } } }, "auth_ref": [] }, "us-gaap_LongTermDebtTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-notes-payable" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt [Text Block]", "documentation": "The entire disclosure for long-term debt." } } }, "auth_ref": [ "r97" ] }, "us-gaap_LongTermNotesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermNotesPayable", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Notes payable less current portion", "documentation": "Carrying value as of the balance sheet date of notes payable (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion." } } }, "auth_ref": [ "r24" ] }, "us-gaap_MachineryAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MachineryAndEquipmentGross", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentGross", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Production equipment", "documentation": "Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment." } } }, "auth_ref": [ "r93" ] }, "srt_MajorCustomersAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MajorCustomersAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "auth_ref": [ "r204", "r506", "r564", "r612", "r613" ] }, "cpsh_MassachusettsBusinessDevelopmentCorporationMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "MassachusettsBusinessDevelopmentCorporationMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "Massachusetts Business Development Corporation [Member]", "documentation": "Related to Massachusetts Business Development Corporation." } } }, "auth_ref": [] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MaximumMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]" } } }, "auth_ref": [ "r218", "r219", "r220", "r221", "r278", "r378", "r397", "r413", "r414", "r464", "r466", "r468", "r469", "r471", "r485", "r486", "r498", "r504", "r508", "r514", "r563", "r605", "r606", "r607", "r608", "r609", "r610" ] }, "cpsh_MicroscopeNotePayableMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "MicroscopeNotePayableMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "Microscope Note Payable [Member]", "documentation": "Related to Microscope note payable." } } }, "auth_ref": [] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MinimumMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]" } } }, "auth_ref": [ "r218", "r219", "r220", "r221", "r278", "r378", "r397", "r413", "r414", "r464", "r466", "r468", "r469", "r471", "r485", "r486", "r498", "r504", "r508", "r514", "r563", "r605", "r606", "r607", "r608", "r609", "r610" ] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MtrlTermsOfTrdArrTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Material Terms of Trading Arrangement [Text Block]" } } }, "auth_ref": [ "r534" ] }, "srt_NameOfMajorCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]" } } }, "auth_ref": [ "r204", "r506", "r564", "r612", "r613" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "totalLabel": "Net cash provided (used) by financing activities", "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit." } } }, "auth_ref": [ "r146" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Cash flows from financing activities:" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "totalLabel": "Net cash used by investing activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r146" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Cash flows from investing activities:" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "totalLabel": "Net cash provided by operating activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r87", "r88", "r89" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Cash flows from operating activities:" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 9.0 }, "http://www.alsic.com/20231230/role/statement-statements-of-operations": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details", "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows", "http://www.alsic.com/20231230/role/statement-statements-of-operations", "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "Net income", "totalLabel": "Net income", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r79", "r89", "r110", "r126", "r137", "r138", "r142", "r152", "r158", "r160", "r161", "r162", "r163", "r166", "r167", "r172", "r181", "r194", "r198", "r200", "r210", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r360", "r361", "r394", "r443", "r459", "r460", "r496", "r523", "r561" ] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "ecd_NonRule10b51ArrAdoptedFlag", "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r534" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "ecd_NonRule10b51ArrTrmntdFlag", "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r534" ] }, "us-gaap_NonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-operations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "label": "Other income (expense)", "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business)." } } }, "auth_ref": [ "r83" ] }, "cpsh_NortonFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "NortonFacilityMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Norton Facility [Member]", "documentation": "Represents the company's Norton facility." } } }, "auth_ref": [] }, "cpsh_NoteToFinancialStatementDetailsTextual": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "NoteToFinancialStatementDetailsTextual", "lang": { "en-us": { "role": { "label": "Note To Financial Statement Details Textual" } } }, "auth_ref": [] }, "us-gaap_NotesAndLoansPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NotesAndLoansPayableCurrent", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Notes payable, current portion", "documentation": "Sum of the carrying values as of the balance sheet date of the portions of all long-term notes and loans payable due within one year or the operating cycle if longer." } } }, "auth_ref": [ "r19" ] }, "cpsh_NotesToFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "NotesToFinancialStatementsAbstract", "lang": { "en-us": { "role": { "label": "Notes To Financial Statements [Abstract]" } } }, "auth_ref": [] }, "cpsh_NumberOfMajorCustomers": { "xbrltype": "integerItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "NumberOfMajorCustomers", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual" ], "lang": { "en-us": { "role": { "label": "cpsh_NumberOfMajorCustomers", "terseLabel": "Number of Major Customers", "documentation": "Represents the number of major customers accounting for 10% or more of the specified concentration risk benchmark, which includes, but not limited to, sales revenue, accounts receivable, etc." } } }, "auth_ref": [] }, "us-gaap_NumberOfOperatingSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NumberOfOperatingSegments", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_NumberOfOperatingSegments", "terseLabel": "Number of Operating Segments", "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues." } } }, "auth_ref": [ "r556" ] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-operations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "label": "us-gaap_OperatingIncomeLoss", "totalLabel": "Income from operations", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r181", "r194", "r198", "r200", "r496" ] }, "us-gaap_OperatingLeaseExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseExpense", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_OperatingLeaseExpense", "terseLabel": "Operating Lease, Expense", "documentation": "Amount of operating lease expense. Excludes sublease income." } } }, "auth_ref": [ "r600" ] }, "us-gaap_OperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiability", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details", "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details" ], "lang": { "en-us": { "role": { "label": "Present value of operating lease liability", "totalLabel": "Total operating lease liability", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r372" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 0.0 }, "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details": { "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets", "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details" ], "lang": { "en-us": { "role": { "label": "Current lease liability", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r372" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details": { "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0, "order": 0.0 }, "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets", "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details" ], "lang": { "en-us": { "role": { "label": "Long-term lease liability", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r372" ] }, "cpsh_OperatingLeaseRealEstateNumberOfLeases": { "xbrltype": "pureItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "OperatingLeaseRealEstateNumberOfLeases", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "cpsh_OperatingLeaseRealEstateNumberOfLeases", "terseLabel": "Operating Lease, Real Estate, Number of Leases", "documentation": "The number of real estate operating leases." } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Right-of-use lease asset", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r371" ] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details" ], "lang": { "en-us": { "role": { "label": "Weighted-average discount rate for capitalized operating leases", "documentation": "Weighted average discount rate for operating lease calculated at point in time." } } }, "auth_ref": [ "r374", "r512" ] }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details" ], "lang": { "en-us": { "role": { "label": "Weighted-average remaining lease term for capitalized operating leases (in months) (Year)", "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." } } }, "auth_ref": [ "r373", "r512" ] }, "cpsh_OtherCountryMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "OtherCountryMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details" ], "lang": { "en-us": { "role": { "label": "Other Country [Member]", "documentation": "Represents other country." } } }, "auth_ref": [] }, "us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment", "terseLabel": "Other Inventory, Materials, Supplies and Merchandise under Consignment, Gross", "documentation": "Gross amount of inventory owned by the entity but in the hands of a customer, typically a reseller." } } }, "auth_ref": [ "r545" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment", "negatedLabel": "Purchases of property and equipment", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r86" ] }, "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan" ], "lang": { "en-us": { "role": { "label": "Retirement Benefits [Text Block]", "documentation": "The entire disclosure for retirement benefits." } } }, "auth_ref": [ "r265", "r266", "r267", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r507" ] }, "us-gaap_PlanNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Plan Name [Axis]", "documentation": "Information by plan name for share-based payment arrangement." } } }, "auth_ref": [ "r565", "r566", "r567", "r568", "r569", "r570", "r571", "r572", "r573", "r574", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r584", "r585", "r586", "r587", "r588", "r589", "r590" ] }, "us-gaap_PlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Plan Name [Domain]", "documentation": "Plan name for share-based payment arrangement." } } }, "auth_ref": [ "r565", "r566", "r567", "r568", "r569", "r570", "r571", "r572", "r573", "r574", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r584", "r585", "r586", "r587", "r588", "r589", "r590" ] }, "us-gaap_PolicyTextBlockAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PolicyTextBlockAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "us-gaap_PolicyTextBlockAbstract", "terseLabel": "Accounting Policies" } } }, "auth_ref": [] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Prepaid expenses and other current assets", "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." } } }, "auth_ref": [ "r547" ] }, "us-gaap_PriorPeriodReclassificationAdjustmentDescription": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PriorPeriodReclassificationAdjustmentDescription", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Reclassification, Comparability Adjustment [Policy Text Block]", "documentation": "Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error." } } }, "auth_ref": [ "r541" ] }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Proceeds from sale of property and equipment", "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r85" ] }, "us-gaap_ProceedsFromStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromStockOptionsExercised", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Proceeds from employee stock options", "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement." } } }, "auth_ref": [ "r3", "r12" ] }, "cpsh_ProductionEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "ProductionEquipmentMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "Production Equipment [Member]", "documentation": "Tangible personal property, as production equipment, used to produce goods and services." } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Property and equipment:" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentByTypeAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "Long-Lived Tangible Asset [Axis]", "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r6" ] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentGross", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_PropertyPlantAndEquipmentGross", "terseLabel": "Property, Plant and Equipment, Gross, Ending Balance", "totalLabel": "Total cost", "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." } } }, "auth_ref": [ "r93", "r131", "r392" ] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "us-gaap_PropertyPlantAndEquipmentNet", "totalLabel": "Net property and equipment", "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r6", "r384", "r392", "r513" ] }, "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentPolicyTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections." } } }, "auth_ref": [ "r6", "r120", "r123", "r390" ] }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTypeDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "Long-Lived Tangible Asset [Domain]", "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." } } }, "auth_ref": [ "r93" ] }, "us-gaap_PropertyPlantAndEquipmentUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentUsefulLife", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_PropertyPlantAndEquipmentUsefulLife", "terseLabel": "Property, Plant and Equipment, Useful Life (Year)", "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment." } } }, "auth_ref": [] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]" } } }, "auth_ref": [ "r218", "r219", "r220", "r221", "r266", "r278", "r309", "r310", "r311", "r377", "r378", "r397", "r413", "r414", "r464", "r466", "r468", "r469", "r471", "r485", "r486", "r498", "r504", "r508", "r514", "r517", "r559", "r563", "r606", "r607", "r608", "r609", "r610" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]" } } }, "auth_ref": [ "r218", "r219", "r220", "r221", "r266", "r278", "r309", "r310", "r311", "r377", "r378", "r397", "r413", "r414", "r464", "r466", "r468", "r469", "r471", "r485", "r486", "r498", "r504", "r508", "r514", "r517", "r559", "r563", "r606", "r607", "r608", "r609", "r610" ] }, "us-gaap_RepaymentsOfNotesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentsOfNotesPayable", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "us-gaap_RepaymentsOfNotesPayable", "negatedLabel": "Payment on notes payable", "documentation": "The cash outflow for a borrowing supported by a written promise to pay an obligation." } } }, "auth_ref": [ "r28" ] }, "cpsh_ReserveForPotentialCreditsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "ReserveForPotentialCreditsMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-details-textual" ], "lang": { "en-us": { "role": { "label": "Reserve for Potential Credits [Member]", "documentation": "Represents reserve for potential credits." } } }, "auth_ref": [] }, "cpsh_ReservesForPotentialCreditToBeIssued": { "xbrltype": "monetaryItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "ReservesForPotentialCreditToBeIssued", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-details-textual" ], "lang": { "en-us": { "role": { "label": "cpsh_ReservesForPotentialCreditToBeIssued", "terseLabel": "Reserves for Potential Credit to be Issued", "documentation": "Represents reserves for potential credit to be issued." } } }, "auth_ref": [] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Accumulated deficit", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r71", "r98", "r388", "r401", "r402", "r406", "r424", "r513" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r125", "r155", "r156", "r157", "r159", "r165", "r167", "r211", "r212", "r318", "r319", "r320", "r340", "r341", "r352", "r354", "r355", "r357", "r358", "r398", "r400", "r408", "r617" ] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-operations": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "label": "Product sales", "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise." } } }, "auth_ref": [ "r182", "r183", "r193", "r196", "r197", "r201", "r202", "r204", "r262", "r263", "r381" ] }, "us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-tables" ], "lang": { "en-us": { "role": { "label": "Revenue from External Customers by Geographic Areas [Table Text Block]", "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." } } }, "auth_ref": [ "r13" ] }, "us-gaap_RevenueRecognitionPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRecognitionPolicyTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Revenue [Policy Text Block]", "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources." } } }, "auth_ref": [ "r444", "r487", "r493" ] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevolvingCreditFacilityMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "Revolving Credit Facility [Member]", "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount." } } }, "auth_ref": [] }, "cpsh_RocklandTrustCompanyMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "RocklandTrustCompanyMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual" ], "lang": { "en-us": { "role": { "label": "Rockland Trust Company [Member]", "documentation": "Represents Rockland Trust Company." } } }, "auth_ref": [] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "ecd_Rule10b51ArrAdoptedFlag", "terseLabel": "Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r534" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "ecd_Rule10b51ArrTrmntdFlag", "terseLabel": "Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r534" ] }, "us-gaap_SalesRevenueNetMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SalesRevenueNetMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details" ], "lang": { "en-us": { "role": { "label": "Revenue Benchmark [Member]", "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation." } } }, "auth_ref": [ "r204", "r537" ] }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Accrued Liabilities [Table Text Block]", "documentation": "Tabular disclosure of the components of accrued liabilities." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]", "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." } } }, "auth_ref": [ "r103" ] }, "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]", "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets." } } }, "auth_ref": [ "r102" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations." } } }, "auth_ref": [ "r555" ] }, "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]", "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations." } } }, "auth_ref": [ "r101" ] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-3-inventories-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Inventory, Current [Table Text Block]", "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process." } } }, "auth_ref": [ "r15", "r75", "r76", "r77" ] }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Maturities of Long-Term Debt [Table Text Block]", "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt." } } }, "auth_ref": [ "r7" ] }, "us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationActivityTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-tables" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Activity [Table Text Block]", "documentation": "Tabular disclosure of activity for award under share-based payment arrangement. Includes, but is not limited to, outstanding award at beginning and end of year, granted, exercised, forfeited, and weighted-average grant date fair value." } } }, "auth_ref": [ "r10", "r11", "r52" ] }, "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]", "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions." } } }, "auth_ref": [ "r100" ] }, "us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-tables" ], "lang": { "en-us": { "role": { "label": "Schedules of Concentration of Risk, by Risk Factor [Table Text Block]", "documentation": "Tabular disclosure of the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark." } } }, "auth_ref": [ "r37", "r38", "r41", "r42", "r60", "r104" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12bTitle", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r525" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityExchangeName", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r527" ] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "SegmentGeographicalDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]" } } }, "auth_ref": [ "r202", "r203", "r410", "r411", "r412", "r465", "r467", "r470", "r472", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r488", "r505", "r517", "r564", "r612" ] }, "us-gaap_SegmentReportingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingPolicyPolicyTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Segment Reporting, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for segment reporting." } } }, "auth_ref": [ "r187", "r188", "r189", "r190", "r191", "r192", "r202", "r497" ] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-operations": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "label": "Selling, general, and administrative expenses", "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc." } } }, "auth_ref": [ "r82" ] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Share-based compensation", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r4" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)", "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition." } } }, "auth_ref": [ "r509" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details" ], "lang": { "en-us": { "role": { "label": "Expected dividend yield", "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term." } } }, "auth_ref": [ "r310" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details" ], "lang": { "en-us": { "role": { "label": "Expected volatility", "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period." } } }, "auth_ref": [ "r309" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details" ], "lang": { "en-us": { "role": { "label": "Risk-free interest rate (Rate)", "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares." } } }, "auth_ref": [ "r311" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized (in shares)", "documentation": "Number of shares authorized for issuance under share-based payment arrangement." } } }, "auth_ref": [ "r511" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant (in shares)", "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." } } }, "auth_ref": [ "r51" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Options exercisable, shares (in shares)", "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan." } } }, "auth_ref": [ "r290" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Options exercisable, weighted average exercise price (in dollars per share)", "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan." } } }, "auth_ref": [ "r290" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod", "negatedTerseLabel": "Expired, shares (in shares)", "documentation": "Number of options or other stock instruments for which the right to exercise has lapsed under the terms of the plan agreements." } } }, "auth_ref": [ "r295" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod", "negatedTerseLabel": "Forfeited, shares (in shares)", "documentation": "The number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan." } } }, "auth_ref": [ "r294" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "terseLabel": "Granted (in shares)", "documentation": "Gross number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r292" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details" ], "lang": { "en-us": { "role": { "label": "Weighted average fair value of grants (in dollars per share)", "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology." } } }, "auth_ref": [ "r302" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Outstanding, Aggregate intrinsic value", "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding." } } }, "auth_ref": [ "r51" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "periodStartLabel": "Outstanding, shares (in shares)", "periodEndLabel": "Outstanding, shares (in shares)", "documentation": "Number of options outstanding, including both vested and non-vested options." } } }, "auth_ref": [ "r288", "r289" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "periodStartLabel": "Outstanding, weighted average exercise price (in dollars per share)", "periodEndLabel": "Outstanding, weighted average exercise price (in dollars per share)", "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan." } } }, "auth_ref": [ "r288", "r289" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "Award Type [Domain]", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r284", "r285", "r286", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r308", "r309", "r310", "r311", "r312" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Exercised, weighted average exercise price (in dollars per share)", "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares." } } }, "auth_ref": [ "r293" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Expired, weighted average exercise price (in dollars per share)", "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options of the plan that expired." } } }, "auth_ref": [ "r295" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Forfeited, weighted average exercise price (in dollars per share)", "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated." } } }, "auth_ref": [ "r294" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Granted, weighted average exercise price (in dollars per share)", "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options." } } }, "auth_ref": [ "r292" ] }, "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement [Policy Text Block]", "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost." } } }, "auth_ref": [ "r279", "r287", "r306", "r307", "r308", "r309", "r312", "r321", "r322", "r323", "r324" ] }, "us-gaap_ShareBasedPaymentArrangementEmployeeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedPaymentArrangementEmployeeMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Employee [Member]", "documentation": "Recipient, of award granted under share-based payment arrangement, over whom grantor exercises or has right to exercise sufficient control to establish employer-employee relationship based on law of pertinent jurisdiction. Includes, but is not limited to, nonemployee director treated as employee when acting as member of board of directors, if elected by grantor's shareholders or appointed to board position to be filled by shareholder election when existing term expires." } } }, "auth_ref": [ "r282", "r284", "r285", "r286", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r308", "r309", "r310", "r311", "r312" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period (Year)", "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r510" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details" ], "lang": { "en-us": { "role": { "label": "Expected life in years (Year)", "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r308" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1", "crdr": "debit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Options exercisable, Aggregate intrinsic value", "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable." } } }, "auth_ref": [ "r51" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Options exercisable, weighted remaining contractual life (Year)", "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r51" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Outstanding, weighted remaining contractual life (Year)", "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r99" ] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesOutstanding", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "us-gaap_SharesOutstanding", "periodStartLabel": "Balance (in shares)", "periodEndLabel": "Balance (in shares)", "documentation": "Number of shares issued which are neither cancelled nor held in the treasury." } } }, "auth_ref": [] }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SignificantAccountingPoliciesTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies" ], "lang": { "en-us": { "role": { "label": "Significant Accounting Policies [Text Block]", "documentation": "The entire disclosure for all significant accounting policies of the reporting entity." } } }, "auth_ref": [ "r90", "r150" ] }, "cpsh_SignificantCustomersABAndCMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "SignificantCustomersABAndCMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual" ], "lang": { "en-us": { "role": { "label": "Significant Customers A, B, and C [Member]", "documentation": "Represents significant customers A, B, and C." } } }, "auth_ref": [] }, "cpsh_SonoscanUltrasoundMicroscopeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "SonoscanUltrasoundMicroscopeMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual" ], "lang": { "en-us": { "role": { "label": "Sonoscan Ultrasound Microscope [Member]", "documentation": "Related to Sonoscan Ultrasound Microscope." } } }, "auth_ref": [] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r9", "r27", "r125", "r140", "r141", "r142", "r155", "r156", "r157", "r159", "r165", "r167", "r180", "r211", "r212", "r259", "r318", "r319", "r320", "r340", "r341", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r362", "r363", "r364", "r365", "r366", "r367", "r376", "r398", "r399", "r400", "r408", "r461" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementGeographicalAxis", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]" } } }, "auth_ref": [ "r202", "r203", "r410", "r411", "r412", "r465", "r467", "r470", "r472", "r473", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r488", "r505", "r517", "r564", "r612" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets", "http://www.alsic.com/20231230/role/statement-balance-sheets-parentheticals", "http://www.alsic.com/20231230/role/statement-cybersecurity", "http://www.alsic.com/20231230/role/statement-note-1-nature-of-business", "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan", "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-tables", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-tables", "http://www.alsic.com/20231230/role/statement-note-13-commitments-and-contingencies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.alsic.com/20231230/role/statement-note-3-inventories", "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details", "http://www.alsic.com/20231230/role/statement-note-3-inventories-tables", "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details", "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual", "http://www.alsic.com/20231230/role/statement-note-4-leases-tables", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-tables", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-details-textual", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-tables", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-tables", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-summary-of-changes-in-deferred-tax-asset-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-tables", "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies", "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows", "http://www.alsic.com/20231230/role/statement-statements-of-operations", "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "Statement [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r155", "r156", "r157", "r180", "r381", "r404", "r409", "r415", "r416", "r417", "r418", "r419", "r420", "r423", "r426", "r427", "r428", "r429", "r430", "r431", "r432", "r433", "r434", "r436", "r437", "r438", "r439", "r440", "r442", "r444", "r445", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r461", "r518" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "Statement of Cash Flows [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "Statement of Financial Position [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "label": "Statement of Stockholders' Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets", "http://www.alsic.com/20231230/role/statement-balance-sheets-parentheticals", "http://www.alsic.com/20231230/role/statement-cybersecurity", "http://www.alsic.com/20231230/role/statement-note-1-nature-of-business", "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan", "http://www.alsic.com/20231230/role/statement-note-10-retirement-savings-plan-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-details-textual", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details", "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-tables", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-tables", "http://www.alsic.com/20231230/role/statement-note-13-commitments-and-contingencies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.alsic.com/20231230/role/statement-note-3-inventories", "http://www.alsic.com/20231230/role/statement-note-3-inventories-inventories-details", "http://www.alsic.com/20231230/role/statement-note-3-inventories-tables", "http://www.alsic.com/20231230/role/statement-note-4-leases", "http://www.alsic.com/20231230/role/statement-note-4-leases-capitalized-operating-leases-details", "http://www.alsic.com/20231230/role/statement-note-4-leases-costs-details", "http://www.alsic.com/20231230/role/statement-note-4-leases-details-textual", "http://www.alsic.com/20231230/role/statement-note-4-leases-tables", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-tables", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-accrued-expenses-details", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-details-textual", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-tables", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit", "http://www.alsic.com/20231230/role/statement-note-7-revolving-line-of-credit-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-note-payable-note-payable-maturities-details", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-details-textual", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-tables", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-details-textual", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-summary-of-changes-in-deferred-tax-asset-details", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-tables", "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies", "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows", "http://www.alsic.com/20231230/role/statement-statements-of-operations", "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "Statement [Table]", "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed." } } }, "auth_ref": [ "r155", "r156", "r157", "r180", "r381", "r404", "r409", "r415", "r416", "r417", "r418", "r419", "r420", "r423", "r426", "r427", "r428", "r429", "r430", "r431", "r432", "r433", "r434", "r436", "r437", "r438", "r439", "r440", "r442", "r444", "r445", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r461", "r518" ] }, "us-gaap_StockIssued1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssued1", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Net exercise of stock options", "documentation": "The fair value of stock issued in noncash financing activities." } } }, "auth_ref": [ "r32", "r33", "r34" ] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details", "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "Employee option exercises (in shares)", "negatedTerseLabel": "Exercised, shares (in shares)", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r9", "r68", "r69", "r98", "r293" ] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "Employee option exercises", "documentation": "Value of stock issued as a result of the exercise of stock options." } } }, "auth_ref": [ "r9", "r27", "r98" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets", "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "us-gaap_StockholdersEquity", "totalLabel": "Total stockholders\u2019 equity", "periodStartLabel": "Balance", "periodEndLabel": "Balance", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r69", "r72", "r73", "r92", "r425", "r441", "r462", "r463", "r513", "r524", "r550", "r558", "r599", "r617" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "Stockholders\u2019 Equity:" } } }, "auth_ref": [] }, "cpsh_SummaryScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "SummaryScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-tables" ], "lang": { "en-us": { "role": { "label": "Summary Schedule of Deferred Tax Assets and Liabilities [Table Text Block]", "documentation": "Tabular disclosure of the summary 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." } } }, "auth_ref": [] }, "us-gaap_SupplementalCashFlowElementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalCashFlowElementsAbstract", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-cash-flows" ], "lang": { "en-us": { "role": { "label": "Supplemental cash flow information:" } } }, "auth_ref": [] }, "us-gaap_TableTextBlock": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TableTextBlock", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-tables", "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-tables", "http://www.alsic.com/20231230/role/statement-note-3-inventories-tables", "http://www.alsic.com/20231230/role/statement-note-4-leases-tables", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-tables", "http://www.alsic.com/20231230/role/statement-note-6-accrued-expenses-tables", "http://www.alsic.com/20231230/role/statement-note-8-notes-payable-tables", "http://www.alsic.com/20231230/role/statement-note-9-income-taxes-tables" ], "lang": { "en-us": { "role": { "label": "us-gaap_TableTextBlock", "terseLabel": "Notes Tables" } } }, "auth_ref": [] }, "cpsh_The2020EquityIncentivePlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "The2020EquityIncentivePlanMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-details-textual", "http://www.alsic.com/20231230/role/statement-note-5-sharebased-compensation-plans-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "The 2020 Equity Incentive Plan [Member]", "documentation": "Represents information for the 2020 Equity Incentive Plan adopted by the Company." } } }, "auth_ref": [] }, "us-gaap_TradeAndOtherAccountsReceivablePolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TradeAndOtherAccountsReceivablePolicy", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable [Policy Text Block]", "documentation": "Disclosure of accounting policy for accounts receivable." } } }, "auth_ref": [ "r113", "r114", "r115", "r207", "r208", "r209" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "TradingSymbol", "presentation": [ "http://www.alsic.com/20231230/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "us-gaap_TreasuryStockCommonMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockCommonMember", "presentation": [ "http://www.alsic.com/20231230/role/statement-statements-of-stockholders-equity" ], "lang": { "en-us": { "role": { "label": "Treasury Stock, Common [Member]", "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r49" ] }, "us-gaap_TreasuryStockCommonShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockCommonShares", "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets-parentheticals" ], "lang": { "en-us": { "role": { "label": "Treasury stock, shares (in shares)", "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r49" ] }, "us-gaap_TreasuryStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockValue", "crdr": "debit", "calculation": { "http://www.alsic.com/20231230/role/statement-balance-sheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": -1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-balance-sheets" ], "lang": { "en-us": { "role": { "label": "us-gaap_TreasuryStockValue", "negatedLabel": "Less cost of 82,272 and 10,016 common shares repurchased at December 30, 2023 and December 31, 2022, respectively", "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury." } } }, "auth_ref": [ "r26", "r49", "r50" ] }, "country_US": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "US", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details" ], "lang": { "en-us": { "role": { "label": "UNITED STATES" } } }, "auth_ref": [] }, "cpsh_UnrecognizedTaxBenefitsUncertainTaxPositions": { "xbrltype": "monetaryItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "UnrecognizedTaxBenefitsUncertainTaxPositions", "crdr": "credit", "presentation": [ "http://www.alsic.com/20231230/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "cpsh_UnrecognizedTaxBenefitsUncertainTaxPositions", "terseLabel": "Unrecognized Tax Benefits, Uncertain Tax Positions", "documentation": "Amount of unrecognized tax benefits resulting from uncertain tax position as of the reporting period." } } }, "auth_ref": [] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UseOfEstimates", "presentation": [ "http://www.alsic.com/20231230/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Use of Estimates, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles." } } }, "auth_ref": [ "r43", "r44", "r45", "r118", "r119", "r121", "r122" ] }, "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment", "calculation": { "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Dilutive effect of stock options (in shares)", "label": "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment", "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation." } } }, "auth_ref": [ "r555" ] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "calculation": { "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details", "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "label": "Weighted average number of diluted common shares outstanding (in shares)", "totalLabel": "Total shares (in shares)", "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period." } } }, "auth_ref": [ "r170", "r175" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "calculation": { "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.alsic.com/20231230/role/statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details", "http://www.alsic.com/20231230/role/statement-statements-of-operations" ], "lang": { "en-us": { "role": { "verboseLabel": "Weighted average common shares outstanding (in shares)", "label": "Weighted average number of basic common shares outstanding (in shares)", "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period." } } }, "auth_ref": [ "r169", "r175" ] }, "cpsh_statement-statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-revenue-by-geographical-location-details", "lang": { "en-us": { "role": { "label": "Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Revenue by Geographical Location (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-significant-customers-as-a-percentage-of-total-revenues-details", "lang": { "en-us": { "role": { "label": "Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information - Significant Customers as a Percentage of Total Revenues (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-11-concentrations-of-credit-risk-significant-customers-and-geographic-information-tables", "lang": { "en-us": { "role": { "label": "Note 11 - Concentrations of Credit Risk, Significant Customers and Geographic Information" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-12-net-income-loss-per-share-basic-and-diluted-earnings-per-share-details", "lang": { "en-us": { "role": { "label": "Note 12 - Net Income (Loss) Per Share - Basic and Diluted Earnings Per Share (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-12-net-income-loss-per-share-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-12-net-income-loss-per-share-tables", "lang": { "en-us": { "role": { "label": "Note 12 - Net Income (Loss) Per Share" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-3-inventories-inventories-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-3-inventories-inventories-details", "lang": { "en-us": { "role": { "label": "Note 3 - Inventories - Inventories (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-3-inventories-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-3-inventories-tables", "lang": { "en-us": { "role": { "label": "Note 3 - Inventories" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-4-leases-capitalized-operating-leases-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-4-leases-capitalized-operating-leases-details", "lang": { "en-us": { "role": { "label": "Note 4 - Leases - Capitalized Operating Leases (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-4-leases-costs-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-4-leases-costs-details", "lang": { "en-us": { "role": { "label": "Note 4 - Leases - Costs (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-4-leases-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-4-leases-tables", "lang": { "en-us": { "role": { "label": "Note 4 - Leases" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-5-sharebased-compensation-plans-annualized-weighted-average-values-of-significant-assumptions-used-to-estimate-fair-values-details", "lang": { "en-us": { "role": { "label": "Note 5 - Share-based Compensation Plans - Annualized Weighted Average Values of Significant Assumptions Used to Estimate Fair Values (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-5-sharebased-compensation-plans-stock-option-activity-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-5-sharebased-compensation-plans-stock-option-activity-details", "lang": { "en-us": { "role": { "label": "Note 5 - Share-based Compensation Plans - Stock Option Activity (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-5-sharebased-compensation-plans-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-5-sharebased-compensation-plans-tables", "lang": { "en-us": { "role": { "label": "Note 5 - Share-based Compensation Plans" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-6-accrued-expenses-accrued-expenses-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-6-accrued-expenses-accrued-expenses-details", "lang": { "en-us": { "role": { "label": "Note 6 - Accrued Expenses - Accrued Expenses (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-6-accrued-expenses-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-6-accrued-expenses-tables", "lang": { "en-us": { "role": { "label": "Note 6 - Accrued Expenses" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-8-note-payable-note-payable-maturities-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-8-note-payable-note-payable-maturities-details", "lang": { "en-us": { "role": { "label": "Note 8 - Note Payable - Note Payable Maturities (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-8-notes-payable-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-8-notes-payable-tables", "lang": { "en-us": { "role": { "label": "Note 8 - Notes Payable" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-9-income-taxes-components-of-income-tax-expense-benefit-details", "lang": { "en-us": { "role": { "label": "Note 9 - Income Taxes - Components of Income Tax Expense (Benefit) (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-9-income-taxes-components-of-net-deferred-tax-assets-details", "lang": { "en-us": { "role": { "label": "Note 9 - Income Taxes - Components of Net Deferred Tax Assets (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-9-income-taxes-effective-income-tax-rate-reconciliation-for-computed-income-tax-expense-benefit-details", "lang": { "en-us": { "role": { "label": "Note 9 - Income Taxes - Effective Income Tax Rate Reconciliation for Computed Income Tax Expense (Benefit) (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-9-income-taxes-summary-of-changes-in-deferred-tax-asset-details": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-9-income-taxes-summary-of-changes-in-deferred-tax-asset-details", "lang": { "en-us": { "role": { "label": "Note 9 - Income Taxes - Summary of Changes in Deferred Tax Asset (Details)" } } }, "auth_ref": [] }, "cpsh_statement-statement-note-9-income-taxes-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-note-9-income-taxes-tables", "lang": { "en-us": { "role": { "label": "Note 9 - Income Taxes" } } }, "auth_ref": [] }, "cpsh_statement-statement-significant-accounting-policies-policies": { "xbrltype": "stringItemType", "nsuri": "http://www.alsic.com/20231230", "localname": "statement-statement-significant-accounting-policies-policies", "lang": { "en-us": { "role": { "label": "Significant Accounting Policies" } } }, "auth_ref": [] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "4", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482338/360-10-05-4" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "470", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-1" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2A" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "a", "SubTopic": "10", "Topic": "280", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a),20,24)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19,20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19-26)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.21)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.25)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29,30)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-1" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-3" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-4" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-5" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-16" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-20" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-21" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "330", "SubTopic": "10", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB TOPIC 5.BB)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-4" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-3" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-8" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "45", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-12" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4A" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-20" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.17)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "470", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//205/tableOfContent" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.1,2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.8)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//235/tableOfContent" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//275/tableOfContent" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 4.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-2" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.CC)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480091/360-10-S99-2" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//470/tableOfContent" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(e)(1)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(f)(2)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "12", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "9", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r108": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r109": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04.10)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04.9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11B", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-11B" }, "r114": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-15" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "SubTopic": "10", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-6" }, "r116": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2" }, "r117": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "270", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482989/270-10-45-6" }, "r118": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r119": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r120": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-1" }, "r121": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11" }, "r122": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12" }, "r123": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-6" }, "r124": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h))", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r125": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r126": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7" }, "r127": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r128": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5" }, "r129": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1" }, "r130": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r131": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r132": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r133": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r134": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r135": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r136": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r137": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r138": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B" }, "r139": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-1" }, "r140": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r141": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r142": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(210.5-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r144": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17" }, "r146": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r147": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r148": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r149": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8" }, "r150": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1" }, "r151": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r153": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r154": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r158": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r166": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//260/tableOfContent" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10" }, "r170": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16" }, "r171": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2" }, "r172": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r173": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r174": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7" }, "r175": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r176": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r177": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3" }, "r179": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r184": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r185": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r196": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r201": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40" }, "r202": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-1" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-2" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481569/310-20-50-1" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//330/tableOfContent" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-1" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-4" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-6" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//715/tableOfContent" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(o)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(p)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(q)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480126/715-20-S99-2" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480266/715-60-50-3" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "70", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480794/715-70-50-1" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1D", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-1D" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-3" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.C.Q3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.1.Q5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.2.Q6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.3.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.F)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-25" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-28" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-20" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 11.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483013/835-20-50-1" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482900/835-30-50-1" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//842-20/tableOfContent" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-11" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "330", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482105/912-330-50-1" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "924", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 11.L)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "825", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(h)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r443": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7" }, "r444": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r446": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "948", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481027/954-310-50-2" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "440", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1" }, "r487": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r488": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(b)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r489": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r490": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r491": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "8", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-8" }, "r492": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r493": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r494": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52" }, "r495": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r496": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r497": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482785/280-10-55-47" }, "r498": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A" }, "r499": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r500": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B" }, "r501": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69C", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C" }, "r502": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69E", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69E" }, "r503": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69F" }, "r504": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r505": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r506": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r507": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17" }, "r508": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8" }, "r509": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r510": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r511": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r512": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53" }, "r513": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10" }, "r514": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F" }, "r515": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r516": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r517": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1" }, "r518": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r519": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r520": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r521": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r522": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r523": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10" }, "r524": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12" }, "r525": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r526": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r527": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r528": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-K", "Number": "249", "Section": "310" }, "r529": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Number": "249", "Section": "220", "Subsection": "f" }, "r530": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Number": "249", "Section": "240", "Subsection": "f" }, "r531": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Section": "13", "Subsection": "a-1" }, "r532": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w" }, "r533": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r534": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r535": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r536": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Securities Act", "Number": "230", "Section": "405" }, "r537": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r538": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "SubTopic": "825", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r539": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "SubTopic": "20", "Topic": "842", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3" }, "r540": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r541": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "205", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483504/205-10-50-1" }, "r542": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r543": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r544": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r545": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r546": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r547": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r548": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r549": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(f))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r550": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r551": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r552": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r553": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r554": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r555": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r556": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-18" }, "r557": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4" }, "r558": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r559": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10" }, "r560": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r561": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r562": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r563": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r564": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r565": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r566": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r567": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r568": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r569": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r570": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r571": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r572": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r573": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r574": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r575": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r576": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r577": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r578": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r579": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r580": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r581": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r582": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r583": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r584": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r585": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r586": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r587": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r588": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r589": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r590": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r591": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10" }, "r592": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r593": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r594": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r595": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-6" }, "r596": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r597": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r598": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r599": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r600": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4" }, "r601": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r602": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r603": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r604": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r605": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r606": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r607": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r608": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r609": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r610": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r611": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r612": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B" }, "r613": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r614": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r615": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r616": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r617": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r618": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" } } } ZIP 74 0001437749-24-007808-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001437749-24-007808-xbrl.zip M4$L#!!0 ( &!I;EC2.]%_9@\ 'BZ 1 8W!S:"TR,#(S,3(S,"YX M23%FRQ:1V+2! 9''(F>%O.!R.*/'#;T\S#ST2+BCSSUK=@TX+ M$=]E(^I/SEI?'YSSA][-30L)B?T1]IA/SEH^:_WV\9__^/ OQ_E$?,*Q)",T M?$:#:>"/"+]D,X+^N.C?(@=UCDZ/C^_OT-=!#QUV#H^=SI'3/7*Q.A4 MN%,RPP@D\,4IW#AK3:6)14F(MIIGGL">H>N&RFR;J'1YV$-. MBS)M0^^:2:$@2\AE0CC& M8JCYP\T\4:[?TJ1A4;:"G/,"_E"2(0V$,\%XOMQR5) G+I C+LF0*\XCF14D MZM^W[; P34I7H$%]-0;=!(VG)?2B$=,].3EIZ](6PE)R.@PDN69\=DG&./! MFL#_*\ >'5,R@M'ND1GQ988@52PQGQ#Y&<^(F&.7E(TA\ L(Z<%-9W/&)?*- M-8M4"SW"+7.QU/ZHL(KZY<3U''7+Z1XZ1]T#8-UJ5Y"BT'Q-(HCB"N&EHRXW MXYWU5I6XIZO$/VI(D/(+E=@G]/JJ!N.%=ZS$-R97%^MQ-?B5E1R7Z-O$DT*[ MFLVU73B^2MK&Y.IB0VUS+JF:RFFO%ZH=-[.![DN^KN( CRNHD?UVP^Y>^/EJ M_1W3ZZO-[6N#+E^VL@WZNV#:J@&ZNK.>#.7!3)$X937U;[&AA\V&;-5<;+I. M\JN.DTW"M&H^-B)7%S4P@.%STN;,(VV?3%2<7FT$>IQG:JEA>*(FV.Z[O!S8 M]YG43>E[\=WYG/IC%MV"FRH<.8T#RCX9(QV@G&+N*CZKPYCVG+,YX9+"L$K% MI+J!*2?CLY:*[ITX!OG3P\,#B)%BDB4&V4A"ZPE5B'>[$"^NJZSNK"6@LST2 M:?WJZKC86U<=J.(&GD9E2Y4:D?&Z2D$5ZM,MUFG.R;HZ014!P?=&2*D&!D" M**P,(1"6.HYW1LP-] 4LV!WX3^6SH\8BGVDN+:3J?>W?E$3RH7S5FTV$B\5; MP!4N6*HL-#]V.AWDH,N(5_KRW!^A*\T6W2S8?FCG>"V)$0@R^N)_U->Y81%5 MCBA657C--:.[,9[58!YB3R]]Q)00*39%-=>*+1"[@-Q#S 2N+T(V MZ$&S:4 +N]N98X@JY)1("DI:PC#?J"U(#U="BM[<9]C^LK\8)U?"86-'32": MR\;P%K9G"]FC'++)M4!LC+XD#!M(0PB$9.ZW*?-&A N'_!7 E&0'6U/#MD ^ M7@GR0XKSO]&59MW ':+B8HCQQA[[;FD$I]JS!>[;E>#V@"&Z5@SW%U+W>0BF M36 =7V.T9ANQ!=X[%>52X7I,!)S CUZ:S?Y"YC-)G*[C8PG=H@;.,!#4)V+C M85C'K\]RJ/Y&;@B%0]_UGS5@+R(^.XYMH>."&8SS)_UW$P[CL>,1Z+%Z"":-6 1O:?+5X*F! M>ZMY[3EN;QTQA76]ZK"1 P#-B2\T,V<.J_]Z<):U;1'E7XTHZZA9B>!H&5 O M)0.Z5S+L.?KOU 3) X"'/*F>J3E^#)(_%33&>>:L@AEUPCEB8Z' M%4..:.'D+N.I+: M=[2[$.#Z+OR.'J4L)D>'4_$MDY1P R%AF'"AG[1/")MP/)]2-_VTW:EG)?;% ML6A=!1DTY59Z&:D7K'8",1&GQ*QF\T#"S,X='PBXWD NAL\ M!>'AJJR>?:UJV**EF/-K7>6>/A,93S=O;D& 7] ]X>%J;]]1/U*+[1F5X0,I M-:C!&:B<(_%K9UI+&[>(OCGOUCW2?B*100__7EJ&_<6_)/5=.]E>N7V+5K"4 MP"O)IZ,W\=4>;U%93HC#,@"65Q8S['&#%J$V9_%RB7;T9J 9[SNZ<;+>5J^,8JBA+H-.RANU1[TOYKS?:9L M?0.V,?EJ ^F")BW";,X%+J5U&XQ-25D;$)M;M(BP.1>8S_8V +]4YLV"C;R8 M4!;-[/62@HVIEB?QK%A=A?8M&M!FN<+&&-;?0>F,B,34@\F&/,D >Z^V=7.) ML47S,2<;U]O*B=Y7/;MX;\YV5DET-Q/(6ACJ-ZC!S^M;V)7T47VFQ(;SJ,?9HBV94ZH5;,D) MW_*&*4??/(]D;'Q1182Q[P=1(/&=T,E4?18+/\+T/2'.(_8"(I;6J (6K_,P MI:;$="1SB)!T!GR=,:8\KO<:!OH*XENT*HM\C1=%YJ"CZKQ9X M::V^4!1]5>U*AJXB1=$U*!K7:X9*X2-"FS-UA>8MFIHYM6Q^%-E,QV5 %2%G MVR *^5BT#'/.V&@9*XQEWXVD^,4PJTYC#3863<2<%U[U/EKC1$IV(=@TBK*V M+5J".0-LV.K0P&^ *$$H\V.F/IE"I:TG FNRLF@1^WB4R-9.) M>3^+35]1TK1%:S#GB)?WS#2>8A5 :HW+?!)]56U1%(>$SI#XH(FTXCKJ\K9H M/>8D\Y+UZ+=@(B%5]+$HC$-4].8BE/*7QKU4@5EM5P'!">@7N$@FL:>RY\2W]3!Z^[2Q.$H*/CSQ$J/$*:H"?^HMA4AOQ6B@]%9/ M';3>3?3P8I88F98S?$Y1@,EYT8EJ6SJ *HMM<:28GXF\T$B)3%\=1/TII2"* M3[IKAD25-Z\ /3 <94_/Z"4J 6MH0A_5,[%S?_1%3@D/D;@CLR'A+7T(YEFK,C7U/%4:LQ,!\*\_-$A8B \ M&:HO 2]K%1ZV+A;<:RGV>- MZURW%>I23;3ZV8SDMZ!(^01C@I_ )59BW_3).%429 MV(5>ZU3Y$8YYHR$4GZL*4^25/E7U)GU$;*3Z:IK-=069(#2JC>;5;.ZQ9T+Z M1,)]H 8H>I&7#S582;%EDV@A5-=8/3X Y_"=9?V=J6 K_?5U +&P.OU*!61C M6-81=<3@7%7*:52!<"M\.D247+W2=TG"_RI (W-,1Y$KB"//GCXX7H:>(]9R MT\I;%QRENB-2Y %[! )P@- 7UXS?8R[%EW$XY&Z$",AHT0GK5/DAJF\R6/6+ MGH C#7L-(-9V"TOA3M;4JQ!NA:G?PJJ#D.1%92WW'03Q4^^Y#X3W^%E_:'>A M5U7R+?._"X69/U'QBXIH%ELP^S!"0]&_C.]A^G+I''LWOB2P*DOFF\VJ;EE' M%-KV'18"N], W)$4\2&&E^21>$R[Z![CD@S8-:P[8(AA+SD%-TJ[#>+'N;%F M%:E_5)R[4D]A$EVD=2NDV"%]SJ,JY7JE*'_XNN1SH$;)E_$=_A_CR=.+1(>B MTLWEIC"73 BO+7AVUNX3[%WIK'TL\FUTB&.H2&7JS16;PU)@E5:;S&)A:*TR MQ3SGZXPE6^GI[CD;A9GA@H74*H*MU*A/!.&/1"T F%ZK8R]< HBL8A7HMB)J MCN04RX(.V 7)+H4JTN[,&JC/W&_0\&C P;NIS8[8SXVTE11;:9^I!]*)SSZ_ M@)5Z+@==@6X[]6,^1*W8_^I!N0 ?.%H$LCD-JU!NQ1B,=I$_N%,R"CR22=F& M217 Y9;BH8IM89VFO_6YE*"OW[WG@G]/#R)8=:LLS,N.'4HS]9L M+(JZ?#M%V[I%T2MV4^V=HJ\.;'V)]QGO^.O=KPY;PGB'>M_>9KFR[K;(Z2?I MWZJ&6JF-W>F3"M_%+NF1*BWL:G]4-(J"2KNC]9H?2R[ICG5;V\5^RGXIN'*' MY*KMH.85A\0R_>[HN@6?MRSKWJT0\>=!M.1;OC7!*&O]Y^G'BLZANIY0,H*_6(H=KN:%[[PV,E M752__9^D+TN_L%6G(\L;W]E>?+G/_:S7X2\HQ\YBL_ZWOM;K\PW:W]F^K#CE M%-7:";W+#CF,+U;UPAIMO%J?A*\!"W=*9AA^_A]02P,$% @ 8&EN6(*Q MYYM8#0 (<0 !4 !C<'-H+3(P,C,Q,C,P7V-A;"YX;6SM75MSV[@5?N], M_X.J/C/R);O=9.+=<7S)>,:V/+;3;)]V(/)(0D,1*@#:\O[Z J0HZT*0 $B# M4)N9W5@7 #K?P<&YX0#\]-MB%O>>@#),DI/^X;N#?@^2D$0XF9STOSX$IP]G M5U?]'N,HB5!,$CCI)Z3_VZ]__YRF203TG,R@]_OG M^^M>T#LX_OC^_=U-[^OC6>_HX.A]<' <'!X'P:^?8IQ\_RC_&2$&/4%$PK*W M)_TIY_./@\'S\_.[Q8C&[PB=#(X.#HX'1>O^LKG\-N*K#NN-?QKD7ZZ:[@S] M?)RU/?SPX<,@^W;5E.&RAF+0P\'O-]L4",@Y"Q*;!.";/3,#)1I]2&)_TP[GX MO!A"$O!W_1'XRUR("L.S>0S]P1KA(8K#-,X8=2W>+YM+^EK&D%, "PY"*I>\ M*XB(25B#5'[RQU424A#S< [YWZODCL(AB,8>$P6D2#?D4Z%E*J2#DE#'@ MJ]^/T0CB?.AF ^5 8BE=A"YYJ0(B.P^,4QR*52Z_$*1N?K#6\@XH)M$NV#!.I4*Y M6(13E$S@7DSH4TQ>$DVO"V#!Y$%,Q'-]1,@?*7^YBE' Y0W.Y7!6HS#H[Q;4K2Z=A2%(I M:^@%C6)00-+NYPF:>PA!K"(;0+M=N\=$4XBN,1KA&',,VWK9IFO'F,Y(PBD* M^3?,IV:HO*YW?2BJCD[QW *7_H*P+D]8N(6?7[XR*2J7.!'NO' /3D.. MGZKTA?D /N"38L1X WP5 _B ;SB7<6@#?!4#N,:7*R[I"ZDA[+9Q2J7P7[+( MZY&T/TP1A<_"0D9G9":S 56Q M7W7C*KK7\BZG-.P1&@$]Z1_T>\^ )U-^T@^RY%\^$*+A3D9F,T^U;#%@Z6R6 M#1I@#K.B_UA(1R.52^P="4&9%O3#?81>%V_I@C_R'[Q-0D 7_K'_\"T"&UWT M[U_1[PUX@ZA5EPT_><\&\TR?+O:?O<=NGI?1Q?X/[['K6'E=M+]XC]8P3:H+ M_(/WP"OB.&TGQF,'KJV=+VU>[*5'ITSPZ<(^Z$[.JY)"I(58>!]<>5T>6"8\ M+*3 .0NJJ^NOZ#IVXA"MR;J'.]2MKVBW-JR2@W#<[0Y2^C E]1C12 M%4Q:C- Q0KDEI@UFO7&W=)M629H/T"T^\>),O,?<2NJJ>_N([!X8"#LY;89P M>Y3.D1:?+=V#]2(+(7-+;X&55V&<$:8MS2W^E&\\DW-*GX#):B19ER,,OO:1 MJ[:']S-LK[2?)2ZLD9KPR5UO K3=Y>'3MI4U5W1]$XM:5P_![OHN/E6QMKR& MRPVA3_6JUH!;+F=Q49_:HMZR,%<^5:M: 4)RS4D2ZWM,=D=P M?8^)B@)7F\["I@['7PB)I"P_"*'&(; '$JO.@]5W<'L%!15&4^@B]19028L. M-JRD;9=U8?)8 TY28>V'JXG_#,)>P-HICXL%ITBH YP@^G(EA(7=$O%MPH4D M"=(F5PD'"LJPQ,$O_F]N^;T!Y3G;;I%1PNJ*EXX.WP@%(H5 LVR>T+A;+0COI+HC_I.>@0-1@)+?'=2'3 M@/G-=[%T^*(93C#C:L3-K+.GQWG++"@Q]PA\2F'40&HLFUY5\5?I#M), M5GV:4TV82G_0OQ* MW7AB*GCX=-D.V90K?GU*1/IF#>:+I57*K'<<26&481/ M"T(3D8.HT&V=S7& 7P]4;KRV*Z;1'L]1Q8PA/8[21JL\X*7T$*809>Z?,JRM M:NPX(%^2DGD!=?1N-.J&SJIDP6Z3;FB\1\\W0F8I1G$M2\O:=D/U/U&<9HNT MR.77D:[LT W]WPC]+@_7$Q%LU=)>VMC/;73%ZB-FJ'PRS0:(U,O#+P=3&U"% MRO?*(2S5IF6 :K2 EW)7AZG$SKEUXMX'L3RF*PN"F749=/4@CMPU'2(<^6BO M=262HKI[HVM:=Y,6WZ1E>=C!#,!6)Q]PR"#*!LIN/S\M>)THE>55])#ZI%V; MHRP53;>*]^< Y64KQ4EXMON!G3:V&-F1BK:FS)'>WKH,K2@QVB@MJE:%%B,X MU8N[U!2W@M77$AOU[0*5W%H0X8B0511?@L94:73J L<#BA'5$;6*QG[:)YOE M0>RFS">#U0YLDX7G4\S:#OI*.7=KNG_)_\QS/)MO!#=2FD&RM-YV@SLRX$V( M:_1XN&N23!Z!SLYAQ&]6/[1^S=T=Q4F(Y_+0>6F)7M-AG!J"=3H5ZK^L26 MA;2]R?7)I+>*MGH=NS7MAT?970C+JQ)BPE@P!QHP>2HN&"$Q1H"2*(APG'(9 MM2*:X&2RWLC.ZK?^NXX<@C>BVU&\_RU;)Q"=/@%%$[A-9R.@YSFMV4%(-DQY M]CQF67$8_3MEO.*$?HG%6W[^^!\R4M]QM<5Y!XNGYQ M;"HK 5_[BZFKP]OF;_C I6PS\S5 JGC0O4EO'Y"57PA=4?)N-8J?CI#!Y<)6 M,^N3N],/GM*J[=/JVPFJ986- M48FB#W2_.59!K6[MEO*-1_MN$UKRW%^G=-6LC[(V;I\OEC_H<.OQAJ?Y_:(X MFG5S"OHHR=!_8H>[@E/[+E":8IU2&CY=X(5^QJFL6 M:MO_N'%A9YL+,9B2.+J:S2EYRB^1K6)Q?0>W]->>[NGZ#,_FZ89,?4OV 672 MD"H/S^IVZPI+M:[W) HHRC7+'A6O*%)6/U7>$IQ0M2+K.SB^ M/I5G(GM-4*(7N&OT\.&,]8^SXIWZ,IM4WV\Z71Q?I'B"5&U,"PVLG3QN7A2E#:^^CTBGRZ>UK3UQ#S'X),&,4>IF:SR M29&8@]0-3O="8+G!JJ[A\]1:5=>? M$"T>>+?0;/#MQ:VD-L"T*V(USB0MOY#_C(1!$9_\%U!+ P04 " !@:6Y8 MNPV:M P[ #>.@4 %0 &-P/'=\6OST5%7%50-GKT[K\^ M7]Z&,SHG09RJ'@D5%A'_0Q1?7K*09$4WUE)XHRVA/@7K8H'Z*CCZ$/QX],.3 MB-[*7G_SINPZPD/.$GI#IV]6?WZ]N=COBSC-WD7Q_-VJS#N2)!)RT<*,TZD6 MZKH#%8*?U;/_[U;-;+F08B#B^2*A;]^U!Q6Q.8G38$[G]Y0WA%?91N= XSE- MU4@)RL#_-[&CP_L2%B0TL]]C&=DCS)VG?RRW:T@-=H=Z&J M9Y%$Q.$/(9O+AWWX\>C#C^_?%6CE+)!1^: L2%E&U=PFR\SC3'TE CEGRL]I M)B=3.:G&5+SD$B[$+%BW5X!NV)R6DJ0>I[&:E"[EQU5I!;Q/Z]3K,5!T/"'!_;X+J)Q@43]4?1/^4)I_->9?%RV/'TQ:A)R3Y/? MW^I^+M$D:FYF?-4Y[M%4"V$OJ"[I TG*9T^>8E$!3%.B,:8I$??%0,Q%\$#( MH@1&DTRLO]D@7'WQU\E&DB9I=+(M1Z>Q"!,F!>040B_DG[LB55]P&+QWY#ZA=5A?%#+AW$RE$QZ^ M85QJNK^_E=IRN>[\0[TR&OW^-N/Y6]QNPU9J\Q>XW9:\Q>8^Y28P8N/$Z5XQ^E"ODH/S%N[W&NK.M&_34\ MVNN[7M\]:'WW8B7Y2[CO&U+%:[U>Z_5:K]=ZO=;KM=XNM5[XVN/6*QRD))-8 M C8-[G,AWXZPSK@P-.'("UR+P&O#7ALVZ#7'*Z$YI2+D\:*84]+HF(A87$VO M.152U(H\Q3H-LWE#7OOWFK/7G+WF[#5GKSE[S7F;6]LUU94^'2XE8ZD1Y5Q* M'ER'KJS6N]YL>"I,5]ZGI+[YZV2[79VV!"B)0U'&A<:K[5Z-]6JL5V.]&NO5 M6*_&#CYK -58L++C2D^-6)@7?ZC=:+00L"!.IXS/"RT:KKD"&^I=E[7"T8LG M>"(?'RD(YPEYJ%"6*G_O47V;Y%$L&SV/^?PBJL)3]7O_>-:[O?6(=DOTC^D+ MF>_J,9I?>\1RHJ9_3LD)BZK 5/W<)YJ<DUYS*)S^5V5$5A;UAE.)7LPE'LE'6"\V*Q&.D,/6MPMVBHS#U+4 (JSXJ#J.*T2N. 5^H? M>:E*EC.@?+!ZPY7+.:0X#H<]+C0.PP?E8\_FE#_(5_.)L^_93 K9@J3Z$6,L MW3O6\SBA7_)M9\\>P/TB3E#Q$SG3/3"N[[G*4KUCNTA#QN7@*Y2_8CH^8;F< M]);&I094RP'VC"H_7?Q(I59(5G.) ;2I>.]HK_/[) [/$T;T$"O*]([KAC[$ MRM^99AHGBJE8[^AN9S1)ZB:=JD+](YN3)#G>R5/=AU95JG=L=^3I(E(^U&E< M>N)J)L6:\KWC_8,EAO+"J(Q8N9RA5?.J)A3<.2A*? MO@(,_4,)XM-80%D#4'KX%!9X!!_*$9_: LVH@#+$I\7HLU&AG/"I+V;?+-0> MQZ>YF+V[4%[X-!:#$Q9*"I^Z4N_PAG+#JI^ HEM0DECU$V.H$4H.JVX"2;N" MZ6OR>)NK0Z$#-*,Q$LB-(%9S2+0UEW#:E^KSRHF=YWREN@\">F M#K1W8AQ'+VVM$]>$7_'"FQO]09*H.90C,J5;Y)G,\;C?]'=$Q0L M:@S+H/"N@-&_+#TL&*I%,]GVP8$DUMDS2Z"J;47Y17/']^86$;1\G;5?31H/5 M0#W/N>SMG!?/FH6?_D\<+U85ZE.!*'0"\YBS*B\@" %AM81Q^&%QH7H=7 M2/!LRTZ3GS;(Y(>_/I.G>)[/*T5+^WO_J.14:$15]7OOJ&Y46D_%^ZO\S0T: M;0]5_(H'468:SX!Y6A\5]=(#6& M!>79\EKV;R;5F6>]X7BIMFP9!H1%31R,%"JCD%G4/!Q&@XZ?VXU),GFV2*Y7 M!DG=+7UVE7T4P5\(XB\$04>D6F=F-=JL^ZS%XCJZ:)B= MI>#XU=;/E@"99"V\=*A"@=V.V7ZN]!E,?JT5>W2B;#/7,#O7*4HQ[F]*QB#: M/;UP2R>^VSAQ!\/9X(U$,V!U2AZK=>^B&H=0)1;Y:*I[&_H0@-LD Y^YY*\8 M/, K!MOXM9RF4OP4))0(ZS2)W6IN4B"JG]HJO>&0$ M7"I&9T^+N#P-Z52:8>H)LN![/2!PI0X ?F$\8^FZ"_283.5P) ?@0N-3%7RJ M@D]5>'6I"N,/,Q>+SPE+"P0Y2>XHGQMBRW7%!\=NC+K65Q@K_D%'P245@M(K M:?L1I1$7*&N#Q+!*.,+Y/N7"IUSXU 2?FN!3$U 0.9S4A,,,V<.XUZJ2S%YQ M&VUJPNL,[=:XXE"Y^E]'2+=#D8:9BNCD&##5L&:.6Y3BW,TLC$%TNWVW]0YP M=.R:S,"=T?3I%3Z]0JN((Y\>?'H%4OGRZ16[2_ AIU?8>(2=IE7\' AU2,:] MQ!,%LO1"RFRA\04+N=3:9EL 6W.3A&$%IE5NQMV,*L58*27%G5$20OQ(E:ZB MST* UL&1 X +S>O(2+#P5T^^$Q[5Q'$JRPP44;Z:GFR-QQN:J/.R3IC(1'%D MS[$:LM=DJ<9R;;"MHU9];-V*P9F$6103":0\*5A;#C'#9*_;Q* M;*\C$\Z5_5RL&L?+O96D6%8W:VL:@5CW^2C?9_!'(9&W-=@-E_5Z:5Q4[1OP M61\^Z\-G?: C8K;1F,MU V.W5&I<#*;K8.2C-RN8A2X_WH00K0*-SLVKD2S6 MR(F'*O[0;&QAB'9U*(D&GQ@Z4>QUZF?6GAJ4PCS(^MEJ3.#)+0#ZO-"-"],Z M6?GF[6PEE'+>5(%H):H^TN\C_3[27Q?I[S06/])SQ:_DL.5Y)%QL?X=V/\ MJ_,/Y92Q.OQP4DK[94SN58IK3$7%7*5Q8[9LS2ES?VB^/S3?9USX: H&;=!' M4\8331G_X=C^@&B+ Z+MM&U4+H)N)?9 G/3>R^.]/%B]/)V83TZ].[\&G#ZR MY%'=OBG;I.IRSK"8'BV]//4-N?'V0'&T\OI\)D*0<)8+FF7B.!?R.4*: ML&+[Z0GC"U9ND=:[@1HW8J.OZ]Q64NKD.A'=\5QDRA])4L/1F/6E<3B'<*'Q MKJH=TZ]4N]8[KPVN&GW! ?$:W1NFHF/"/*PSAMYG<%=E36GO1K([T%"N/E=3 M\ BM*SXX]DNUN'/ST9+ :H? 9=!Q?;-6R%[B,^:P@^IX1ZMWM'I'*SHB #6. MV:A.&+G5+H"LZ4(S6EG\5OPC@D49A;(, MY&AJNXG>&!_^ND,VGV,IP2)D"_I%=M$JPFB 6E^\ U"W+)4/(>G71(X/P?(T MVCQ7CPU>"T5#7W! O+4'X-05'R-V MGQ3NHWD^FH MY_]")]*UJP>SC8:@%.!V2^F!'40'$YM,ZGF2&7V8'2 MS'Y"(Z$^^G1$+)8WUF0I&0=7.,_A.7;H;H7J-.@< M)"#Y8PW7*%2>O.['YX&%:R$VW0CD5R^[ %M[)!)K.\L>2,S6APZL&?G0@:/0 M =P&=1I!.'H?<)K%O/Q*$!4Y%<$B(<^##QA-J&_(360!BL-'&7R4X:"C#-?E MVC-)HZML1ODUDUB>!\8Q3>6@RRRN:FK;G/=*>:^4]TJ-TXOA]6JO5V/5J[M9 ME]SJW$>!%(Q0?B[S:<7FTHB Q^);(.*'-)[&(9$UPEQDTG#@(B!I%#Q0]L#) M8A:'09Q.&9\7#02VNGIO !SI^#WC;W7RT^WFV2?K1T^.I7R>&$XH M;!82S@ M0O,Z3!?!LRU%4G[:(),?_OI,_F9\(SK[X,R%>L>GG.)7TQ< *E\NJ.PXT Z: M)+&^&>J&AC1^U![=!BWN]NRG[:G]1D[G1M]9&T;EY M(1+)&BH4J,(1W8_8 \LKM#,,\0NR;J:IN+C;[&\9BQBWGHP/)/T0XF-%([XP M_8X-6?ZS1U#)#/GGU](6C[\*,4I.N5^-1X6NLKN'5Z$S%3RHW\ M1QW#^4@2.51$ 6U9&U6QJ>N4U1GAJM&92S5/X9%NO[2BQ@G)HVXW9?PTL,-0M+36FW MR.5:->.8J^8T:Y@D MVE9WRFVUMUUV/GLH57 8*7 ]MT':TJ"]H0O&GQ4PX(1A5=Q>4L^.AZ>\&^X]XH M.U9UG;+Z*NC5]$QD\5QVL$Y2J@N-/C4#I!-@"H2/*"W#NZJ]JWI,KNJZN6 _ M:%OKHT+'$0"D7-LY]X#D/R(EW\[_ M#-5"L"I>)FL;R@VKBJ6/QD&9856E6KL'H1V 5SFB4)W*%>;;]3G+.UUZ:VD"/974? M^3B$R =$,NS?_RAB!"9:/C3@0P,^-'#PH0'-%,#:KHI.M=^?@H1*XZ2AXJNI M[4;G-3[W36H+I=*"TBNY5!)E31?0+F-R7]YB3;)< MW=H 9-6X):^^>_7=J^]>???JNU??#U=];[U HLM[@7 &J#I.+92? Z%"*/_.@PY";/X$6HOM&ML<-[79*G& MVN0[X=%M)I&5,5CQ!TGR$K\0^;S\KG%_M'^(-ZV\:>5-*V]:>=/*FU:':UIU MH4N,T+KJ4V5P:I3]HLX"DMT8!?1)O;2F :3:=MR87D 8WMKRUA;(ZIB4TK1V M%L74UJ* -N"M!6\M>&O!6PO>6O#6PFNP%NS61:$09KP*DPJ!VJYR_B.\ODIO;?=56#7C->*O5;LM6*O%7NMV&O% MKT$K;K(Z.M6-/P9Q<1"%U"6?FKJ*C6VXT8P!$-I=#9_/YX0O-R_VE$XIYS2Z M(T_ER2R3%.Q4[+!%'%HV+C1>Y]?J_"J0QU(Y:H3:^+0Z@.:L#*P7=NU &YNSM;DM MJ)$;I6\8;CPQ;ECX**?W>-3?\W,NYZ\S*2D\)^M?&_E'[Z5WWB! M'*%UWYDZY-;0^Q"D-%N'BF4GBD!.1N7A#@UM-GB+CLPO6T#>DO*6%"Q^N'.7 MQS&1 CE)H],XR3/EX;(+'39IS=L3WI[P]H2W)[P]X>V)P[,Q(G(E"2DY/G%P]4N+MXE!M-O#NDK3)7]V_% M7-^768;F/K^0U>T,5;N:-CJ$!JJTGHN[BOZ,L]G:FKRA]Q777$.+=P#J3$H) M6U(Y1.1+*,.63R=%.*L*4WWI#B"=YW):R')>O(^IE"KZ?$&F_FV"*W4 \)JS M* \5?0"PVL(= /J:\O)6R7\5H?A5QH7XFH:4RX&7%M2UXMF4(R4\;9/+#7Y_)4SS/YY4C0OM[_ZCDRF=$5?5[[ZAN2/I *]Y? MY6]NT&A[J.)7/(@Z&WE-3/Y)DK#O1$Z6YXR?LOP^F^;)6KNXYG0>YW.QUBTV MVH;.W]*R-:?,CTFBD-[.*,TNV>HVV'UQAA8?''OE+ ^O,%;\@XZ>K8O!=Z\# M_P^:1'(4?!4Z?Y]57;>L-EFP9!ZG16=?TY0D*B^RN'XUHYR*;'6NB(Y?LU:< M,OV2JPGX:OI\7/WJWE7=)%!;WBGZE<&WNB3KL[2N>"PMX-M\L4C*/OY,>3@C M:10+^E6:J5S:9/EG<1AF-(M M:N)@I% 9ITF+FH?#:- 50(M/3MY2^;F,I[KYWZ*F#ZZY#Z[Y"$]K(M66(*LQ MR3 Q "O_S%[5QLC39D5D+9:=T<4A[:Q =)$M@$RR%J$%5$'8;L=L/S':P>37 M6N5%)\HV,J+G=R]K!<#;XV-$,6)V2QVJ#%JC& M(52)13Z:ZMZ&/K#E=K.SSQGK,6=,.^@/+6?,W>H$H]1)7,SM*M6:NU72C=M) MIK/W:NW# _+\"1G/!K$J(-.?D3"U2UL#DOL%";D>@CO 'O@560^T"DH".?^& MA'/+]#@@VX](V%J&:)TF8?\4).J&\+8)UG7-N$F>AJ%HE1A]3L+BNOB[[\R0 M-:LKU$%2:G&A^]G3(BZW"Y]*E4P]019\KP<$KM0)0+GXTF<9+Q[]6:Y>LV1Y M(]_4ZGK$RH19RZH=@/W">,;2]?O2=Z"I7 RSBU]?=C&GY&JZF3#7]O(.9&AQI]B+27UM$4K]1MT/84@F MJRL^.'9CFE5]A;'B'U3^7RH.JT-E-12,97'DM/F,2I]1Z?,/??ZASS_T>7G. MN-C1EM_N'KS-^J_CKRM#D4:9CBADV/ 5,.:.891BG,WLS & MT>WVW=;[K-&Q:S(#=T;3YU#Z'$JM(HY\>O YE$CER^=0[B[!!Y1#V3@".[)\ M2;L@R$@3)@%.[I&E2#;/J7":@O1S><[XO006!;*TZOCR#J>%5 /;9B8U;-U- MPE(K<*WRF.YF5!EY2L'.EA?%_0/Q(U5ZMSX)!EH'1UX'+C2O(\O$)OZ>% ^B MT?J,6AJ=; T 4[DU3#N_7F'T7O7E,=,[5E8?:7*';GN4B.( M8?HY8^&WJX4"4KDZ@.TWW M.%Q])XQCI=#ATP@T!_7Y*-]G\$%^]WUM M1< L[/+Q MII9JC6$TZ3 UDL4:A5!093(T&UL8\F8ZE$2#YQZ=*/8Z]3-KKRM*81YD_6PU M)O!D*0+]U^C&A6F=K'SS=I862CEOJD"T$E6?,^AS!GW.H(Y2/YZ,D686]A>R M&&DV8L^AB9%E,KJ-/0 [!\OYD&V2HH!4L9T6Z2B="-@[V$Z2'#(SR&GF\"_J M5G1U&&9 2^%NFRP,;]!-?K MGE8IP1K>K8[$]]'0:AJ9N[R=H>W4-_-KP.DC2Q[C]"&0;=* 38.P@-;21V/? ML!M?35-BTSY'TEJN(:AOC0.]P,N--X9LF,8EE/D^L@P@QM$7W! O$;7 M@:GHF# /ZNA87[5E/H1 4\HI4J4EK)=\#!N@O0";1Q0F6-5!"4 M,MM\><$@H7W,3%!/JML B8])^ICDX<0DVUO?(PM/MG=YC72WSJ76QSK2C39M M7"DCW3YC=.<[#9W_5OPC@@59JCFP9;P[& [:7G0S/Z)"T;:S(O*N'@H7K7?.6# MQ57"!\-HT%'DMSFY#F_]BL$:S%!(:1N\&(9;9&%49^/F_M5>6M6:M[ MZ#)^;&85UM!#CBK#HO]9&$.*4(:ARF[1=T*$YZP/,VX.0II+.L4]=ET2D-U)>1%,0[NR).: M4M5U"ZDR*LKC1K-S*B=)DA07=4E0RQ>%-1P[;-EQIM(*P>HJ&V/6C[GPP+B- MP?VZXF/$/O 97KN@=B\MK651?>7LH/@MW\/ ^:D=P"+-N12*SM+'L@"0\^[F8]X'S?K M1;OV)#GUG1^]#SC-8EY^)8A*2A#!(B%I2S^Z?<-N?.I-<7G_NO>O&W>\2AE5 M5PI+O2*^SXL KI0I=6WP_G7*>YM@+>IB8+6Z49E_)EDX4UE,V[^7D4X[JA8- M>M^0]PVA] UY[=9KMX>GW78U88\VX\QZ:7:KOA\%RLZ0G\NL=[%US1J/Q;= MQ!+C- Z)K!'F(I-&!Q6[3*\_-3XXG:71B.'<.6 >'_8,+S>NP MQ@3/MG1@^6F#3'[XZZ4T5X S%^H=GXH:[(RYRI<+*CL.M(-F*$S"4'GYA5RG M:?RH/9 36MSMB7[;B\Z-7&B.:1K.YH1_,Y_N!ZQV"%P&E:U]<,MG>*8S+H'5 MAN92<\H3H,:P##;9]D=0"A55AN50>_X1H,9X&0P[NE>+V!X^XP("K.7]E]Y_ MB=)_:292HSPS*[T5$S&;18TUF'U'PK5:#S$1-NJ6HW.]6^LVZ/*@(!+)&BY7 MJ.(.W8_8 TOCLS,S\ NR;J9AMM;[6,2X]61\(-E^$(\=&O&%Z3^LD;L;E>"V M5 4/Y(PB'ZNW'FH^5M_C.2*0H-Y(@_!P9YVKV/OS7V5 F(A9,$W8]V?T]='R MNA9ZCV_# +2*2%^D(:=$'0]2_GN17G.Z('&T.C9$KG97V4R:(#GG$LA$")I5 M!JQ;-80C1(L+S>L(&-L$"Z._Y919#(<[ML[=IU]H5N;I7S(AOS^1@^2:L\=8 M#HCCY5P#DN*1B/BX/VMJ?/%>TSY["&4D?J-J!4FYBZ:.7&X-PWL_GC M_/,B?53[!.502Z/S."5RB&X/.R4@4C/*.:T9ZUTUZSCI?\%I6&Y4URB68'JB5@9F>TBF55E&T-0& ^1GJ#LQ* MK:2I?+*-,%;4&9C%1J,O+-8:9<*Z_M#LE$F^F$@>_&>&CX/@T-(.77['T"&L+ M\*=8\?3 MT !2?LW>)S:_UPM7G9[*?AFG*%>GJXL[-@FEB4S8W=+$2J*NINF^LQN"O M*^XV+7E&.#V6NFETPN8JXF3R@9D+^_1O]^G?/>"4H^I"B)Q&N@TF547<8LP7 MBS+%@B1K-_0JYZ)N';:IZM/N?2J23T7RJ4@[E-JJ\FBR.CL@Q$!FP4ASL_K/ M9D G"KU29G:*)+KIP57GV$>:T0TP5UW5(*[C-AL;45\U"?6CZRSH'6Z-PDGH MIF-['L9.J O#HYMQ.^9O#KZAFT0[9J^-$:,;Y(V(=Y5-#>P-=_>0]C0)5#H= M@>3=75':/7ECT@Z0O[L[2SOF;Y'5 ^R*7\?1%4WCC.AF@U8^"G#X&)TFU(+0 M]CWB#>-^Z!2CCKJC:900G:K437\T32Y!MVJVFB3 .4-CF20@A'2CHC[&/):Y MP;(78$'JL4P$EN2;9@VBLZ2ZZ8XA-TFA4\ 0=&FKW7WH3!Q@(-$Z<(]N>;*B M4'7OG69_$[H5J#E10\8Y.GL4>,!#I]LDTY SH\HLV]!W/ MKS">6%RXZK_$OY\$0NB2N__G$I8#L4VC0Q(,=FM% Q>5997D(Z*953 MN29LM-.Z8P9:-S@$_S9BBE ^UTD5*U'3O P-+;O*0_)J]-8:M3$(R^X&90?>Z@] ML?UN@AD\Z$2AE[ZP43?1!>OZE(Y1=PSX M]NM'!TTT87S"HZRL8"13=]]-0G M]O8,NM'2K[3T,)&XB_]WW#66\C%TD":E*N10]D 1CR!%GF@?$1K@HQ"$9ZR0 M^MB,C\T _&IR1BA3L-=[3'3G3-97&!:__C0\4]'!,0/=M:8JPW)XSL-7&Q1/ M".?+*>/?"8]TKL &+0S,4&T[ I/9+CPL;MN3I^P;&):?_.-$?I:Z4!.I,]?& MR.R&"BHUM%D[AKNM#,YT_=U*,=T^54#*W$I/%=7'#IPP 9;F#A^%K<_4.^6/ M5*B3!M0V.:EL@H_'[KIY'W_R\:=GZ]/'GWS\R<>?7'B2ZPT$M*YB(W035:CA M@.[5MF;>N2Z#UC/J[O?0N_!)1@ M'S/R,2/3#@FI-EY-/S$6J47V5JZV<4C%+4MT9_[75W"*_XSP5%H+:E_[6B^. M0PUT8]E!49_&29YIKUFH*>T4^2ASV2M*#)!YK\Q'=61(54[%,96Z M!-W:QWWV)%'+PBQ7&VC5X5PLD= >UCNA-8P=/-'O7;"Z2JW$M )4 M?Z>:KKB_[&_ LSD=$%?\"7O[AQC@'[YR/*_NEH^Z/# MTS.A9UJWG(F.L"D]@" "E!HVO::%;0BEC$W7 856H.2P*3ZM?!JN O'%%LD? M@WAS'=*+OYMM#@6WYV8'J"4<'[+W(7MCD&N5#WBNK)@9C0I+5!OB,A4>!G=A M8-;A?5%H&)RFP.%^D6$PWI#OG^5Q43X_:L+5T(QW?WCWAW=_>/>'=W^XS0L# MJ XC]8-8JA0C=8F E-B1^D3:Z1(C]9JT4Q:=NAY^#H1*&;E7)P\5IUBOCQX* M%@E)14#2-"=)_"_YZ_<5CX"41()'DN2T.*= Q ]I/(U#(ILE0N3S19$$&.2J MU8P%ZL+:N7QN,"4Q7]=KYN; ]B-2P4;7^^^>7WN&\&S+1-'?MH@DQ_^^DR> MXGD^__QBWESATO[>/RHY!HVHJG[O'=4-21]HQ?NK_,T-&FT/5?R*!U%G(Z^1 M,5]Y6M^$_0F%M_..:7K'1JN^M/TW''TYE5) MY),LJ$Y\E-I^S*(=^Z"KONV'0KW/7U?S_'>9CR:7-W]/] [Q;U3 M'*53W$RD6A]E-8KAZ-SZ!K7;\=O0^YYT/S.L;=II,&^0>URI['"7P)2 MWM,0T/)8"['_1;.@7H.6W43?&@/S8;+7%R:S<'Q,PB('0,CY0.EFZZM07ER! M8DX<;M"":X8[:"3$XOJ+^JL.K>H.P4H=I$:%LD5(MR0A'")J MAL+>P>D=G"@=G-X#XCT@A^Y1W_QUR=('Y4H\I??9Y^<'W=!% MZ1D15]-K'J=AO"")YH:>MLW@,(EQH?$&^H[BOBU?&K6]JLA@&&O'P!^&]*^-UWU@7YG::\&>S-8&\&>S/8F\%.S(L.UZF1 M6LGM%ZN1V=#=Z/TC-:?URJ93>_GH0Y#2+(B+\_\#V3,BD*M+N44QN%='R 1*4YQ&'M#52>Q;A9J9TIT_UXV5W1-L'USVMNO!7Y]=()G2\ U6"S?@*:64R;CN'39V_#]X*R\($5W/[?W_^$EU_]U>>[\B-;DN[L&$9NS MU,I,0<<1BKY.CFWU5G0.XJXZPOZ^1"3.X@8=8'D;IM/K#L@BSE:'USW?EKS^ ML>TM"!9MN[XZUPY>MOJH=Y8G -#I[4O=\3>;J4Q.^=6UA MN$=$PPO332[>->\=FMZAZ1V:K]>AV6I51><_Z8'SOM:$SEG2/>M]Q1B=@Z1; MTHW(8CN@I@.-$<@EA>K.'!]?5SG F;DB8I Y/,YX4MU0T,X4^<%B:!< M,2GGZF(&\J1N:Z!90V=81T]SXQ[K%&RK+8JGJX?)>H0XFTYIF%U-MWXX M*T__V=&UFU;'X5?#A<9[^7:LO#VY>G'-](ZU9RX\+.ZM'>!;]R[7$:BNY?T" MWB_@_0+>+^#] DXT:LBR,C+SOYW.-E*KWVIU'=)"HL5[B!_IUM2@QE[?A31DOKL,M-??W]6KT\ T,O%4>@ M;=(0=7:596T,S(KU>))&EQ)%\EQ&>_1MPU:\&>S-8&\&>S/8F\%.S*<>U^&1 M6<^=K%LC-:(;:2,CC9B#-&VGCH*CHT#UNOS,27F9O0H5*'O@9#&+0VF^2FMV7MJUF@KR?^I %O4D\D#54S*6D41:Q8\T MS1OO5$"+W]'1.+CIMPH@GZR>/JF\R-Q4Q$8OKGGX!L..[K7VMHNO4N&SK.76*TP2=7!L801\ MH9D1O[&L][U[W[O6OSND[]U,I$9M9E8:*R9B-DLQ:[!FC(1KM?9D(FS4B$<7 M-K+6R!R_UWK/+$0B6<-%%E7,K/L1VRJLUA'I#F08XMI ([:PY8)!'*"HI+/E M0ME*%#L*\_4[G1KL=#3":;WH,2OM'Y7 ]JD48)A8.Y^#*N,@: +QS3A5AE?< M!MI][H_/_3F\W!^X>W3DZ1"K 'EPO]PJ09*@\,B48P!'WH,MT+$F.#3CV6+# M17$N!%^6?K[5AXV+;_7%7Z=G.VZ]_1]:!ZYA2+[>:I!L?N@@QZ'([SHI6]:G M.>A+X<@MP(7&9SI()>^V7*,_;8UM;6R^MNPXT'8?RZI#O9ZDM[%HDDIJRQY" MKL A<]^+P'G_=@8+)9S.RX@.OY+ Z?Q>&S.!QF<=3KJ?FF2?FF2I.XY%GH=(3L*3$6+A(D,COS MB.DC!ZA$ MLQOE#\.D^KJR(3N4S]T8&ZJL%1@32+3,)Z[XQ!4[QCYQI58C&3QQY9XD1&(* MQ(S2S"*/I+I>[VD=IL>V.R^"I4+*1J@@7J377$Z75%2RQ4AD[^=_4\>+^9&LITV[[9OHJA8/4ER3>+H(CTI[Z_6 M4367=HN\.-M#A]D;9A*?J+]%&^>,:7^OZN*N(4 M8W'_XXPET<5\P=EC87S+RRC:VM#C:F&1A6"0*4PXW:=)S2Z(Q(JR1]$"]!:_H<_/=Y^;W@!-H$R"Q O9A MU$R5]16T SFYNW<,S,G:I 92_1D?U?:DL-T+ M:.D_0+=NP/%OD8;Z>M$M'(W8 L.1Z 2X$5EH8!#=$M*(K8W+#-T"TXAQ/XEZ MZ%8DJ[ZQ23L',OT%)U-[)RN0[Z^X^5I$8("$?\--&)H!!&3[$3?;JDQ7= L4 M3)^$IBZ@4R0!P+=H@H/MZ%1(.YZ0/1CH%$=KBI!]#NC&HQU+^[17=/JB'6&; M3!)TZI\=U8Y$UYW.9TFO-J<,G9+7X=C4Y0NAT_,Z&9XMV;K3\QJ/T&;J 58] M"+R)!=UJ HT.PG(&T*FS . [KU&_J0>=#FM'#K3A$9T2:\?1-E<+G39K1[2PU7ZD9S%1\O#_=1?2_B MC-Y2_AB'])KRF$4W-&0/Y4LWI0.Z>NQ0FX_-![;KRCE%6TY3JFM9*M^#\+4H+OP[>Z(\C.4B MJ>72M"$,?(O%O .Z]>WX;2K0;1ZE^F)<%&K+#[7IH\-SU2WF8G2.-;,^5^U3 M:W%B;O<[=DQGJ,->#&ND)Z+S(H+?I(7IB0W![("SJF,9!=TV MT\V8[';R\3NX>@X[F"BN/P@?J0J<[K20K:J@^-8>UQH M_"'[N\?[2+'Y0N:F>[.KB@R"T1BNJ2Z$'>>@\:1"\SC>U<@FG)/TH9@KCY>; M(M=D6>SA^$YX]'+%+O;DYZ9+C?MZSEA[ZT^JMB_1:/)(.7F@:\WGFDL%N/\^ MA#Q]9#V[B,LK@\1%6FJ7O?6B]DFCZK%SQJ>TV!#==X\9GC2J'OLD"V;/%$QG M^/7XI%'UV);KYB+-I.$G%7-34D_OSQMK[_6ZMFJ?,];>&F!MM7PZKIX5,,5A M,WWWT<&]@!A;/^^I%L/T=",8X^KK"J5DB+YN"&-7 M=#P_]-3C+9#X/%F?)]MWGJP_P+JS%*+*( :#A0_<\NDPR50?N4&74ZKI?]8H MYCE8#ILIL=1. C$DD/JCX?W1\ >:6-B?QW2LB8E#^$!'FNW8>X1GK F.0WEJ M#BLSLNN$4&RID4-& X!=YNZ8-#PVE/CVD#Q;:<0>LAU-$=Q(CK]T*MOE?_40^3W_Q_4$L#!!0 ( &!I M;EB4LH4L$%( &%^! 5 8W!S:"TR,#(S,3(S,%]L86(N>&ULY7W]<^.X ML>#O5W7_ VYSES=;)>^,9S^2W>2]5_[<;NMJB2L/#9 4)1$DOD$G5;MC6P*Z&XU&H]'H;OSY/[\L,_2,BS(E^;]_=?S-NZ\0 MSF.2I/G3OW_UZ?[HY/[LZNHK5%91GD09R?&_?Y63K_[S/_[[?_OS_S@Z^AGG MN(@JG*#'#7I8K/,$%^=DB='_.;V[1D?HW;<_???=[0?TZ>$,O7_W_KNC=]\> M'7][=/0??\[2_+>?X)_'J,2($I&7[,]__VI15:N?WKY]>7GYYLMCD7U#BJ>W M[]^]^_9MT_JKNCE\FU1MAV[C[]_R+]NF!Z!?OF5MCW_\\<>W[-NV:9GV-:1 MC]_^GP_7]_$"+Z.C- >.Q$!+F?Y4L@^O21Q5C(VC0T#"%O#74=/L"#XZ.GY_ M].WQ-U_*Y"O*=80XZPJ2X3L\1_#ST]V5$.>/;Z'%VQP_P31=1X\XHS0S$(L" MS_O[946QTPWH^!'H./X!Z/A='[1JLZ*R4:;+58:_>FM,Z2TN4I)DY7!+D&*>L [ M0U:$>Y1UN2G%I$/V%[@DZR+FFRI%#=L^SH\^W7_U'PUN1)$CCAUUT/_Y[9;: MP[&<% V?HR(>H:UN\38F=$==5;OCFA=DJ<)DHLPYS@A*Q/Z<[(D*T%\VAL8\ M*A_9"-;ET5,4K=Z"#+W%654VGS"I8A)5?_#K_2(J\"G=UY,SLESAO&3$G!0% MY3H&6D\WVR:WT8:1_Q(5R664%G^)LC4^*/J<)%?0[ MJ@#V)-,[7D4)]T:?ZY72X$1)C11M4IPE7E>(_\DFP690=L4*E/M'4N$'@2CG=$4=?7N4YL_T+U( MRBIZS.1E=Q2 +6$5(O*B2+]%1]1P;E%/0R3'>3\D@Y(,]69:7^4Q6>*'Z,L= M!F:D6YL65 O_N*,/4+-?2W8*^5M7V'@XO&OL[JK&O M&=8)*6L1LT?U]" '7Z?WXRXM?[LL,+[**TPGL_+E_1C".P7O1Q]]KE<,X#R: M4Z0HK;$R!8_> /*O7[\39'#.73E!QB?2U7[P_5$)5,+]8W(4=T9RM*+3KK5- MJ(&TNGO(H?:RJ7Q/-Q4F $>,&M25$G0+U$QHLU&7$GX#W!L+M:4 M$,S-,2VA'H5B58Z%V+R([@]4=$\X?E2;L%,2UO&I&)5/2?ZZ$LD_LA_ET2K: M %8=>1P&8548^U%YD<0_4DF$7TITRY%/2 Q'9F!4!F78ZDH ?SQ*V=&3(OVB MIP\'(5@5OUY,7J3O1^;) ]SH 7!/2/B&V3\J>Q(\=25ZQ\=';-1Y53"+H#PB M\Z.XP$E:'15PMN@ZO.-U65$RB_(HRI.C)TR>BFBU2&-*_O9Z7T-Z71-A=0&X M(M;+&CH^IHOH;(=\1.;HC)&/X-PS0]U+G;.&?D3I1S^W](>-10DG2*-+V8]T M.-,&[X\@=JS61ADIZ7Z("WYZT%K8\O#LKM%QO'Z6VWNPF'#5[%MOKBDI7Z-; M7/##Z)26CL)4C:\"5?[[OZLZ3\N8$K8N, 0?G%)$O^V)MDH7TYND'M"N!71K M2J$M=O09\"-&P/\+>TLTQ.V^2Y]1%OJYA._^GO#H%H,;^0%H#J_G>["&N*O? M^^M-'2SDUZMM:[84+_1'I\#YC60!_(1D%DZ75QG=R0S_F*5SP]U/H+<'AN47[^N_U M1R;;=7K#T R&NMLO*SBR$$;H4117Z3,E3VNKL8+):R3 ($43"1" !D FMPAU)< MGJV+@C)$8/*+&VI:Z(< 7:]4,>;A5>.._DI0H6,HKP.ZH)AC1-F6B"!G@P&I M(/*L\G=BCA"M M"'^P4-R^CZ9HANG,I4[DKMP$N8WE;:,X=_Y8MBM6:S'H@780^RM+@M>8X"8D M>/_/SL8PQ56A.:F2X<1Z,^4IS!B.-R2GW[(SR_:K9N4>/?)$6:W%8@F7R]!E M59J"!#FS6[2&3C"M.F$[]7:#WM09S5]/=UL Y&_U3="T#26'@1RGM=$L@5XPHA\?:M.=OK-EIS2G/J]+'\< MOTY\5+E.A+/?\= =N5.$)E?C3@CS=B.>I7-(?$<;'!5T'?Z5_@B8\^YVDO>O MQ#W,G*=-D)*RC(H-RY18P! @_+%'==C8!W5QN=P*56D*M1O> MX8[X&C9$;3E0W1/-)M?3"L3S.8;+>=RUDZ&.R%&Q4TKI:$X*MLNOX>++[9'1 M-4TN5[0KVD.M_(MF/-WC)T1.H=U26XB.AQG-,)Y7?U1U+H&JNL2/6+V>5&-! M!_H?I)L!)KB7IUC8_2IETC/.=>-R)DO]Q).;#4?Y:K.BP5[J[T+_@PS0>NB MB-_EW]5#GZ1JG)Q@R"O1R9'^6M5M/8ZCQTVG!53MKM]>FHA>525SX@I4=CBO M65/6J@\>,ONY,T;4O.KU+Z(2E24W@.[3$\<@!2L>HY(2#V-)THR9PC@J\C1_ MZC;2TEFVL?HK?J%"W21*9-!O3X%FID#..2)#HQ@5%.,&,FSG42I M)*/:R*RX-]*!B@SXW9/A59ZJ<'Y>D?G8&-05V M[KOK=%+M+5\>F,6M?1RI\RV\;]O>Q@[,MHG-$]Z@%>9N9"-6G1!#C7I' =+I M2!X*>MH&W%&^^8"7C[CHTZ3CK74TJ!BJ\^I' M:WO>#1X:$5[1;YGB[Q_<-_YW 0FI(8H,]*;UV79TDB?7),K+.HE@."-5HH>F M_AZ [,?$J#,&9FV>YXH4WDONJO"9:#!O^G62;II(.5S$:0D#:?+VZ[3]^AM\ M6Z2Q]5I)>MA]UTM2H]+U\JFI07A+S@PU&?NHSMAOOL5H!32A-VF.$I)E$$NZ MP@5B_K!7]H:2IK#8J+=D(@'3#_\>'=T=7D8I.%//2,Z.3>LHG C]!&&O:4(-8-9[7OJY%L^YF^0Y.Y6NT[C^N>_PQSO&$M]@Y M/4&6(K.U2V:"\U]?O=V]-[EN+.R^&7LU^^+-NBJK*$_H3B]I ;QWM&$:4!)H M)]6@V/FZWI+T3V]#FPB,Q4W86 I>S>[<&>FNN>%HEQ[%%VBW%M+E=75/T'!V M.M<6-V_)"7PU"_-GVK JK_);7*0DV=-"[,MS*B=MXKFCY:I)1:!%K$BMZZ7] MR[Y?',K2\O4,87Y/C-I_)N^XKK185 -&(O!JE(/8/O%Q8Z:(/?R.'O+&S/-P M="HM3Y;3*[:([ZNHJ*XM')DL7D^^2D9>Y,G$V#C1?4Q5P;DQ8R=XRWL2QV1- M]]U$3CT/XEK19->8%&AVV&-W65KIK+40:%ZR745N2K M<_6#K @E7A,3!KZ>#>KBRRJMZS"$W* TR0BU02F2ZZ'X;%K\JVU/NB)C](,Z!:%4@SREKK4"H^1?32MH"(I-A: [^Z]'%S2#"&PN:! 1 MSEA0(-:]J<"1_8NI!3V!L6LJ:$N!3Q^UJD?:E?\YC+>Y\; V#\6%\JHJ^5 G MY3&]QF6)\0W5%W2!Y$_7F"Z'LDKK#SR1[ADAD5G;T,HJ9 M*Z^WYHE2'TT)&H3MO/Y)@[PIF=N@ERR!XDBTY/A-M)@XG=.6?$B#TP0P(9[P M 6A^$L"<$1XX%DJ7>W;"QU0SZ";.#K,@L'^2=$*QJG 3RA4^G= H+?+@?L"1 M!A_ %"R)]X"BUZ+%>T@/H;C,./@CYV#.DJ+@*<42JVFO]E;QGT1S#2T1JZG0 M([/F+RQEQQ ^^9+N%U >;Z@;GY70)+! MAY=<@USSMU^2+(TW[;6'X-$!R=:Z^V _5%_G*P%ZG3.2M9%4Z@><^DX"7-^, MC#30A>^8C!!%=AF6@V]"G$_$-> %370*O^^!G)YZEM-3>Y?3,7$ZU278CIV+*/B MMQEZ6:3Q J5YG*T3R*9_7%H(69._81VA MW^LUJW5>:NANAKM^^:Y+?O?Y.WB#OMMN[V';K?KG T'M2)AV9&-YO9>WLNO0 MQ@VNDD#XTYCP%.]56:YQ(GR=H:>)KF;J@'+^HABNMDE'5'Y+]D0SX??H8<2T MCY%$ACN^+S%N"S+'94DY%6676/(R8Z23V:6& +BORXT,/T7\:F-K'H:\UQCC M]>']AA0##0]Y]^LEM7PWVU='F\H<#]&7D[+$%7L?;YM--/B2K46(.H=&,\S. MW[3EU*'N\_1M&11*(>(D,HGM$*G\PNT$&*-WW*-8UUE4H"0MXXR4Z\[IK69= M3+=ODK,#(?V&GM+HP055E'5U?AZ*JJI(Z9F-<:PBK)Y_FJ_A8$AXFA*\Z@%6 M$([H.6^#*;KZC$DG@1_[6'#NX;GOI_:!RR["-_3LB.=I]?4,)D1\XD\XR)GG_,RQC,VYKHC&REID\4H7TH41T6QH8, $P5:=_!5 MBZBB!]%R3;<,'HD296P1L=<-<%%%U.Z##BUXG%)LP'1Z?*VR3<,UQD8X+D>K MM*)ZE+*,?D-I7L>8DDR2ES1CGQ+6/:=JL&9/2N<]?TI9D3HNT70$44ZU\-_7 M$#^(:*.TVM"#<_*W-6<(;[++P:PIJ -(&" ^;WD4,[H68+R5J!Y.%KV4T)"R M";-?HKH%:[#@4E)2@5R7C5"U9, .L4L*Y_]3FL/K!$=D?D0_.&+"\AA1D8UQ M33#4G^;6.7#Y!;ZA_>)HS6WW>"WA(2_P M#+@71K$=WMRU0_BGN; [7&(.;NH$,V_J*]]&A;51$R>GU"X(0LU(D(0$+<5RQ^(:'Z LN;Z,T^8A%]R[BAIH2<@C0>=I05"[0BN)B ME_S;R(Y &;@#'"7R;/)79/F@VO-(%OIX!]WBRD+ [A//>/A)MJ7@IS!UE,=Y M2]09YB^#]"E#I<*$Z.Z.[%D MF O^0A(HESY&2SQ@'?4UT0TKZ(!R7BZ*_H4 64ASJ)=W1(8AWB5@\"S5W\A0 M"ORYCBEE:10:;MB]=U98\,CX*!RMC&$! M(4K\\K8"+I:KC&PPOL?%VFSO*6:HI;RYRP%2Z:<5VN * M;:F=H9,EA'X'44?N5QKQ/N&O7RWR"ZQ+4M0?03O1I788(J:F0'N)??5:M7=4 MDU*UEO@>5O_6U^IP[= 91LAK]D"+VH>NEI 8;PJ\22-L;W&XIU-\S3;>05,Q MB@&[5F+GG?Q1*'>5XS"6B 1KB3J__(E2F[%^,^\N@3N>I@LKH3R(7!E]!=42 M5%VA-,/N//9T> <(_YRJK=DCCJ;$V^(X79=ICLOR')=QD;):/B=Y0DE,2WA# M@D77LF&,K0=]0)I+0!VA:ZEO*$(=DIC+EQ$%B0-=LL(O H,I(_;F83IAS,)' MX=D_#Y1..C"I*R^7J%R%-6N0Y+Q8% NQ!=1A[]^<3J=*B*WQ'/D+5&D)$@<' M]+;1#5OIPO(IE^'B _K91Z1XXDT.J-G/#P+7I!3)06\;33G8@>6C(B*/AM3Q M_!B2JA'()$NO(X'MGV0DANGS'"EOV>X/@^>+$E1I?_@ M12\4*U?9!J]?.-<*&=YBJRW1JQ6=[9]7)A6S.N2BI$,O+S_9(314B6*[\D]< M3U3XD%/Q19%,%]N!IAXNBV1HT*IN9W5,FH>6*16QDQ$?F=#9S7%I!&,T),P0(X*MH):,&6*$S-!%#I6UT2DOH#R) MH>KF:<$3R=/2#+LK1$8W]/#,FW;X$,6+-,?%1E8SC'?0U IBP!X2-I)US"S ML+N-!&^).L.\R=+ENLA3*'=.";I,O\!OY9 HC;;7E"0A7->"U")F>I?,YVF, M XO4.(^),N/\Y=)#QL6"9,G5DMJ$S_Q2;$BBQCOHYM(+ ;N6J18S2CNHPV33 MCW.7J+/,G]^J>1?BDA3G9/U8S==9_5O@9;I>@M>-U8"_:]^/%%YGFD'3 M]4KI8?7FA-(C3\OGY(L3&E9X2QL+96ZH0PUY,]00R/8)_L:#-#MD?_NMB-!+ MZ: YG?WZP:.T(05%+2UA$J$-)H?8X[B_>^VH@/>2REML?O%T?:Z]]HB MN*XEL4$,.26\KF/X^\%Q)A-ESOFL@%: 17>.^<^KO'X9L5,U22!<*EWUJZ2- MHO!E!,G0HF/QN!FCCGE3O^I9/W07K"R\"BE?54&O3 MOL)PXE6,B/QN9_T"M+89B+FG]9J M*G'\S1-Y?EL_G,@74_W'=AW5'_QZ?K&W4 Z_4'W>H@7@O#;QQ=V'DX]_]?MT MPR%[B'C,/A.BTQRS"$#V^B\$XU!>05KA:-$>I;[Z:=+C.'RI1BEB=-2CHU%J MJ,B:$M0EA5WQ\VH*H1+%%>2,&+'5X\)[K*[RLBK8 S4/N%@*5YFHH?:2V@?H M;_WL8]9;+.;T:ZV,QPIM\TRG M0AB_;0[0[IXD@3CP1B5!H<7=RPD_[&YI#8FHH7&G$:L3!&1"CGV3[5/^&P]N M@R2F*>V&*F(_OD4JSYV_+*>H7$#*"OT!L4C/4<:26*JSJ"@VE-*_1-E:=(97 MZJN;TR2#P\OU&%SYQO +WM(1)EU)B>W$B)=>@SQBR&_HSZX?+AJLUMD@A&,< MB<^(C7%J= ,T7(S318FZD(6(%86.F''8R 65X)2O0?K+=NG1/WX]H7Q,@)>7 M6?2TM[J$WRLNH ,XS@L_-,@08/,J'&*>D5%&.)KBL[3:G!0X.B/)OOX4?:TQ MP5TPSK=CB@L!,@38O,]O+\?(&!N\[:2?2GPSORBK=$E5C.AJO[^1YLZX"\SU M[%-L[ #1X*/'"I*E\09]KG^&#A<1\);(,2R0QXQ7%4WC>IN5JR3^[U@LGRX8[2A4-73NRS2]H"U!:)>BR2EY[]2_ZV+EG=DTY=28%XZX+13E960^=:O/>)F+$7S:."!Z]1>[8E M:C(RKCUCQ-8T>)/QGZ,TAW)F-_E]E&&HB-K)^1VK?*/665.>Y9#XLI/DJ-$Q MF*R/TZ3B#!"#2(Y*2@H<.B94X4)1Z(@9AP/&$[*[DBBN?DFKQ1E5&&2)BR;F M=R-8D9I0K,4:#F(+%WDX2):=.$3+(]>[G^3O,13X&>?KJ40ER@G@8(RB F_] MENLN;]95646L.HE@10K;F13*[L+SM:H.$.NL&PO4KYA-=5]%1:6V/NKJ,>@- MW=I*1H=6G+ZU(5SDBINR\@!G]8N%B-GFM9DIR5EM5=LG*=#&H5"H" M[:,N*9AT@'R&R!9Q+4S!Y4J*[T2'F:YNF-9TO\VKR[2,HPP"^.B2/J?&=M]M MTTA3G9LG 4CGV MBKUU!K%1T9,H\D,=@)7;B2%$8:XJAB@RO[>P.UX;EQ@-10A(FB%.%)(=LY?; M#"EI%%YMR+/#IPF?ZZ1.&.M?@R@9ZAP.-=<%HKEQ5=*[7 M;T/!4<1)0$E- Z)D\LHS<;1*JRB#= I$VL?7,Z _3,BA]I0)WV-7G0=_Q?#8 MUL@]U@(![FNB6_*N \IYE3MNJ'!DD[M0ZV4JD>&4(ZOVG,1,$7<17]+/]D-J MI-IJV+5"F*[EI$&,=@0&,=S>#=MQSA(E=GD1%C"LY43EH*6QH+00?8L).P!- M04@.>=HK(@)&!;SI.'B35Z$RST!?:[<:/3C"W67T$&/G!L-LE":WC;LO24_D MWF)(L 9O*T;YZ+<<+60I/T!IA[$PK)'6)H5H#Z%ZJ4++<\W19X8ZN*$WQM_] M4K1C3'.\H]\VEQ0"C^9@.X/=? >>M[V\MO6"^3&'N4FD630-G\@=AK==FR\A M6?Q8QR?2-'0P+T>J(+B &.N$79SLR1YM2B_#EE)0'LR9;TE MHS/D2"=>Y%5:;2[3#']<]SRV.=1$0Q/N@W)>>I3A0X 0<8S>U9^0>T2&)4YG M_6*)BRZ749:=KLLTQP>/>XRTTM8" M.] \K7Z&$S5( RWZ?C822=ZXE8,%SK*Q3:&OD;X4=(#Y$@) &5CQ]_*0R#'& ML9J_RJF!OF2I'==4_JXJO!QR@ \U-]@&^L!ZVQ8ZR-%G0(\8?K^.%FDF$U7. M^1.@AY[2P3)-[0C.@X\"P?U"PU!/0EX>]HOGRC/+7]6@ DR*%V"#O;67DJ6NA>736%:A!&M!?=\C& Y>=@#>!@JU/ MOJ2BZ )Q0RO!TP#0N7&U&R^,/@/2,/>= ]P4!O\>LLBIMJBS N[PBA1PYP#Q MQKW!2S+-M?5'/UA/BJ3)YFBQ(XX^D$H983%1Y5L@)?,Q6N)S I=54JKFL+D5 MA;,%ZUGMS!"@1I\Y\BFHGQX."Y60B&U.5=%?2+;.JZC@.Z98!PG::2N?/7B> MM$Z+E1LRH;2-B)E$FD-.9>(7G&7_E9.7_!Y')_^^/[X^,_(0(D323^5N;A;E6F^EMGRU64%F!,W,RO2?YTG3[C MY*0L<57^;YPEEZ3X)"SJKM17=[7)X/"VX&2(T5IS;D:IX>#=4C)#0,D1(P4Q M6F8(B#F:D^+H$\0L!WR,4TGRB!&C/18 R2&KLF!W-G=I^=LVG5@4E"K31;L MB!BT\_+P.FO(+L$:2V>' 04S$*GNTO)!]'A84!#L+$+MINGM"DH[FK-&#Q$ M$AZ?F] 2]BD'KH5<=??W7U;_K5\("=) MDH)6B++;*$VN\C,>YL_J&3WN/Y!R!Y4WR[3"][AX3F/%)RBAP="C5;[0 MZL82.";/M;K@3_8PXE#23[8Z2] MMO]- ->3_XUB1[OHPV:)C'&9*+/.[1TCL_RRJSS!7_X+BV,2!.WT;Q5WX?FZ M3N18$4.+*-Y0]X@";A)I%CD5BCO\E)84-[]L$LI$?S-MD=@%YTDBMDC9I6 @ M>1!PDLBRQZDT]-X4B[[6GGT_-\'UK >Y^A6RC(SQP9\WJBY??> 2^(![3 O% M7KH^J6'H[NN)W_I@>EILZE1 MSII?$"!'-WDH8V.(NT2)948"@^.DWI+B9"LP](]?/U*EM,[P\;O'[X]/BN*A M6.95TO,2KE1;18$9A.E:8 :1JWAQ+8]"XUZ$8C\"] CP'QUWWX=&4!DCS5EE MX,] D%\M*2Z+-4 \*]R0A*[I8)31N3TM#E=N!Z%OG=E";*%VC M$5C4NC4=4U"Y?6+2HW.%G/-AA]Z2LHJR_YNNSD@BOAL8:FQJC>X ]6V0 /JQ-VL_>/K-T@&?>=NK[]6J5L34796=1N;C,R,L%_Z \>2S9(XJ"S5JE MJ^9^+8/">9A&AP844R+0G%*!TFU9CY_"O*FGPGYBPE,?&HR]VW-3W!;D.8[T[(>JR, -5M[,'XH$_$N"=R'D&FOH63%0U]+S@6YK14HM M/X8>*FX]%!%[ K>KI#Z'>BE"DN-$C8WA5!3(]6 5#(D>ME34%G(P%16R&H8, MIX>4E(A]WH3K =(XUL6&/?<\E.<@;J@I2H< ?:4>'6+6230RHM\DT_P:0C%B M>(&'*MH_OI^]_\-[%.4)M0MG[XY_@"P)]AXY?WR\P"L*9L'R)Z(*G>.8>9S1 MM^]F"(2!]=Q^>LP^?3^C_-#ISB/%\NH"'P#.,Q7HL0L?[F1!TF:@[(SUEPW%U$ UGF" M?I."NT4<5H9&^4M4F>9-DJ ,!9R.H+3;Z,N'0VTU9:@7IO/X:"@M E@1*\@7 M[" KQUBBQ*V I1&NRG"N6Q>OI8*X;0@1VN"D*'"#OE#_1&95SW0'H< MWBH<](G.8&D#(><XZRP \>UI#>>0([-N_7?SS,R MRHB0%Q"MI:MV"]';S=Y5Q [X ,Z^COT_J4N)?K8/WTP,\#*@X#5$J?F6!=VL M"=XN^+""-RE7LXCQ@Z(WQ$U_AX@TQS?SLP(G:749Q6F65INKO,)T7JH[:F^< MKPNJEGF=$M'90@.$[I%# 94ONU&%)ATSTNV8-:(?@"#P=W.24$/3##54(2 + M<;J0S,!=GZ7K+;!T2&)4&5=OMP^"DI"O)"?SF+5O0[X8MI>D L*FXQLI"J6TR5+>5M<]PVU7=+ M%VH)0W)C]ZB_)21T1(/+LM_?51+<:[&:^4EW1^$W7>S+FQ48C>7%%US$:8E% MAI@^(-U+*&6$SF\^EZN,;# 5\%5=FI C+M&;M+F('WEA,,!0C3U\+=)9$VP@ M/5Q7=W/ZLDCL<=U?[ [X'27+8W\RC#,* M[NEGG.,BRD[RY"19TK-:R=SFS_B"%QH7":Y29UUIE4+B/,>74S%#3YR.&8L= MCG9(:2:TYW6R;W$8;]N+O2U0D]0+[&6KO MEE MC;JZ),40OJD;K&>8*+P< HV6X6/4]=\,XORD5.%TY$V-@H:=Z/>%?$# TJ?0-Q MH&/-+4J;GTKT3)C@H9"089ZC7!V1HX!AG==I] @TI+BDQUCF9UF0C#*UO/C[ M>LB'+M=-6YZ&P?OSE0_3H>U<.#K]07"1; *Z7P:>/ M5P\7Y^C^X>3AXMZK"/0PB8A''C I[6:%P>>7/_%WMD?*.RKWMY:L)L#C/#Y^ M ?9\B>BAAC04H(B1P#1.1P.%J?BH/B.#.6!2;/8FKG>XHI8I3BZB H+)RI,X M7B_7&9Q5S_$\C5.1G,IWU!30<00>LKP;C"CA*(,(H *KB3[_O(DS<>BC49::PJ7 *IKB6+)WEN\X?.^Q[A+%%GF<9OE"0S#=ZF"5MI;Y@XT M?QG=.VCUX;6G3:*3H=K9W]PL D>1-*'F&Q28GT]V6=N0:( :2;4!M M0;[U1F!!QF=H? 1^)'U'+,32?L@I?V; X5XR^E7E<% M];HRH*!U2H7Q>LNSFVCST%]P3[S R3K#-_-V09QQ@J2RD52[ZX;A2*)Q'C); MTP$7YRTE,U330I4@JT486A4J3PHQY71H%:FF&-VH0]>R=TN_ R%[AGA[$,"M MOUY)*SH>E/9=I^9P_"IY!=4^K15RIF-!G+DT'\[\V Z-;IZP4.VS>5RV>GGG M3<1N<5Y"+&">W%0+7,"+?@6NTH*'!>(I4^+ZF;^J<3L EE*GPKZ6%&G>["="R>@.R+SHS4H4Z92 M6;# !-2IB,M";3K(.G_Q?9@BQP(]7\=5E^?"9UQ4N^O&^TFB\1;W)TF/5OR? ML[%JV\;K/*'Z$(*K<')@**]JDL*$ *K*'S%E]#16YJ?.C%Q\B6G3DR7\I;-, MQV"Y6+,BG)-8P"+BK*]F"UPP??GI)W2U7*UA7:?UY>#TUO&H@,HN:CE^3V.% M=Q307W%4/%"&%V%"K6R@^E.H+\2"FWTU>3+M *(OSX^.0-4 MEO]$DZD^D^?)$C]$7^3D;JRY?FI\+UCW8>V %U'$DY.P44X35?9Y3#=>%3A. MF5:EOV>XXJ$?)TLX=/UC:'-4Z:J=B#R.PGU6\I8&7H&W@SQ06K("XXD)-[V) M(:_V,!P$V=M&4[!V8/FZ4]U!JG-7:DBU=GA#G0)1UQT)(O/]DT^D>!/X;,$+ M+M)U=L4>!TV?\2WE<]WDD$5S7DMD@Y@7?)E-Z=IS/1)EYLD(5K\H% MDY3C]]^^XP7_0FK@ RZ6D$I?^X%27-[A)BCN9GY;I'F-&NHAX6S5T/^-WU*#I@N4V)HA0UUUCN>8FH\) M/9QS:_)B/L=Q=3/O?-%?44FWNXYN4D"C+K_/N'@DJM4L&L2HBKZ@1YX@@MZL M"O*<0B*)TE.<[H>HH785Z)G66/74$8_YI#,Y)P5&4<;D$[P?5,= =FOM"J&? MOT14*S#=DW1E@)T345151?JXKM@]%U5CU0(CS 9WT*%^Q2B WM)9M,1TZKP9 MZK59!Q8>>P9,8)^+FFF:Y?O@G*>0,GR-+?X_WWWS[ABMHH)G8L]0M*X6I$C_ M067M_;O9NW?L_]I._Q-*V8-IZ/B[V0_OCF??_?$/S,='__SNAW?TSQ_:AF1= ME17]#NYXZ=??'_\X>W_\?=OZ>]KZ#^_^1*4>G>.8W?"C;]_-$,P):[3]])A] M^GY&M^]R106&GNFR, FOPHDGLK/IST.8_&U=5LP.>"!W& :79O@CKKA#_9J4 M]/.SJ%SI;L598'3O+#U<"4MEZAT_94.2')>('9+,ZC_HJ$: MY71S2/EM#OT\IE2C54TV>MQTZQRW-(>I;>Q4$(C/V0VQXW!OPDFK?<2,/WPJ*V.[K6W)%X?J5[9J^V6J"'FZC8J;@I5CY&_G-D$@X[(UUM-4M(ED5%B>A> MQ&4ON.B-SD._&,HQU]#)U 0!W^$*KG-(3@^)_#&C/I_2>&L=%Y(8JA=WBAB] MLO?$YD@TZKBV$>LM?HA/0A,8C)[GYRPJB@VSO+D+*&*^'7#D_H&FF^J9O2OW##C:+E!CAW8C:$ +X=B<5#%%EON/A/8I9<75(;'Z?/X!AK MJNQP2[\W942CIXY2D,/@X5411@7:DL&\)XP05,< RN6'>!RCII]58JP!EHVB MJ!$#WIJ9=V51=4P[^M?6K*-__'H'@2*]*TKPK>*JV8/B/!H&I*NLTCC*T =V M=5]'P81X"%3$03+"%J<3_B'ZDB[72^&4]WZO,>D[<%Q/>XTL3$ZR.]YK[WW.UT#W\=+[$+SWO^K[/V\(X,,":?>.@]6*VBZ M_EZVE-XN]&#Z;Y<,*ZK0=&0K7*0DN<@50W]/:_=C5"&<)V!C;G!4S""48!K: M42!/0XIRB)4>:D"%O%4\3'GB<( M>YGC3RR6E&$%;$ W!3W$K$@993=S"-"^3I]QP@58,@W= )2N@&F@=)Z^WM*$ MJ!0V5($F8Z]G,<(0IVQZ^>TF4TALSDLX,X-YLF6MBYW&MHP*!M2UF#(DT]A2 M=YDXM)/V<,;IH:-]J_-G3)Z*:+4 JUUP"!EMJW$H$<)T+1U=?*%.)N,,)4I< M"J=2?BY(*4J9'6YL2Z4PH,&.)PR[E5.)YCCX883*25&I'4<8OEU7S>/VA/*( MG](:7/[CKEEYI]^G2LK8X^%<'TJT]#7>2. MLY0H\%EC3&![&YN*[@Y0UT(,R%":0W(/H LK'OWL[!.4 1[Y%YF_ M-/FV=[C$Q;.PQ,IX!U/1.0#LRVX44V"D&DW&8U+%HD;'G)'DL:1PRAA3.0Z[ M/,1BT[=$1GCG?YE$@$M.=_D:FUHA7Q^XN5B.C7)-N#8\%=^&&U8."N>^SG:R[ M9$TV3'HV7N&BVD ETNHD3R[^ODY72W'E9G4 MC94(:)@EQY"BJQ\MTVH:L,2MSX6W!"&W'3R6>K[/K="XJ**704U/, M)3#XLJXD2-&QH9R,4,-2:NB8(48),XI:6F:(4X. '/0&7ML.4SI+1>*( 9.] M9[7PRB.UMAA/;Q$U-\QSV0?KWKE?OR%0%UE]4Y?7#B-D*7KJ"+UD8DV0ACCR M!)]*7]U2US(XO)4A*UKL1R18:HP:VXD1+[W)X1VFI]LUAG+73WD*+F.Y?$+I M?IKR-PK?N8>"$S"9[#]YAA-M+GJ3NC8IZ#K-\17]5>21$#?4E*M#@#Y*2M1% M) G8D@#/9$HYB:19Y$_PV\-!7QNYNWN76<^B(1EM+VN&2>"Z^MX+B1 YU!N M<30:1W&.'5*R6OQ(;C2N[,Y1H2'*O/-N16XM"FGC<:B+HD>,W& M')E;QVDXF(3DG6X>* T]V6<:/6T+ZQ:#:SGM%#M[H)^G\.8%LY]")*[I<%Y& M$D7L].>_(GE[O[9SERKR7XVUU_5?B>!Z*6,VC?OO<=X298:%UV8@X+T)9P% M0TE/L1VN,<\:>[[[[O?1<"77MVL]>?TYI1EI]"37B3!QLJ^N0[H/IOM@"0U>_^Q+&;3C,3*+$ M(6_2 J&7\#^8K,]1AMEE)J4HC2N"K%>T M!SS?17*JSM@@2-&7;)ZF^(E5\CDDG^&7:/->NA,S"NL'9S-[[ MPUN2-0HAOU[&*;]G,\BVS@LWP=Y-]*[)R!1FW'_JM>0;*B/-31.P?;^%LJT< M,+&+J5%&]Z5G3^/BR6C5W#(U1M=.@:,2GV/^LUU+%U^@=,$3OHLJ?#&?X\%' M<_T3$<(,4B;V51A"RJ/ROJ-[X+OFRYUI31-B042"_?WU;>CZJ]+6EFXXY>%\ M;50J1CP7,EUL>=$ZH%WKH@8WHLCK1\W".#.D^#ORFFU@UX8@L;3GM7'1Y;XR M +M)QSV(O*6O2%.DE<_B<+R:>Q#;;E8U0>C-FA+T-7KDK)UD/" M.)YD/]!"BMZ*AAZBU2H':&(&&XN3H=@JUC%Y[N*K4.2 61(%3H>WU MGD(P:O;Z #G18("V^L]%%FTUZV,UXJ]3@WUOK)(4S+4AZ10JQK2M%8I^/1+ MDU4Z ,#N*NU!%'B5]E!D<95:&:_)*H6S-*S0M"%DHBMT2 +'5^@HFSVF'F!( MR:WS'YH*5CM!1X*EJ=!3._5@%(/[A#]& JIS6WB]=5:B#,4[462!,A#DIX 8 M\-6;-+)2]72QS%.1U/6TT)2N#B1?*KV#4D=G&U&L_7C/,BJ>TC!5)OHFFTCP MPZ-/IZQNYNRE1;J,[G'QG,:XO"=9(G3IC'70]NB( +MWZ)05!%)1^SI9QQ4J MHRR8&V>4N42=8QY+-591FN/D(BH@FJ_\@*$8E4"0AAMK%V7L ^J^$B/'BAJT MZ#-''*H0XR!GB1J[?.:0QA@GY24=#*LR<;-B[J2++[B(4VIU"LTXR7[Z^:/# M\#W4;& $<#\;7JXRLL$8E:R0$EF%\[G)DNJR8R*Q3Z:MKX;#@C#^#X95.IB^8R+1Z(IF$E-FV-A\@YG==;)AE"6$.)!\\A8ZVUUQU0KBNA;%!C!CF&>*X MPQY(QYE,E#D7NNKIH%1)];%; =6/='7JH-[6=5!K_&$E3([AXV51@TI:;?-< MX@07RI;[6"\SFUT$W;.U+B+#P$ZW-S(-"[U&/@D;?52 #JUS.=YYC4\E.=LW M!K6SL)U!+.H./!\1J'1/YY74@^I=,2N)-'^\G]MJL=4[L27K-'_:UE&1S',V@&BX]6I@]I4E'38UVF1* M>G8K8SZ',ANUKM>T8-@Q(J=QW:9$E 5#T_KUFWKP85OAP_WU&,V[-P0F(6D^3&855&&NO)S%J4W'7FZ* MF@^;RT%7L[:EK,]L?R6)2/[T@(OE.7X4K?&%[I*D M2-(\*C97]'A1?J2L@#AODF6L3 AWM Y>3#C%:'2)X80ROQ<>3H:@?SDR$8[J M%^MY9$1V=MF =R1N%\[!?8J'N=/2=26.OWDBSV\3G'(U1W_9:C?ZQZ]7\;PX M62!/[N\0S5JU,&- +E7X95D+E'C MF,>BDSF^F?,GG$067D\3[;*36U#^ZDYN<>H5GC2A6>-RFST,2OLM$:"&)'2. M/.3U=:\,$!DF^8\J.5E7"U*DU>9CM!QZ,WN\@VFLR %@]X]CM'$1+>X9 NPA MG?H2C.X+J+@O.MH3P^V'4]L)57;!H#L@10[5(^,SLLZK8C.X[PVV MU0V1ZX/I/(RS1KHO0R'WMF'F$B6..7)]G9-X#;<>)WF^AAUU18I][\58,PUW M5Q\X]P+"<2*.%'&LWCU<@YPDLNSQF/$?)=L2H'$, EK>X1BGS]%CAOFCBP+= MHM17NQ* ! [G>=LU7K1%/)FW--4F@1AQUE_\"W^K;O^%.JE77)7ZZD:\R.!P M'J#5O'[(?NG0,;GW7M6FA!CQV9N,GD9T-F)\O\"X@E 4N)X8.!&.-=>41!%8 MU\)7XT4,,6HPASP7CC*8J'(MJ"@-G@['.U@4)S\G1)% A3PC2K!Y1*BLG1/' M+?V+O*('(CBJ%M2>9-A9I%Q]YC@C">XQ_!5Z:9P#)* [C[9G)* =&F:(48%( M@6I*$)#B_:R@PGRBR5%_E9ZX"9GF3VQ_ADS;X9C[\0ZZ-9Z$@#T=%.#9D@8U MW1)KY(%J.XUSF:BSSE\"6OJ4I_,TCO+JD+:QHX!:9]V4-"DDKB6O0P7JE<+0 M9P#%N2!F#';L3:-GY[QD%=!&/6JBI@9>M7V0WCQK6\2AO6M"KA(55CF6DLN4 M[LW+ZJ(H2'%&B@+' V&'\IT,)$<,W)L,U:](1QEJ$U(1HP=M"4*?@22_>DIQ M#H@>8SU6D:^6I8W1N M\C4DL<#7'6FF'P!!,WA)D4DV)XU*-;N[""W;)M-'+,Z)8T],A0OV>"4^CZJH M_S%%V>8&OI<^L-Z<+BUR!-C168!"K=(L)JI\0VS#Q9=X09F*(>*R M1VR&FFF(2Q\XYQJLQHD:I"Q"UKMT#'*2R++'L30;U]0 +;U?'[-X]?HP9],!$X8"&1X8OLU,>K)LZ^OMC?4R Z(H)7K(7,O1#D&HH0AU2$(= MFB2CQL(,/*F/E R(- /N<$9/TPFJ"%+CQ3=>UYJAJ!([TV"X7N])3LHXRC]E MU."D,Y(G'U(Z\C(F*RQ>H/*]=%;D.'3GFWE- =J2@+8TZ"\Y%R,S7F/#@PVP MIA2DBV@RUI&!4R?Y"JS=C\1WQ?)]]:^-QW%XN$$&(A !O*$NC!5838SX9VHXM_KJ(ZGP M;;0![]: B3S>7,L8%H-U;O9N]U? C6KD!O:MS;&86[+;X>4PO!6G)X3)*B$Z M1)6';C?4R[187NT_"2'\7G]3Y7!\;:N #5V=A]I9]YA&1CGA=HZ;,$/Q+.^W MT)_G!I*OF6[PA9KJ \X1"79X,Z9^P>G3@JK)DV=<1$_XXQK4RWF:K>EG]XN( M\O=F7955E+/'M9._K7C]8 F:IL&EB55= +4><&*$P,T%GL]Q7(&3LF1/ MAI$5*WF%WJ0Y*AF97^M4R_$V>K7E9TA>$)/55'R)Y5GQI@7N\*HN:GDS!V.C MK*T-P3(?:ZZYCD5@?8FJ"+_.JK0PEA_Y6'+\!':LFM*I:Y0BDC.+MVQ,WB#+ M:E1AV-P.Q=AE#."()],.$DH9B_I,DW M042VM#G9&VVR0KN<<#U6Z?'YW/$D)'-LIY/EL?\':!X&]K7^1J9/S#SXV,.V M0; \-BOP8S(/(OT^Q!7_PG S;\.(;PF/[QY)-E+I:BHX RC\B1-5T]M0ZX:, MT,E(2K/0)WW2K/4FDQ=1D5/U6-[B@NG,6G\*Q'"DM:;D":#Z/"A3:R#'[>L3 M*VHGL.V1;90)R;*H*+>?:MD$U@:IMJ(^;D?U)B-E^34;1I\%I#561PMM3,Z( M(E]#&^X'YLAI5*:QFMD^#,.NT=Z/R]."/+#/&O,Q$^$X0;SP#)WER>&,LGZ5D",TLM5P5J[<"5$]/9(=VU/7=S>LXB)G8V M&3*:!MM:$BJ?1A##Q>3)W1'$BUG3?P YM&BF?/P0VBT2' V[6A25+I_)J>-^'H\)5>@Z-EL/%E0SO,S(RUA]))DNYJ[* ]!>792L="5#/R'7 MI)C;_2[)$19ZD[%K')487F<#&M91QMZ3'"HC.-Y!4[[$@%U+%\.,.J@1X Y; M1E""S42==R%4UST$0"U(EN"BY._!R^NP\;[FRDR,PZM6ZY+Q;X@3,B'])C$3 M_8I.EKU!-=Y #=ZQYA:UG8\:O")=%ZX&[RB#1_1<\/=96F$?T6LCK8U>9SF MZNEQEDXH0EA5-<;<@Y=91CCF,1R3/5@%C^1>?.%O6)VMRXI26)2GFY\Q>2JB MU8*>10HJ^RR08LS+;0&B=E"G-F;7\MJ\<@92@QKB4$L=%#W:TH<8@5.I?&1C M/HF#2?)> ^QF?NBAEUH1Z@ ,*WZ-(_)5Z M,R[Y+G8G(ML;,]!3S4F6W/UN3 MY$_L+(8?JP]1!>5@*&G=N.?;(LWC=!5E5_E'2NS#"\Z>\0=JX2R$!JD-F+I6 MJPENUR)_^5=$)^"[,$:LE4DA3C@]36G_*XZ*AQ=B0\CW0/F0[1JE'Y'^?OHB MO3\%NI+K&K5RCK_%$>AE^#\L,(J6$+ !%DTL&-<, DH#I/J/2PU18Z2AR,-:NV*( M6/@]77UISOA]BXN4[ <:JW31$?\1T*X7@0P-R@O"^ICH24PYB)K2@+9$S%"' M#,3I0&] HRH%+K@9GOZJKSJ#6O%!40T0H01&G[8T!ECULDN&Z# UP.D:;NU) MSO?D]OGBBR\KG)?X%.=XGE:*QVUMB,;G;V7,/@_D6^+@K\X[US6!Z$U-XM?3 M.Z?K3VGOP=UPG@*LDG,\QT6!$WC:NRQQ!16K]!U26M",5X<25I\KHR&,O]C- M2&-QR9-V7>G-8>]R,)B8 $OA@E4Y29]QNW+OH@K?8> >I9CM;8KK01^D\:)0 M1^US9;34=?<+(!#M4CB]Y6$PI;UKQ'2>#,]6%"O%[WJLH">*.3DH MFN:HC0]X:4T@>I/4)'Z-DG4!.7:4+E2P1]C@K_KTE^;L\ZTWJ)N5MZ3&Y 8Q M5M)V4?+,'@B>DP(]$9*4\'QKB8OG--YA,6\S#45((B.0'C3^7EZB >59'+WI;;1UQ!KM)M09[3!">GFT\E3J[RNJ12 M_G0"1W%>N7\X_%D?D.8B5$?H?&^#S+4YRUQC<:CSAA04M;2$R9O<[S2 D( Y5;MOFNB .I]+8.5P[5.ZC#(+0'Q:NR7!]4^]/MKN<(ED;CR?TK38^&^]/A6#46-2,#U73,T"4X?( 4%A? MB)FA*0[5V/%3LH$7G"KN_FG&_;)(XT7M T)I2?\#&H.X5]77'S'EOJ'*^43Q MQN0I3__!KHWKH(GR$QTI%(.6UZ':T&GJG M2Q"S"1J29J@EBGT^U3'K*:"3]I9HW65 10?:WNS0[NN,W3"Q4]FZ90>T6C5E MD".FJOINI (H*JU%2XSGR]M5SWB8,:.TJHBVHPVU!FW!4EXN@14 M#V$O=8NOB$<;ZV@'(5#7*F&+&+68]>^"+0Y#\T*,_I%":!K=-4L"Z?>K@L!] MV&8&F^MJ.UK<$#A#ZY(_Z\F_Q744!T1N-&$< 5;.N)@1-:8;KI%+>M1((3(% M C?F<\H5B;4BW4EGS8P"=YXYV1# 9(638&,5.1B8D]4TWQD_X>.?^KJ2%TFB M-QWFF:3LUN*7M%HT-3/N\&-4';Q!+MM<,YM4!-:+D3J 7R>OU-Y8-$S2!C]Z MH02TY6!F:!+C,3WQ%G7-F\ZYEQUP"TX0: 4,N18L@18_IV1='IQM0Z@!F75# M5!ENN/1O*#LBX LK07:'H^RBA I2S:L)[.->+:#64T5JY& MJ*$Q6E(00PJJ@NZ]G)P9^M@^'S*QD>K'L&U?1"E@I)B1@TC+AHQ1%$!-*"XL M8L!A0^7QD:I4DE]&<"59;<0F^5 ['<70!\]YZ7F&$S5(]2UM.\0;NW# X1N3 MY2K*-_]6HGIT\YJJ %(_*"-$FG>&$GV-RQ+CW:7$:@]EFSO*MOI)XM[]4+&K MCMQ+HO"R(TK2HKP\G(U18T_DM,S0P=Y8$X2 (C2]H=HH1;.LA\A2M)J:1LS? MFS&RT3I/8/O+WHJQRBEM)G?$NG0;QYRO;1 M42ACL%UK$A Y(*"I"]Z2@( &_3W6_KB,]]LTIVMGR5.98155PT./$K*"1Z > M-ZSE&=^I RPO:?$C6KPW]1#7IL##"QGP"(L::7F ]X$Y]_@V%B?%:.#?-2?; M> FP'0(R@=-BNPX:DQ-5+R2$:U8H&T2.<\8&)^7)14_Y:"&6IHX I3>PTX&)G]-='9)X(84[*21?28ZBT5HL^!VE2>;X?Z?L+(O* MLGZM:N UJ-'VIN^1[<-UGI(*^-KWQT*^ S7.VKX'QH;Y%:(F7N]#HGE2O^ZL M6@Y/!YIY)3P5K%Z+X-6$02HC8J3-$']U%B*7F@?!IUKG;\T2# MF&6AJ[LP?0^U4*DT9&V;@X ;0RAVJ[V(L#E7F"Q HXJ^L-<00&W.Z]SP.N-I M2@521J=DO%"*')_W);C+A&OZ&_VP^8C^\QB5F'[R_P%02P,$% @ 8&EN M6)J?1D)L/@ 2Z\% !4 !C<'-H+3(P,C,Q,C,P7W!R92YX;6SM?5MSVSBV M[ONI.O\A)^>9DSCI='>FIO>E"Z8@BQV*T "D8LVO/P"I MFR4"6. %)"%4S70L"0#7^K@ K!L6_O&?+[/XS0)3%I'DM[/SF M:?GF<9HE8TS/R0R_^9_3^^LWP9OW'__^TT]W-V^^/9Z]^?#^PT_!^X_!R<<@ M^(]_Q%'R_>_B/T^(X3>/_^ MX[MUZ[>KYN+7<;KIL-OXT[OBQTW3@Z%_?,S;GGS^_/E=_NNF*8O*&O)!3][] MS\WU0SC%,Q1$B4 D%+2PZ.\L__*:A"C-8=2R\$;:0GP*ULT"\55P\B'X>/*W M%S9^RU%_\Z: CI(8W^/)&_'OM_NK5\]$,8O"OX5DQH?\\/'DP\?W[T2S=YSD M%,]PD@8)2;%X$;S-+$K%5RS@+YA_3E+^YKD$1)AQWO)'32F>_/8VG+-IL!Y/ M4/-_*PZ7+N=>R274<)E(D+QPYH2-GIB*45ANGY8C)YP7(QCT*L@,1;R M1>@*,QF) BBVG@X,AW][)HMW8QSE8(D_S+6/",T+P@#,.S7:$ZCU@8$Y91_,@EZI0_^OL>$_4&L3;H,5P.@@^=\+!9%OB: MB*_XG_O30M^P&WH?T5.,=;2^:J2B7Q?/ MD.ZM^2Z1$\(?F.L'?Q?O&H]_>YO2;$,%HN'!GO-ZH%6+=W-$Q7833J-XO.X] MH61FOL 3\P2W!DG(5$%];P08@KZ32A&P/'3M"H]K?B&X_'CKS&O$G@.T? M#,')4"& +O6N" -$GR#-Z%1;R/[QKM0<:=CX^A D..5V)&^) TX9"^:8!FS* M,3$UO !#63.ZP+1X@\L;7-X0&9(A7-*&]&]<>, F[%O"GD32%O"GE3R)M"WA3JCRD$W[MMQX^"!*6, M\9?&C!/V%$-8BQ=I:? FDC>1H(KBZ4J"SC$+:33/5Z9D?(I8Q&XG=SN2JU/9 MJP\T7(-J^!SX!#UO3GESRIM3WISRYI0WI_IH3M75J^P96>'R22RX84:Y),,- MJ])N%HPIQ7-K&5!GN^/*M&9 2Q,%Q]MRWI;SMHVW;;QMXVT;;]MXVZ87BKVW M;;QM4V[;@+5?>\;+F(19_HH!S@0VB9$+H+'\6W)P!#F3!P#&B!&;R&*K- M(_[XL2#A,D;/)4ISZ>\MJO&C;!SQ02\C.KL:E]%3]GO[]%ROJJ#(*=IOT3Y- M7]%L7Q>4_-HB+6=BVZ 8G9%Q&3%E/[=)34;%^G?)US@4_Q,C>I&,S_ED*Z-, MT[1%*L]7LWZ4)!F*[_&$0Y6*,1;LDS .UFA M7+S3.TPC,K[DWY4Y [1MK=$I9 ]&Y4%+"S1>;74+**B>)Z2 M5DGSUJD]XY."HOB*FQ O_XV74C(E[=JGC\QFA&L/W,+,SV>QVRS-"S1&29G& M >_4/N6%*EFL@/S!X@V7;N>0YD<3L"D>=S'#])F#\(62'^F4O\XY2N2RJ6S= M.JV748R_9K,G3*4$'C:Q0A4]XVO*,Z%RY$I;M4[;51(2RL4\5[/RA>^,9'QY M62H7=5 O"[2G6'C%H@7F^A=:S5H%T:KFK5-[ESW%47@9$R0GL:1-ZW3=X^=( M>!>35.*N4#5KG;J'*8YCW:)3UJA]RF8HCD_W$#E_B$](V=2@<:2W4/5K$7J'BD2%L;#!0^.(;@O-"H(#XXBJ*T_$AD/AB(ZKCK' X7!$OU4'=^"> M-D?T6D7H!HZ%(TJM/KH&A\0I+184@8=CXY06J\RB@&/BE 8+2?F$0^.4&@O) MFX-#XY0:J\C9A"/BB/YZH!. E)?8=A3_V%9K@ ];,F/$2OO @X'!>@7"4LXG"N MDGY&E(HTE[R>_&MW4*DO0HQ2**WA>*NKZH>LY1JJRD=M/U YM_S#GP[]A86@+T=":M-6Z4'!4C,[N<8BC MA7 NC9+Q;3K%5)P(G>$;7%+OJT)/$Z5#0NIE1I-(7$XOGC/AZ."+?V717$ H MIQ+_M418F:JK+?6Z?J7K@62MY?Z6]VJ)$B5/*KU7CE:9&A\R 2=-;) M3R7009MW3GOI2@+O8)5^?]5J'ZY:Y;O?'--T><=E(^7:PV8//%V*^D.*R6#0 MLQ\<":J4$\2@I]WLCZV>/-JHR7:WO^;77_/K$WQ, MF"]7O(E& QXZUV"=F9AKJ*Y@8Z)"D1IZBBMXZ?/#8!::*VE0D+E5V8OI"DAZ MH3&V9%R!QG#],7&7NI)25P4B0V^\*U#))YK"]3CTJ:14[A0.X*&_=#7?\ M&G(,:(&:<>['>SE590_MQ:*0.7*(QB M41#Y!U'$W66-&@AB7PN.+E[F45&M^IRK[N()O.%[.4'@3HTD M"4)&L(Y#2I MVCF6C^##_S[\[\/_@PG_^Q!T'T+0^9YU1I*&*N+.N>>>T*V/,^@Z6 MZ6<,X]LY%OI"\IQ3IPTIPSKU(^COTQCZD\;@P_W#,W%]N-^'^WVXWX?[?4B[ M';RTVBPQUQU=P<9';IL-2ZJ=E:Y HY<:F 7I"AZ0%::*[WCH$4QC?/1^;%<@ MJ;*Z' \Z/L_A(-[O\QQ\GH//<_!Y#OMZ%MQ/;#F_X5/ 1!VS)T[1.."MYSAA M^:.".=_S3-,>@*/9RH8P(J=6DD2?8N\2$A^G6&BP0H7)[__FCXD66&@V\HP% M:!^?&M!^:H"!PW[T ]&Q)MQ3VJ:CD.WMY&QGSH70E*Z,X/96J?]"N8DJB!$7 M=BKFO;1==]0J@[B*EG;#T'S3$Q@O%E_=U?HW6*P MI\N#-3K?L+:[5C(&<=OFHSK";$WDEH?U2J1 M+!1.,5= T&X\0+?&T..9<*'0>$Q<$0S0%E+5B/118!\%=D[-,(P"-QJ9L!PF M_EG4I>OQWWN.)EW@2T+O^&/Y(H7B,SZOHI3) MX[_0/C[^VZ_X[ZK*&5]#5B7.1H7H7T?H2:0E1IB5+%ZR2'&]T:QR[NN8^SKF M/>&@HRBVCZ,,4*/T<10?1_%QE"I2X:LJ^RK!C5<)-C-[7(''AF]K\,Y@[]LJ MU4(:L1$M^[1^"2A>D'@AKEKD8V)Q$V.83W-#WY9^(%L^+B@EM7Q=-X@Q%$XS MAM.4G6:,/X>Q<[S ,9@Y]2N)-3TWJX;JCA M<]!5-4:^)=U.P#-5U[QSVJ_%CD_5-1F!W:SR^6]6[9YJ5"L0\2$UW1%3RTV@&IN@N[@A"@6AE(PW+%&PN1F"8\*:[@I9>? M8Y$L$-ZM65S=,V'&TT:/@<^'G;4 M\;!KDCSG%U[P*:J]H$S5UFYI,G\O6>_O)?.15A]I]9%6'VD=BM#X2*OA]NCO M&5/:8\34_G$%$Q^M]]%Z?R-=AW=&F;I:7<%*+T8Z]YDK2*BW);-PAOMA:9\2 MU(N4H,''](]%O??S:QZ]]_+IYJ0#LYZ3*WNDN M/G!L7,9%[[:":HJN.'E-9Y*!ZN,*1%6$YI@$1IH.H[?1W0\Z^K.P/B*@C@C MK6++@8&3]P'%:42+KQ@203X6S&.T40Z 00+]0+8"!E!*?/# !P]\\&!(P8,[ MG#"Q2R3CVW2*Z1WAU&QF^BE.\"1*#:XOJCN<=_YYYY]W_GGGGW?^#=/8ZKD1 M[HVMBL96,_NZ;4/L) A)?M]ZD7[+MC,7FF:#Z-PB!*)H3.\@$"4P.N-0*L&7XM<^",P2@K!K2%YVR-SNB43Z,S M12D@8!]OS[9OSS*:[FCF_-.6,O[ASQOT%Z';EW1(G+I1Z_2)F,3MY!4!I2\5 MU-:JK;.^X^@>ASA:2$N/09O;+;&TNV+>\U62;Y#A=(;H=W6Y)6"WCGE9;LA2 M%;L"=NN:%TTY%$"/;CF >V9,NG;+D[:D"Z"'70Y6R^4!7^7;(-YC6U$C,R2H8-AHG&2"JJ0P_B4&Q8JD)2&E2M( 0[D M0ZT;5]S_II/+1$-W!:-*8J.P[5W!I>^^TFN MS86>!UO\Q(>>E:%G<\>EO3#S;O03%8M]E#P'DVL1X/MS:J_3AT>:5W:U>E,;/J^]@-VB V%1L^_P?4;1R M@6+A)LQ)6VIC.29]K7)U@6@BS@;<8?HPY3L!C!]@+ZN<7/)=!L6W2OM7_&-G!:4DX7^&16RC( _&4]5A[!Z*>$V#9F/1M!X>Y5T= M1>'K*"U6TWLGPLX='@K M9<>HKU6NOC%\.[E@:33C ,LDI;R18RDMC;A.?+*++-D%J((-W?=[U(DN-J,@ M/8V.^2C(PK*;#(#JH*VY4IJ@AE0,+^;*[%Y M,VRJ>1Y<">(;RE%MGSH8MYY?>V*&FZ$C" S2SRZ!! ML@+'YQ25LC.*)8(A^ M=0FB>EYR,&:?7<*L7NP*KG0ZI9ZKG&1P2)Q2Q.5Y W! G%*X:\<0X+@YI8Q7 MB"_9RXW,Z\=\#**5,27\PJFP,TVO2E,-8:L,CIZ&QM,=M<_5Y3<""?<)C3U) M:'P(IWB?P4Z84E(PW)PUUBK M?015%D%5B\W08R(^<.H#ISYPNHN$9#LC=54ARY;13T&,N<5;T2B2]+9E#RD? MWXXI)'DDR I2DNL-H)X80-?B'9T1!K-W-*TM4\X8QK=S+ ZI)L\Y:=<1>HIB MCN<-2C-QW1.0J\HC>8/.&W1]IO/X##K9MN-M.6_+>5O.VW+>EM/;$ M!@(50".V;.5^"IB([3Z)V&X0[@1W\\L#*QJ_9H/:LHFK4-6.J6Q&"6UVE=$5NJJ'5 ME,)IV3OPLZ@>P8$N.TSW0>GW&J7[2]/>KM46^/>GO4VZ,F%I:91F39>OHU M_X<%<[041%4SG=2#V+*;(%2T8S2IGPRRF"#$>W.I=^;2*GF$S^FB)L\CIK-S M_&1ZVM)L&&\Z>=.ISW0>G^FD6;V]W>3M)F\W>;O)VTTF=E,5IGS!?ZD:=U*.8SZC11':).3TYLNU(?O5A_1^ N\GZ#.=Q^3>#=!-Y-8.(FJ*DEY6VD3" MZAHMEOUX)R>!H(Q_IOD36$ F0;$#HKSG-5<@6V388M;Z(=/MK)Y6B;=I#CSPZ WG?8$]_AZJZB2[[< M7G"AI@F*S]8O]73Y9?-&1Q0CF/>L@1$[\: QH<_M"/[MY)Z+^^E2_/<2A9P2 MJ..LPDC>7^;]97VF\_C\9:WO@][EYEUNWN7F76[>Y0:W[BMK5JX(C1ZJQM1O MVWZ0#T&"TW60BL/(@CFF1=&:BBX-^(C6O!.F)+7D:("3 ?,9F++ES?^>F/\[ M;M.].V=/$9?H43(^C^(L%7/@=CG*(H9D'*2<]0;&BY M-?$H6R9=<[36LO56%V^S>QSB:"&DA@O1;3K%M$B#N,&S)TS+K#JSG@V<6CDC M27XC^!]1.EV[)N[Q$T>UU.I4-(7425O MW2A1EQE?'M*,YN]DPB4+7_PKB^9"_.1O%-RI 0*_\CGP2"ZC!"5AA.+-$G]> M2/KC:T'?I=*L9P.DWE$RSD+QK@ 8:ALW0-"WA.*0\!7CWWERURICD'U+0DPY M!D*D[@B+\NA3&8TF_:M)I?? 5+-#&4UW;%#^:4L9__#G#7J)9MFL5/JDO[=/ M592HJ2K[O76J[E'RC$O>7^EO=JB1(E3RJU6?QBB.R0^^G.)+0L])]I1.LGB] MO=]1/(NR&5MO[MOM7N;XJCA: RM-%=Y/42QH?9ABG%Z+1PJ3X5!LH,T[I[UT M%85WL$K_U6R.(BKVR.*X_'6TP.,B5_F_<#SF\O.-R5R6H+X=R=1.3C^:<45% MP'R'$Q2+O&LN^E=)BKDUD:[*K,DX-!NE(UZ_9F+9NIULKBI[P,_BK<@FD+1] M1_2O+);5?=DW7)FD7*MD#]E\'AX>3:7X8&)I/@X>FE1 6&+^? MG<&O9O 6C-@O@T>L=DH:&*M?!X^5<1#='%RSPJ3L:?<_?U.H*^-)$5V#71C.OOQ*:DF3]QN00JMH=5W[UZ_=SCU%\ MD<_#]2*7?UWZ?F$]?0IS"4$^A=FG,#N5PDPQNIULEX"UHV"/5%WSCI*@\H5J M;9#RU57<&Z7(N-,U[YQV97:=OH/=!-!7F\BJ"K>$]-*V/F'3)VSZY$:?W.B3 M&WURH[O)C3Z!SPPOK8Y&S#4B5[#Q>6K-)F&IW8.N0*.7&IA=Y H>D!6FBK=V MZ/E:QOCH7;&N0%)E=3D>='Q6YS[//JO39W7ZK$Z?U4EJ!=R.*(/3-+YPA"F< M(!_Z$25MULE4L)S>\ZFHX/O$B1L'O+5X=<4=-7.N4-;-^JDXNJUDH%KDU

K^O/XO'9 MSJQ0!U)AG3N*K(Y^(#K6Q%!+VUBEQ=,A6K"8? MT57)L:HLK-T<^:]LE*530A4[9N//&3A>"VYS"$\;WY7RQ:=EV/8?UU?TF'+& MY#IF,@:M0&T^JB/,UD1N>5AK!TH5PGP ^_P]Z47\:?\];:.XQ1*J8K^)\7U1 M2)\WZ?,F?=YD$V[PV*R!H-QZ@PW'H*4]PH=#X,ET1#- 64M64](EB/E', M@IK1NWR6UGT01YA.UJ;3_0A3T%IWS!]1^IIMKWU[>TIOH:V6+ ,&RIVBA=92 M5,#8NE/0L-M,%<^&@"[%KWI&\;C2? M>#DL3)YX"^W3''GL\%F/Y!3+WSRDGZ_O5D)0'S*$_=6ZOO*0CZ#["+J/H/L+ M!GO@H_47YI4&1LVT0%?@L1'5&'P8T$*D35R1-&*NK:Z92?/+P'%"Q(O MHN0YX&/B@$R"L+AHJ9ZSQWQ@6TZ?JI35<,.Z57Z3U1-K=*\OIE)?8!]KU57=>/Y,KC>4R6$[C;I 94 V=4U M[YSV];N_YZOY>48WJ14&_,B&Z-$;NA8[/E57\@=VZYR753VW4T(I^<'!/D-S M_HOT=@B3(7KTQNZQ )W35H=/^2 =<7J_UECWWH?J^!^HC_?'>W^\]\=[?WQU M=XA"1R$FFJTK>&@U-U)5=W %(4 -4E#OGRO V CY#?8LEP_Y23.?ZW@#CBCZUX2[ZPC/(JG\LT=XC*B> M2^H(#P=I A&68^J_YO^P8(Z68H>I&4@'CF8K>FY$3JV0^3E^2J\2QB4KWZPQ MG46)O.H7I$NCYR(&']&_B?@D9"&98^'=NRO>IX)4??/C2C-X( G' R7?XI0B M1K)DO(5(#B.\ET\[\&D'1Y9V\'K]5F L;]@AO;L*?K[\B&.=HL82>I8%C^ # M=!1X?$V@MOBJKGF'M!Y1,,.0$G:&FKAA$]UY976%;P4-B$QM5!- M[0L$/M%1FDIDYG<]PM1&?9#IB!(8JV0='6%"HU%4]0CS%ZNG ;2W5_46+$#( MV'+"Y^<@2G@C'*3HI7:5;-A@MM(]3:BIE>W9Q\0_GU77?FX+ERV61N$9R9*4 MJN.NRK96J;Z83' HKLZ[RB?'(WH1:[6HW9\(RZI8>]-+S%?>0B S3M3R56,) MCPV,W%G.SXJ&U8TPRNP9=>..Z58F,NB:=TS[_M6/6NK+;\/LE'Y#_#O.,LS5 MD03%]WB!DVQ]-NY+-3TE.^/HQ/B-\!XV> MLCS^R@5-W+:ZO6=5YEF&].WL]&*YM,H#*)D0N@L'Z"N=66+'FM& MF5V&G+/E9*1FPFEW.[E!?Q%ZMH:ME+32EHT6IWO8OL+- T:GHV1\IJA,!NSC M[=[V[5Y&TQU+@W_:4L8__/E:)H(:V("&UNM^+;[JI^SU?R4YR$TQFBW]75WX#=.N9EN2%+57L/V*UK7C25 MC ]NN5@FY!^ F5AITM'?J0#DK15BP ]['*P6B /Z%(N4L!>WJ?G?7K>I^=] M>N;,:[1-8J3H#1T,DSV<5-AJ',:G7%53@:1455U!"E#M *HONN(Z-YU<)AJ0 M*QA5$AN%M>0*+E46'IB=[WZ.'L2O-'0YT6LS%=RE[NV'6QE&1^V+2^0 M 0MX'&$\UL1)9B\,N_FKB PB-@TF,?FQX4 ?.-6-8"'4"2.A5G#R*@DI1J(" M1?'O57)'\1Q%XU5E"KX7W*93KG5F5(C+B#&;4ZC^+\HM[5 ,+) 0_>90MH/QI>"@7 MQ;$.=X05XQU M9+P*4.PN<$)(N-J74:Q959L:UO(Y :X\A<5!*/YWC'.M.1F/9H2FT;_S[R7\ MFG2URM,7KE:(/>PV>>"">3MY59QQ4YE1PA6LM5R\M7]NBM7)*%KZ^,S9FG;-4@^]X#U?^3IV5@(PAR5].USQ]H@3 M&VO"GVPBDSM]^C/'MM94;IIKU OC_EUS)WP/VZ4-_J[V.W8G>47%4-U&6]K* M*J7\N676>HG6*6$"/D!'*CN<0,TLJCY0'_C=VA05WVC) /UZHR4$5GNC@('Z MP&^)1\V,SY(!^O5&S=V3U0>RS>_67RIGY;"-52I7Y=+9(QF%W'JE6'I5@80% M^ !=;=2>NRHL73,.(22M4@/M9Y>8> MSU<$:7X"L>5?B]C!%%)]R575\1F8BTJ9RDJD;^^1Y"+VWD[5K5;=S M0+JX< "@!3KYXG#%6(;'LJ,Y94WLTIC-YW&.$XK7;_>B^$(K%P9=W3EX830K M_(D+]T]<:%ZPKZ+2CW2\CI XY),T9Y.Y@E8-' C(+'1N@BG%JOU,)%<$KU6D MB)G!XHJ,VL+4/%.BA3,AGPN$$[Z[IZNVS@%=+9+9PBF+8P"[8J:,<\>=E!M< MQ:AM"[O6:Y%\M'^XP1P*)8Z [)D6]JDN)W;# &KC[*UO0L,70E5>B6/;2B7D M&CRHTMY!P X.>K6T%DJ2(\'0#>&ZW^:ATV0K@M'[^?C0,TJ%! /YBS&0)$7Q M@("LGLOAW(GP*EY'<&Y/ZVJT79FK <<.J#42.EQQ_#0$9-6LD?9,X X6PF:P MK)ZOZ%R!B"HK(CA_U15W> T<9#-8GQ_EF#^A&0S!Z5G'L.H98E<][[X]/7"P M8'9[=KF];6B>D\:W!YH>W6NI62"A/<='\5(NDD$NV5U64VCOE?1173-//'1% M03/BO.RJ9\G!=5=,T.KX*,X;MN>J[./D:K;@ABL3KS%47N5"RG*_MZA9N>;K M[!ALR$]E#K(/^S M 5 .(88:G.W-1%>0-#/TG,JH:%,RS:POYS8,Y3+9F,G6WCJYP/2)V)[?3>!2 M K.9PZ,]470)TRJFMU-K9[NRVM+J.83,M(:!!;I6^A143; PO L4UG3CN,MNZ0 RJJ+MWRL#FT*&J!G"%*EQ-"?R ZECGJ*XS0,8?B<#J8 MF=W&W=)M6@49/D#'$><-@?R/,_Z9*V)5Y$[=NX^8B:IBHJ(!UW'!5S@U/;R/ M#_OX<&OQ8:B]X8/#/CCL@\,^.*R)>NCM*E=P 7&L0@AJIKDRI6H#UKBZV5[, M8GC(:BVW]N(0 P-+XJEK[\#ZP/!IQ-II[UAS!ZDMM2$%.XY<.;#:THI6[JD! M@V9<1V]@H)7X6L'8_#J@Z'-E@$I"'?9BRYN_K]%\@FG +2Y0C6AL% M42@A7=FV4ZK/HSA+I9=2:EI;I?P+Y;8LUU;DIZ%V6G04-=Y>VR#*U)6E')UB MKC#@G0)NBN M:3V\LWL=45Z\\H*F%4'R/ U=\W[?[=S5G=LD(6NWW"O@9#3KVENE_O8U*0JL M2UIVA/@]7N DP^N%<;_X^<7+JCJ:4,#Y_X0N+N&IQDAV(Y8X7\&_\*6$HECX M1,:S*(G$FIA&"XW F77VD6,'[A+^ T?/4Z[0C1;\E3_CK]GL"=/;R4K-RU4^ M=INEW+)*A'A+&*DX2A\X/2!.I<57&L.=3 "HRN7#^3Z<[\/Y/IPO">?7UJ6< M$QPE7%"OEU.'Y�*/P]KD24@:6+*VCN[<64>RLO ,NTO=AP'^4&YL=Q)? + MO+4%YG9I+[#;V^ECT=7<7FBXCR('\@2#(?GLC, IO;9P+= )K1D0080CXH1B M7,,; T>JY]F9U62G-(H+Q\0)E;F6S])>8DY^R.9C$.W<7;W[=[7*#N#Q;)5O M,"2HG1H-8") A1@,6?+5%GJ2E;3)P+X4!O04CW//BS0.KFK<#=VY4T1';]ZH ML_R.%1&J_()MDZZIO$<_;OC,IA$Z6 % ;;NA^G<49_GJO,Z/UY%^T.'@3DC; M+/Q!Z/>K)+_V4R_0I8U]B-H?;JYSN!F^A_N0IP]Y^I"G#WE*'7Q:!<$YT8 ! MHMBW73E!:XB(PI1H+ZC96Q>PVF)I(8;9Y27OAI#H5?863[KV7F Z/4^7JX\_ M!;&XF%Q4Q6&5J["J!['EH(-0T8Y73OUDD"L.0KSWO_7$_[:M7"+>V?H,OZS4 MJ:1U1SXC"36K^PW,6-CKU <^1.B^"BN'_3KD9B_N(^Y4)EF2WO,5XP[3$,H< M?)C^\'J/Q4JS_O$1T]E)%5X5PWB'FW>XU7&X:79J[V7S7C;O9?->-EUZ+T"3 MU)E+',:S:O MZU@&\Q@E+$!)DJ$X^C?_]<>*DP 5K 0+%&<'Z0[ MCUO?.&['N]Q/Z0Z[V6[7LM M&4UW['K^:4L9__#G#7J)9MGL!HO,X3VZI+^W3Q7?DY54E?W>.E7W*'G&)>^O M]#<[U$@1*OG5KI^HM,+TB%)!EUB+3I?;)G=HF==@$"5(+_ER(6*">+1=5,2) MHI O0^?1(AKS!5QH(#+7DZWG#A_-WTG,AQ$&@FT\RY\\7$3O(_;]DF*\/@AH M"T_5!YFW!R!?>4-0-YV9%1,9[=D?^XSEG;0-!T]C6H\(^TD]Z'I],YJ,J MBM+^ WV\Q<=;ZL1;>F3/^-B.^[&=G MV"+.35Y[(@MQ\1Q7_-FR M1_*X M:=NGPLQ[M_#E!Q)UR BPI;[/"+:H'I"B/;BB!7)JV=4&\%%J!3%WP\H!A1B+ I&GN7O'?)UW')5]G.O._CU^+?^8%H:\_S%": MT9S6BLZ/:H/;\G_4H:Z6"^2:),_"-7Z.G]*;S8/N\;QPHK';R1V-DC":HUAR MN6O582K6;#1UY51#%N3-J?/2O$.G)PZ=7,% MOB%).I79V8V,V5\4_HD1??Q!FF!^;RCO-O%NDSINDXK[AO><>,^)]YQXSXG$ MSFMP.W=.A)H#KE05:,'MTM_2GHW9>T?HBU%9$I:=+2?:5],17HKS7;\_$*VT;=',:L)26T1/+[_,VH7^_3Z=<[-V,IZ%_U;HG;V!% MC>$[D/2RRLFK>SXE=)>V\5XC^UZCQNDLO8E1=@_C:/Q7QM*9/#NKXF@=S>&* MMU!">):/TI&_O=)]K3!.R\> O=-A^2]L*XO>0>H=I-Y!ZAVD)K>2E^N2K@ # M8UEVB[VM:.@UV'G3$TM;;S]A+SA@$>R!O@W,)LM!PIC5M7%R09TWY) M@H'C%Z7FX3,WP)V*9#4GA5";OKVS[$.10Z"SUG*(<'O##9I'Z:JV&EG7CE__ M6/>J0(.Q[=\@:$QC!.?[F59W)7&Z4_G'[C2E%QY0H> M7[R(N\5',_&I"K^RL2H>MJG->",WI/H(JL^[;_;&1A-=QT>5?%3)1Y5\5$F6 MTEM'_7!.:)J#ZE K/:[B!O7L%:<\DLT"9L'[V-_#&\T:$6#H/KDP(T'6B647 M[>=U_E2*7KCNRK+9#-&EN.@BG(K:J(S_SC7: GG12%QZ@=.*3MN&GF;+C=LH MN;4KASRBEY%X!+N83'"8WDYV?K@H*J:5>6\-NE?+#37U1S>$+,A#W>A; M]#[KGOBL#T3Z"Y7GTY^>&-]%/OUV^SDMWIK$GI*T[B@=;$/-_2O) ME! Y2B\QWRA1+#:@C).WW/9'TMO;6WE&'U#*BV-O\]AEUCZP=T?GT"74Y2K& MB"LVG(IXTT9Z44W%4;Q[QKMG&G3/M+[Q>C>.=^-X-TXOW#A]C&FWJ.DX)U)5 M@(2I$XX=Q*R%F$[)/,+,)J !9MD==G(2B/?&/]/\"2R/,7&P.64T8M\#%CTG MT20*D<" OT[. V5Y39]G3)XIFD^CD*LR7+.9%3J.I /_GRCZ(YZ$GK%X2OZF MN(:TP$E6^01B;^FW5M"TWP#4AZ1K$2 MXM2-6J?O*YKAV\DK DI?*JBM56_2V>Z4N^?3C.L]X72&Z/=2!DR[=K8KL1G3R66B.[J"D5QL()Z)H:.@WY/T MSF#G"@^8+" *?\/09:/.%@0PXX8N-H93IS24T5ZTMI<8E$94AHZ!S?0BXPJ_ M?8' IQ>!]A.IUW3PR0LKST?PM-QI@>(@=SJ)!GW)4C E=+CI"-4XA>4=E,8O M\YHY=%DX,U5W22+ZV;?O4KB5XEP9)>H2V MK<\[\'D'/N_ YQWXO(-7G&R72S->P/U\%H7/HO!9%!UHVSY=XCC2)?2:+S%2 MZ(>.B<^:\%D3/NC95PEJ,NC9@ MZF*;![Z9C'=*?VL94+>W37TVRV)Q[]LYYHMS6%2UXG_'.-]ZD_%H1F@:_3O_ MGB]PU/^V\6_LF@^4S+;R/!=W0<]&H\C01B*[U TODK.BIMX9=RJ M6]NE/"](+R,T_[&CBLC%PS639+=-'^@O?;VLT60&S*9X[X1\R> M!8JQV++2,T3I,DJ>?T=Q)@NC&O6UG,4QFT5%@3U!($G$O88X"2-IO61 #^L< MB/J*)/RN? 629K9S9G(!_B-*IVL7S^;^2/7$->G:'YZ^[R3M8I?\RHTF49E34';V,7L1?RMOUM.TM5W=?\!=/Z%*.=UD3 MJS3F%\!.23R^FLTI6>3VLQ)B?0>[]&]U91G!VQ8=:0L[%'"YS!=P 2"F3&RE MVVMWY827=NN>&_5Z?]BP-Q1K5#9]![OTD^3Y$=/95Y+BM6DNHUS1U"K--RB< M1@FFRUU33;6NZ#M8I3\',*]VC1*8[P30PRH'DCN^U4S .O6!#ZU>!N[7(3?W MT?,TO9U\8SC7LT"<2/I8Y>*.XCF*QJLBWFNG)\1Z-^AIF2.)>TFS58#[]8,; MU0JL[M31WBTE2JY3J[ITQ,6]R(E.\/@"6:O?)^3*)1>6 ;OZ$\*0.B] MG5Q&"4K"",5WA.4>65=[ Z5T+*S/_> MPG[_N< KX?9NNFK;;\1:2R%N3U7H\8PU.;0"!NCGHYNM)5$F,%J_."1.%:+7 M8)Q^=1 G:.HE&*3/KDZ]\B,*KFA9,%L&FJ+FBA$#X'<''7 NEBOFBQD\D&-^ MKDPG8V0@)_!<\3N:@6-^@,,5IZ093B9)E$XY)'MV=E]%E\]#G5TR*1E:@VB -P:2HO A5#XXXI3N#3\>ZH@3!#"YHCI\K!A> WSVA MD9]-=L7*,L,$5/+!%3/+#!K3M/86EIHN@QUF8 &R=-NSLSK8P,W0T6>-.V5B MF8%C>H1X"U7;->4V?^4W$K =R@+\ZI" OLP<>"@+E><,::EP05^#I8J4UY* M^E@NN/07M_IR81F1\ MCT/RG.2CJ Y)V'IL5R5GU%<%R=I9I;98K 2T).'O07E%D[*MW2/D."UB>=?R M,Y>E;3H]FJ@4!W5CNX>TQ)1CMUG*E]QDS(F1D'S0+OAI8/1^ZH;>]4ZV-Z&8 MXI(Z4!]_4!5V4+7"*42#OOZHJNS@YQ5C&3=#,\KG7K%C%U,R__%VGM^B=?&" M:1CQ[5[*2]6!^L!OKI8TP*Y^G,$<1.YHSZA!<3>[QBM?1:$\*A4*;7NG3R&; M>CK%DR8%]9&BFAJ.SH!"J7K7#+MR4C?D=%:'L[M2TH\[/K> MG=O6]+)6PT?AW"97!2VHBZ.]&'0?P5)$-=I+Z2V6]HO$>BY'M2WO4T592&IH6EB:UW!]SC%_,OWA;!6^7'D'XB.7ZMX>>VV3!';:.TY0T7K#RP._^/Q:($I>L9K5?F.8726%.=(:B@=/"I+/@P3MDM )SFLVM0U:R9.&"MH7WC#= M<*&Z0Z"%)P4?!HG9CJUWE:0T2KB6K4HS;?UY0T6OU3WVX#E=9@<.$J^.LA.; MXZ,#K03X].'+8H^Q[:G<,IA"N]4IVH"X%2*&AO.!RML-TI7(&!;6)9IR%UA7 M)&-86+]6L+N V9P"^P@?A),/]Y\GO6$*]!B3]5Y,_?U,EM ;KFAI5 ;B-.>"0' M%/P]:;(0(X$%]US!0)_W*P_$NI+[+).#"LD6KD!BXPK!H:3T^HSX2NF!;88Q MCC>COAM7?7MS.L6481>1!H1^CRQ!ORM/6PN9_:^K[3WV5H;KVXW'E>G?92BI MA:,$0Q%3"ZE)[1U(<%*.:P6/P%C#BY0?B21#,A/!Z!I7-W=2DFN%G.%V1D43 MKJ_GF-K.JX(#6]&"XR< ?'^SA,NV:2?>&HNG%&N]T# M-W TC\.T:^/H#1SCGE_Y9&?=K9VB L?;'3//0JX5Y-#ZZA?Q'_$X_LW_!U!+ M P04 " !@:6Y89"GOG=D* 0 LSPL % &-PS7_Z?\VD6G:JRTD7^KW\. M-K?^&:D\*5*=C__US_WC@\/#?_Z?5W][.:GA,7@TK_ZU,:GKV=ZC1V=G9YMG M.YM%.7XT>/[\^:-S?&:#']HKU2AX\'Q89O3H]M;6DT?PK7D0OTBU?39\CK\T MC^:Q3JKPR4HEF^/B]!%]!;_9WO''U4NGL/-(YU4=YXFRSU=IU\K@V<&C__O^ MY^-DHJ:Q>5B?UWUX=? #,Q6=9SI7__?UT<^/ZC+.JU%13N,:=A?&&CSN;SWK M[PSL2^'1S\LW%+_U7MF]FHO>M[W5W]KN#[;-($W5K^).LRGK9K^Q7'3]KZE*-EQ[ \T?PO5O;LN<&.][ZO%641;9D%?1-URKJ M6=E-._A-0#H+AQ)2#GX]C"M+.;HJ=K<'3R^B-7XB(/FZD^0?,\G7CBKUY539 M;]-R/6GR5)5I,57!KX_>_/A.P_3'U6923+V#NMHQG7?>_4OFDBK=O>WP1;#K MR:R:!./'6:43G"@]-MC>V;+,9'-NTDD>%"=)Y/N)_&;=EP2^"A].Z M;-WU@"+@ZT?XM;"607][L/'J;]'+B8I3^&_TLM9UIE[A4?*9;3__SV#K\R9( MAI>/^#M\ZO_K]Z,?5:[*N%9I-)Q')TRP;X!@HT]%6<=9U(]V'L'MAV%VHYV] M[:=[6\^B3^^C?I]&F*HZCG"&??5'HT__M7%0Y+7*Z_X)S&XC2OA?_]JHU7G] MB.32HU7V$ M\C3]#^XJ[OO6@/\<;/?Q6N0QWG2X47MO<]CF^0$LOHRS0]C4\W^K^4:D@5@\ MKM#O?NS5%OR_9X/=)T^?O'P43.-FIG6DQKI"(55_@&^6S:KUU*N#3\?1R=N# MGSY\_/GCCX=OCZ.#CT>?'KUY^^B&Y[@_57D*_ZO?9?%X(V(Y^J\-$+Q[(WVN M4B"*K))9Z_/3_N,G\/M7].$-S^2 N$[]3E=)G/VOBLNW>?H&[DKP;KAY??[I M#;_]39$T4_OZ3S!$D;Z#SZK@]=L;K][][ZV^&1>^^-Z=C5?XXQM\,S#,O:,F M4X.MX>/!?EGNI\4,^!)3 ;XY&6P]VWW^9/#\\7*JN'$ZP%E]*/*K3&SGR?8W MGI@_JY-RFM==D]KYOKNU=%Z[7SJO=V6;U]U[X +'4_B4G7-LLB/ZR+Y_"DN/Y;'-:H4O\99H]Q/ MW&S]<\^;:3\MZGZJ$CV-P7"5/T#U.?SP#F3AYM;@FLO9N>IFWX_E7(VR+UL( M?5_M-_6D*$'-2K]T =M;/=!.\'_77,;5KL"=7\:3&SR-PZIJOGP)@]W>DZU! M;_?9TVLNX>D-GL17+V'WR18LXLX_'@>6][\/B: MZWA^@T=Q,^O8?0SG\?2:M^+)UI>?QTFIXJHIY[02612MYTL7\6R[M_UT^YH+ M&'SY0=SX @; EP;7NA&/GS]I7>JEBMI%RL9AGN!:U!O%_SW,]Y,$%(KT9QT/ M=:9K_>6+VGZ\V]M^MESV=6F;'AEM_>=36CU' M;\/^N:[Z\$S:T+CVV_=J.E1E>Z5+!_NE4J,F^UF/5*"N;@^>!"H<. MQM'&J\?74:']NW&E1;UK2CBSIE3P_JM;C_',6@$]*S[W6NI\WTIA;] M_()%7\OVN]U%Q^O M5:Y&NJY^R1-82*QS^.Q346E\W9=-OM6M/ MNQ3W2W?M0U'6,*"L>F')QW\T("'?%47=)I)]D#P?1V[-9G/M:G>N1>@[SZXE M<8BPM_I;0-L[_I_[9W&9VL-\.YUEQ5PIDO@?9SBJ(04@ 727TF,G$X5#(#G4 MID-V'( MT)X]N8"A#:[OMOR*[?D1W6_H_ MOZH*KR/O[J"UO4]O2EYLM8W+)6QVN;RW]^N(W-0WM 7O8EV2\V,?C+TIG6=U MI*O/[TH%*F*M0-6M^85R1?O;5[ZCNW!%-W=WKL62MMKFWQ7V*501[N4^[6YN M[UYOGY[M=NS3 #=G^\FUG6)?O"W, 2JZ^]6AL*C?E!Y/:I7NGX*H&ROZ$F,K M=@^_5+KM; ZN9V3@I@R>][>>(\5X?QZ4*M6UD6!$14?JM,A.@1&$WPE_^EGG MZN.HXV?OXZJ*DTE3J;JN7C<5/%=5;]2IR@I2$PZ*?7RU2P;2/Z$ )HZ Y/YZ#AIK,IG&Y6=: M/MB0&#BOCD!STJ?Q,#,,O>.75H8<-%5=P"P7GI'?OH]_+TKSD(@2#2HS6 I M2>Z+U^@UOUSC,II5..P7T^ " =('?FBY5".%*0VJ@G]C*LM>18D;,+V($H[V M)I2[A;/KF\2+S?,*SIN_QOC_OS8J#3)2452]/2C]NRJ:DO])B5A[)7$C=X MY69H?N>^L]-,W:,2B V_,?\V+WD4[(7=&Z0.VABTQ\SH4_+MJ%>2.[0'WYG? MFZ_,O_'WG1LM&O/6T_[6]AW874X-JE^Y2=F!Y)OK;AC+B_:6R7F1*^S+]FQ7 MTN;NU)[)I+YVSSZ [)S-,F!7P! 7]LY+Q]C3M9I^*X\U5K])FMU3C-6U)]"O-ZY3U*&DM<%^47\N6%W^.' M;U1>D#*U..Q5>5^6-U#V@7V7_,\47G:.S%R+=SI*-7Q+R?S. M@+IH&1NO.N)Z/-;+1YVOL/MH9W*]^RN[>U,\ZFJ'M9^FY+>.LT^Q3@_S@WBF MZSA;B8.[<&VK=(A'"J,0*GT;ESEFL:_$Z74O:I6.K2-.O1(GMW1=]^KP[H#8 MOY4U+M%RUG+B]N7$]U?CONSPUQK=7^"0U]+H+WCH:\WQGAZW7G/OV[;';]AG MN-:SOH<]_ET.<M^ET.<2U*[^6QK47BG3P\XVAX'6<( M]G<\4:K^N4BX,J,[]Q[K:>N)*@_SI)BJNWV(RY:U0=!V>U=;W)WT.MCTQ_^E MR@SYU&08-G6Y][_FIU^4\ON5U?)WE!ZNL"@AC:5+NQ_W^MO ]S[4[YTZ4M/ M^]+)5&6]9_=MXQ7^,]B\6Z6CFTX7$^04WI;VI=U*>NL(T!S/1I6-5?XSJ6Z+A M3OR+^TF 74NYD\=^%<_O53C'?3J[JU_=VS[&[^_X79:3MC[S;W+FWR\Q[8NX M\7TSBVZ22]]M\^?&?9M?3!?WP=GFW9J9-T*E?:;TKC6IW1']9\@;+P^I3L4$KZ2]VI]8/?43V5=T@0 MVN6,QB^N[8R^+D+L'2.);^EFN"/^R6O U-Z#P[HMV_^.'%:',WE]LRX^K#M5 MC;Z^6??HL-;*S2J<;F &+LU+/5*5*D_5NZ+\5&"+8!UG#)Q]QQ/"+\E(O6Q9 M]\,\W.IO/<8+^3T1T._H^2^NS:\"N&!OOMX-N&QSA?2NO<6WYE BXKDYAQ(, MMW63M'A4))_A$JO#4-KVGX7GE4*)OBBKG, MQT5>5$F<_Y+595P539Z^UTD)'\%/[S8-7CVS^?(UWIY]NW.#05[.DAGX1QPV M?)-0@UG;AZ)6G^*YZZ)V5X]R<17F-B]?RZW=6]GEJ]S;UOE^I>RY:XT%[RBQ MK&7/I31LR.<*--Q^]*9DSYHQW6U9TF&K,1#&27R^W]23HC2,XPU\6-4Z.4#\ MC-+PF<6';3B.VM?F<0:74>6-.E;EJ4[4X='QW3[K[N4[WM*Y#U_/4Y9OI'OU M)3NZ@F;8E_2./8XS53]07; M[D'07;S_7SX+SHIH'Y[P[M81KN#MZ7)BK&_/^O;;V^/??] M]KQ>RY[U[5G?GCMZ>]:R9^GM.5C?GOM^>P[6LF=]>]:WYX[>GOLE>Q9AE6_G M AWK<0[$G<1Y[;YXO9^G*W.CENWD2E^JRXYU!674M]'P?E3%N(QG$PQ7=%\R M"WKO'HTS^NTOQ_?_-GU/^73IWG_=95IZ<'"G.#2U]\OQ"EZRI]T'^P>)QK4?3-1='Z3JV(:/K&-^K6Y=3+1_I\KU15T92)JN""X;\G M*DYI]JD^?17]+8I>XA_PW^@?_S5XLO4"/PF_>SF+JGJ> ;6.8.#^*)[J;+YW M OM:11_467143./\!7U7Z3_5WF!K5O,_3^-2QWF]EQ?E-,Y>X*3Z<:;'^1X> MK"I? .&-=;Z'/]AXQ>]_^6@&K_Y6[WPY?/7+A\.3MV^BXY/]D[=@ @_AL_+1 MJPB^.7Y[\,O1X;$;;6X]WGU^TF'^V5O//JRSGFAOV+=YQ*X?R[N/1^^@ED&M> MY!\:8 8ZB?(8.6:J]-Z;(J&"!.0=&Y&0^Y$:+57#-KA X_RT_V3[Z6#CU6"K M_V^Z#6[X5W26*[>7#]X#;X\^YNJAD/5E>[J?YPUFVL^*LMZ(1OB2&K<.YJ&2 MO6%19,,XRXIZ6)Q??^NW<1.>/]U]\F)A]X>O(GYUQ.^./C5EU M'>D*N'TT5W$9 0]5Z>7;\8E8ZUMFN,%^[*7P27\*.S#!G_73>-['D?LJO_[& M[&R\,LW*HIVM7H2/+6X1'F!17O$@3\H8Y![)SMLYS%TYS-W.PW2OO_D#[=D3 MK=U;6 A&H[*8PAN^]TV^G]P"NSKK"K4EN"N9BO(&*7)O.;&])67G'3S[@1Z] M/A4]!F6W#RM]]FR1(:_:]L*]./AT')V\/?CIP\>?/_Z(FL7!QZ-/FY%3)!Z\ M/8^!VK$("DG^2(UUA51>1W$5'<]4@C9 &ND\TG45'4Q :53EP^^]5S?\CAKC M_]&P*$%5_=<&$$RBLFP6IRFH6/;?U2Q.S+^O?WQG.JTG\.?6#S*/?J9&]5[< MU(7YH-3CB7P"9P=,,@6UO@;=N4[-"T]56:,%(8=>%S,S\/;F[@_PL^@;TM8E MMQ0K[6P!+ME!8N<<%*E:E X5/C$KBU,I)ND@ F\4!3.G9\MQG.L_Z=],^R\?U>E]/9B3^/Q0K'M&R?Q2 M7OH4>.EN?_O9SO;CK><7[/GAYM'F\68DS5=$H0BG$'TH-OV=?01T_[?K$K^Y MT]<\&O]G7_3>.W2V^VD*%G@E_\$"^L'US_496"R#071<-/4D^JU :QZF$AW7 MI5+U\G.^\NP.X,^/Y4EQ]@6W_/G&*VZ;UIY'[S*M05Y.#.!C^0DXCB:1\1%)\]52XI<> UVB_5/&7 M;3S8QH^W%I3@_M*W(:1R]FE2Y%^J>C\#HW-[>[N_]62P>UUGR"TX*IRF^X__ M>K8]>/JBBFJ5J1FN4 R1'JB]2=:@%AB!5A'#B@T!KA21>29P2;NB2E#Y9UWV M\_:#H;66ROIERKI4YVFF9*QGVT.;I:-A]P"EI^;@>G04Y6('KL7-3GL M7 8JP8MHX]6)KC.R^%2<3*(DBZOJY2/\^:NK"*;;7=-E//$:JRQCNKW'\^FP MR!Z@U%VY-1K3G0Y2&1<67-:SB89/W(U>7/L5M-U@%[9NEWHOD'7"HN:#[2%1 M[O6ESRZ[FV!?J!UE+_K[UN;6()K%970:9TVWS7A=,KGQ#?H*]4!HGTG_^OOU M> .=1S^MW+882C+.7KP^B]X(O$=?Z(AX]@3NY/[QF_W_:>]==!#/-"C+$09) MT)(:+E[&E=9FKZ5HC*^L:-P* 7T /? NQ.CNZ$D';SC,4_3C@'8VCY*)2CY' MF.(1:3Z^TOF4=17%T1GH:?W/.9C_4:7B"O8YA2^J!A7NN(I2-=(YNYR/&M!1 M=K<>=\1J@"8V(XD'1?\+'TB@[S(OP&_P\G_CNX_EU8?TYNO?\J?HB%B!&,(7 M'V1>U/#)'XW&.PQ7ER(X)<7>JNX[3<$W^R\_"/>EI_EKD35Y'9<4$BJKZY_B ML[_0*9Y-%/F\6T?Y8/ PFL"]P_-+HSC+["'ZISM4\@",^>71U"B%;T$?QT=G MI4H4:>>#[8CBVE7T ,;#6&O5@.9:30H,-IE(:PVCM>=^%E>+-$@_EC4\!):2 MI]&#;5[C$ 0Z?#_\'5: SW.4/L-)R# 8RJYLO'<65W7T?"M*XWFU>56B/&C* M$D;A,#1J8-2D_/JT^7SC%5R%!27"7),/WS+HG.I3-A+_M?'IQ]?_ML8UZW<1 MF86CO3LYV@@L'1;+D[O^[O__NY.W1 M'ER/,R"%%^*&V ,FB$98L L3Q:O=GIV_@#//"GCLO[;H_\'OXN3SN$1,['[X MU<:CQ9WYZ4WWSN &?^V^G'P\^%GGGZ^S,_:_G007+5!<+Z)/>B#E2SUZ$3D" MC 8>=0BIM!=X]Q@E,A#@'5-=U\!M5 8\I"QRM'FR>:3 _IE'A!P:)^3H?Q/7 MOP;JLT_TC =S+YN7M' MS2W@"43!?_:O\_ 5TNW* QAJ7)3S#E<9/40O2>2A+_":/1^@)=9!JMU"X4GG M0HZ7D=)E=E^8R[;"_.Q'^M6!N64WO"4[RY-Y M[_EE/1Q=P#M1A%[1PX+:)NF8D8X,K!O?E:+C#)D*)N7AP]C@((W+M$+!?JK399[9G0?QPTXV MRWO[UQ'-K<,2_XDP'PS H=R*0=%'G0BW#G81DVAA.O&8="2K8X%I!HR'E!W9 M634:*=*K<\DETJ11<6,"NFYED44%6!W>:3J^1Q%">V:[6[M>W/XX+H)ZI.;EG'@P>1[]L'F,AT=/M)QCD?X@+=ZL41_TP X[ATPV14[N.C1;GO-NQ=%H]OG/,L+R- QZ.A84O) M1M!\*%;$53\"<]SZZ.#$KIORL92%^5?#D:1G#RR8&))>P[[^P!4WRLA!-T%S M!4Q*GDG!G+4LT3E7(,6=ZJ*IP/@6@NMZJW"ER^M7WNG\N)[6;W'X _O26R'! MQZLK_"XF#11%1 4%2#(^2'>^AAH]BB'.8ET5R%J3@OPLP$&S>:69,5+9+G#* M_C!&X8;B3^45L]R2X/W8_K1O[S1SVQF:8'I[?I<21/$IDJR=@@A<_\K@_CY] ML;V[M3G8>M,?P+W9M.JIIWRO^"%WA?RJ"?HWG3$-XSO M7F(.X'1O2_5]1Z$;\^]RD._("0ECM$_R$ZDL[[(BKC-;2#WSK:7]K.SC@IQNO=FR& MJYG9JPCV-,,I,I'6#'7*:F3U&>5SB:GC-CH5 M[%ML]RC#H-50C%D,75W ]:9%13P-."C(4;(<%)G>15/6$U/!^D=#95\1.8YE MAK( SG1I9;;<>X\+ISCCOE43D$JTM<%N%TU-]A*E!M/7[]2PA&V: R>C>MI= M6\:XE#AY1!KPF%[ST8UJJ77+HU9ZRJ?7PP_OKDNQNT"NP)4"BL6"C]W>X\'S MWO;@\2+E\AY<>*A?N^'?0C)^0MM(?)5(NI_(?VT1.H(HMW?%4 C8^X(;&$V5 M(KZ%Y(&'-RFR%/4%U%\N73$9F.^*R\'[@E==->^8 FN#SI7)7C>8^4@ ;YVR-V-RDP^;$R!CZ?-KG4:P*1Q:HLL-Q" MD8("^CP874;-LV8WKA)FF#9)+?QQ2J\'=@M#FCBA!-/U:&[L+= :%7P,TJN8 MSND%XB* P6KG#YAB3^"8K;&JR'.5P4OPLM.S9T69I9L7'^/-:B.W12P?FQ*5 MORDN=>%XT<2:*M2^X*M2G],)@OJ(:O.#]^\/*FN&_H8QNPIN? ^=D,T(!#S& MG7%[*S+0" HK@M_P&+FSPN'<@-#8_PR;33I'+FF63BO(+K5)D3 M4WEJJ +?GI1ZB,;\$$;;O,K>W8\3.G'* IF\N4?ILQA3X_6,75Y"W\49TOH4 M=D&4CS/RO<<9N7C)$<$W4C;II$,;"6Y64[$Y/0%IV*]FBN,#&J_J%"21"1;T MHLE\6(I9(?1$%F_)2-@_ C.S/ZXZI@ZG M5Q4R;WCSI$!Q,N:W3A3X(<4 MTISH6<5Y'=[\\<01JR.AG1ZS_IGH,FFTY<;[<,59]ZU::];!B5YOA+,^AQ&R]E&PR5&?[9Z35 NU/BW(S>M,H$SXRA __Q/@>&8P8 M$L3<5=C14UT6.0M6(CN\+_6D1.K+U*G*@'10*-.X7DZL"37*!;"RQ6@.&!V* M/L2G[JR3$G8(-$T\R#,5S^@.2:0+U@(D.-V,#FM93V36@TN=QI]AG;HF-IDJ M7Y;1;06R+>-130LHR*EXJN :9,HDKI'9S6L#5J+R<3VA_>!W$(6N!"FA]";V M%[,Y03J/R/\*;?M*5\84Q?+D*7!NRZY()V J2.#6 G-Q:AD2GJ3_P2BGZ$ O M/!>1.\6[1*8(_F[B19PFO@KO.GZ%$BQYVZT^5J=SV*"P<01$X0J1&:F M<'38)ST:D6\*IT;4 9_RV7E,%1@/*BC$!X'QLQ!MLICI,?Q9CS=I6EAW/19W M5*Q^QJ7($'%9D7^L/BO0657!P9R2[5Y170K^=XI7TN/SJT!(N!'DB1\UF*WZ M1P.&'P$[>7H@9Y%.O3 )*=#VPE-B5U5[F:]5]/'M^]78H,,=26C9^%L@MQ;4PHI]1D:V('$"J=&DC(+(S#9L(X@#L0NOI!X5790P[@T=/,O("GP <=.RV"7]' M\E02EGRK#8X8)P?:+ KXL8O&.'T&WH1J/]P X"LJF8.L=IX)G#VE(N%OBAF^ M$UW:<\E:KR1C6=Y,BFV4:F3+S*,206BFT,DF6K&R <"R086!_YX".TM)Y26G M*N\$L71B_#GHHB#!)"O*# ?LL*9ZIVLL:B6HB;T)GG'E"0&ZE+[>*I:'JNQF MN_OKX%%PX_ZGT0^(OVF"MQ:'2)XE96/=S,]Z 6QLD$[+2:K^K@ M^;-=I/T#T?GL/AV+7^; [=C]TU[3(.CAW_O R5D..A3-".*!EA$'&%VHRHY MI!&C4 "EHE^ZPQ_YX3MZQ7L2?]M;6T]# M8XPS&EGZ8\2.(5ZOM)NP&]UNW14A0"-RS]00W8NH47H=!9)9Y7BGE3.;<'8K ML?YK0+)\!-EUJC'G=B01<;9U/@G3]9%8_CJ[\M:S&\RNF)U:H1VAM!??N>;\ MJ+SV!.N8YS,I',22+&!4('V!B?W)'ABE2=EE/Z;G^D-U28]SUG/E0V,Q?VH_ M+-X!8H!DXW-F,+GDG9O/OH,SOD4CYT^YDP-S^9I718H!IO.<%AEJ3:RM36>< MQ9(KY0T">H).T'-KBQ=Q5#/?X_9"@@GCX],YO"J-,/X+ZN"8\DOH=?"[8BP[ M$7J';>RJ%RV$JSA002+./YX5BD& 4!L6H$$OT UYO=O[C1&_M \[5\))3YH5I G#9CU"/V5M/-P4;JE>,%9EGTC2E+4!5>);J8K-?!^,+$-X,8UO+2YO M-->D/=ZULTTNR*NX/./$SZSPDQ2"O_T_OV/N27NGKIE]BM \F"SJ9D;MZX2VR M)"2>DY"[FURN>8K%S"B_0-0#5\"**1-8X8"\HI(&=O'0QQ0NE'";$ZD<6A?^ M09R]Q8(,:S*1-Y*XD:F+Q#*C*=A,&!45AUIBNUYY[^5\"UJ@5/IJ#-'!7I!K M&+8'P9,QQK42FOT)^HS1Z")8JKB-/%)""8$2F>@GQ".1A +?K4 MUQR]C)#5()C"IY!NZNB%+%Y7DL6E*=D>MJY$EQG[QL\*$[W0SC?F@KU\ KB' M1#R.YD"@Q^ZBR;CTO]HLGN.U&==%<&N3!06%2 M-JA>]40>>VL? ](_.'G[\,(9N*71\%0Y2G6MV(\&TQ"\NR%$R<&D\)8"U\(G M+-"-_S.I&%QDV>CRGU>T\DK7=?!>"?J@A48UG4DD6H9J5OZK1I#\7AU M4?[A0(7H4#;5K4T+\(PE4.]C70E'SQ33M%DWO@FX/,P;4_*&&,!]<*P/'C(C MX;5C'#]K@&J::?1@/Q.(.RZ6-=OA/[,PX'[&0\IF]MN;N(88DGCFB4Z5P[\K@DY"W7U>%MD<8]V<:H=;EX-NPZLPT>:E)&7J%=T. MT/ZMRJVU*6G6_)FB^+=G+D=13>*99(#"[HSTN"G%]6EK=\D'BKJT1P7<5D^= MQQC;Z=D:<"R(@3=D.D7;L1E2A@.*4I-.V8M4G6Q&;[D,EV=&.="DFF! RD1X M;>J*(4)Q^3&M\ (IF./'?#%S40KC[+*Y-,B\ --8:*'CJITX;I25U%+,)KP?'=$3D,D5YG6UDB1-5+C/ M?R4Q'T+[C) U#<7KZPD'YL:4MX8L2,$Q2=6I;]6+9F[(SF1&87,)RH8C0>6X M)TDBX?/"I$>94A:)4D=,^"13V6)L'4)1; M>Y7(@YX?X?FSZ+93[X@!1.\E99Q#%N[%99-[GA9/PZ341&O/X_I1R>!YUS7V:.#46PH%JCQD MFF#?@5H,ZU999?&5B%3WJS"KFU-SC-,N[;7T)A[(1_UTF;WV,B&H@:;$/Z_* MBE/$85; ;W-$9YMA9P+T.('2*%Y-$KJ2HNU(V#D(?!6-$LEMW=:$,UKD!F5S MOK2&T7*2.EQ92>RNR$5%+H:.V_L3W.M3Q#8,?TZPK?@%FAEZJFL3$7392_0Q M,@LPV'0?6+FG,X;;_GH>8==D:CK4>D^-T*EL[ODV2L_E,X*(F4HF,DP'M_2% M.'?84JS,2%1P%18"]!@0[!P]^UT$]4U82I M-Q'=+YC'T]T767AKUD'&=9!Q'62\6YK/L7&6K+/&S):\+VKT)A<$ M>(A!S'T_M^K!84Z^'&!_/Z([ZK6>%5@B1)45(!_AIP\V#G]\?;+Q,/CAPQ7: MS!.7T67;*1L422F@-X(L$('X )5WCEP=\!1WNZN*E@O%"'2R_3!ZV5&8PHR= MR-25J7%&*2C_JETH@%4>U$Q%-9-:+T\KLQBJ7">[8+79H-3433>Q=.(5]$H5 M=-4,*9=,"N*D=(62F3";&'7CF9AGY,FB$"#Y^KA$MK4CXAKV)3'6-5*I!'D3 MN 8[+35*;AK.@GIN2KI>:/%*I1_YM3#$0<>)]>,,7&,.E8:"OSM?Y#N#':P[ MS]EXT,PC[9B5Q#!I%NA ]>;P8F$_Y-19X_"\$N;M M;[;>A:I49AG%BCH*OVUCQMDR"B"C+?1L^;7L=.L,H;.*N70HEV:*/+ R!]\N M_R:39%2KG.&*Q$*$JX._"K7&"(M'T,\G401_M62">O9DI\NJ J*$?BXB/V6Y">;C(J\37( ,UPDZH*60)PT#2" VT']( M?%I:R;6=2"C83.424PY&J$R@>U'^4+C>*DGH%=4CPONKS3MBJX.9,'Q+3'O2 M/A!\%>5J(8J*+;4(9 #)&NGZ$QOOHI$O)$\Y"N)R2.5AE;.4+8)TKE:"F2L" M85K=1(>SF8AXG(VB22\S>2N\C&DT+J)F1B 2/C6*(YE&MZJ&V?#-2/I'9?,> MWM9';W\-X DJJCX_$[#E"G4"JO)#M'T@Y"FIJ(:+4W _U-EY*$&%I/ AHD1SWH!X$+H MU*)6XN)]'/EP'03]A, 18OM1[@VUL^ H&U^+ S_=I7U)0 +7H#^3O=AYC38I M6D>EWXOQ0?,3"NU3HA4CA;!RB"E@F%2 .H$1$20K,%&H840:(8=4(]I.PKP] MCLCJPRM;UVBR81G76(FYB__?QDZY+I2ZVR[&.>DEDP+'"*?;7N$^ZVX#=3" M.6\Q"#SAI@I;8 (<-92X:)0GB^QAYVE# ?A2(%/1:"Q6PS2F@ )'"[?HSOC MG F4= [DW"?>)EZ9%MSM.C:PC@VL8P-WS!'^$]Q7A0'?3W"J"%BR0BYLN[89 MK8V4-Q^@Q.6;D7U.N#$,/=OEV7#87FSF^GZ/;T7M,F_;R MV?==0=>#G][O/P19@4X/%Q1_O]_*F^MQA@)FO6T+/LJY^<-,MF-4%?,X_4MCHALGV#^P/I8US MLO#!MYA6R;P@.P)K!.;\8ZPUFY,GC8&6U#6,'*QKKS',F'L5GP*C%U[Q:3 >]>[%$'[@V'M;J2@.)-')L[X5RUN)J4IT 7&PP M-IPGP2!XNE^'FJ^M2 V4-252W.=%6:O%;)6W_0*<$E-".=Z M)JO!F 0?8":1@^YYDW>!7X5V*6I$XIQ(I5ZF2F)R0)34U:_4B;FZC%%,.B.U MHIP;P%ZO40'.):>D$U#ADUK0C/]J5^D3'(^!\CXA9_TQ5GBO5#+8/LG%-RI1 MU'1K9ZLGS-KS2$63&'A\**1!>ZS]%I]!:7O[M\81)RUTA?YDA(AZ.IH2C@I! M_\#*0PA+O!_2^_\:H%;E! K?9"BB_&*"U\_;S'OAU FA6>OA@ M"9HZ)'@E!8--G[, NY5K=6B#!4B>.F9EFE$%LO1B>I0:A]9<7T"%G/BF53CD:_";UV"0(;@: MF7L%%^.O$J_Y59*$S&Z M3)&Q%K026P9-732'VB* *ZJHA E(TB1U6T#SH^];'3+O/,H5:!J:48RP]R3E M#B*0":4+6DAG\SI"8998 L:]PV&-?N.J$[K60+@9SJ@BQ[>IOZTF>C;C38_] M ",B/Q-X C^&^P]/C#%OAQT7YH?<%1U[^3)W.@F$!,+C#X7^88O^OKUEH63C M;A$EL3[S(Q_ 4"9N^P^S)6$7;+TG/1M[X8IC6%4/%*>)PJ 0<66'=>K*"%3.7TB.IZ?/":# MR2YN1L<8P[=4; !CS%,NUF3@/SC@R XESEN0'5O'F=9QIG629,%XW1CI>FP"[+RVN3P'ZH,\5I/RIG7Y6G5J)6 M2N:T_;4)')#$0-R"WJ)KO,>U@CU?;O*(V#[.6.\KH:<&F=0"% 1J1X[M5[) M/7?%(AP0\9I54%A*4BRDF0.I_OQS12"-1LL+D!NI)PZF> 7Y7M1RFW":-..- M^#^QJ/G8%KNQ3351XS!=J3#[@M4\.T=*8E7B/PGRQ\4WO-A[H;?P MF;Q /4 M.E,$C$%P^"'MX@P,69)*T$A!#VT)!CGQ-=P:2-SA%#7QO.;+^GUZ6[_)\+;\ M?_V.E:DN\9:9 ^22;H+I %7@CO%<]&SXP7_'\&_/0<0E M*DJU<@3AR8.)SF.R",FD+[QL>-QA,]TP?@3^WWQZ@%^Y>;KW-6*#U. M_(3#4[AQF%LY5S57\;,F:M0O/YQJ**G727T+_31MR;X@@$[]!NOW^[J?V.5P M-\2%H""F\S64/TT8'O$8S0Z5^LG?W5QY(>J)81DD84D ]!X-B0?5;2S!A+/X M4W&DW+,SX(6Q,1D77B$'TU:.O21YY=T [BB/.8&>)$ M6F00 A' CP2?J_#0N@5"#X.X72R/>@<:0%=-%@KWS&# OR<8!8,'YF5ZA3[ M_5!&:\8Z;Q=HN0<+YE\7+"5>5@W:8>^"<6/X1$*LCU 5@BU9DO!W#5>U%^XA\ M^9F9[?_D.<[E 5Y7A:63-KWCV+93^A'TW]EJM)HYF2C+?A.3DDT&LC/'364: M$M.%T N8DD)'A;DL8-*.^7@%1X$KN_(.&<'9WN8U#K4--3?NB?FQ"94K[SCC MP!;W>NK2W'$V2^9LBCJY'2JY'X&DT8X?QR6#?H"9WG-M!X$L^P$6AP!X"DC9 M/G>_XNM9:V.L%LF)SA6"L>AJ8G;%J90K M08G7,%M^1+\%X79$1VI,^'ZK9L"8RX!.O;Q),A6#68#_F*J4&/XD_A.H%$.- M9W%%4(9$ZSYT%ZNA1N:1+V@F^34&7E57LZ+BNDQ*?Y.QJFA,6\RZ"'9Z%< S ME5)DI;2[#@/]*OWBK$>J%YUBME%9F>KJ+(N'=)+.*.,)6O\B2IQ<65%)#B;0 MFU&1BH=E$3/(4:FP85E151I#G Z/#ZX<%H9(OV'\DX7G0I"VQS$AW$-H+FEO/M\CYVJ46S J,@F!C@I<;5IJDC3U*,@QNX9YRW /SVV![6"; GLD5BU<="(U"]O0!A,LFXF#0SKC%[ZF5A.'@#!IC7K6"T(I5" M.RH"P">M7YHY%CL?_;JZ:#_WXO^VO?U4>JZ[G/JAFA=Y*FDIA!O0$PO1Z*V8 M$9ABCV04CC$!"P7MH'LB?;4 L$A>E&L=Q!!,Z*B)JTDTPG6QY[I(/K.S!8H&U#I9.VSL-VZ1?K0K1OT:;18HV'"E]T99=2)XVB$&QB59>? NBFSH2BY:[O35X MCL7S15-3%PTRD^ RGC*0)OKZ+$Q66>3QJ2XQ\U97I+H]./CXZ^&;_N#Y0YB] M'F/C#=9Z?VLF6!M%D8.>8 XAM@/Z3AF[B4%NG;?9A.(:N)U:!56]"^4$F*]& M+8L1V8!\5';Z? NE\(5R,1 18=+4:7'&*%LFU\/LG"M9H$FC56@Z.:/67^H9 MJL4,-<;JD?MA&ZD%="W3 0VM9.R\0KN'6*58"HY'CAM!L1E$5Z*>S@@O'-/, M'=0W_88WFT!4[/9D!KXIMV_(P^L3[0/Q6.0G/Q^G5%-N#0]<*S>:?<'QE\@< MI9UIS[:)C@A;M23+?.S\0L&V$L]U6T-)-T6![H!A+ AXF+4<-V#.UX)M523D M#DU]/..CIJHT(=25!LDL0,!W=8E;'B1J8_QG_&YJZ@U7/Q MA4&;:Z8M$@GLIA$%'LZS> OMCVS/=LK0%@>I4(Q0T2RN:B^LEL0YN?LQ,Y+\ MOO!7BG.GRYJ8HAC*I[7=J.:F<-V^V-OK,N :!/P@V"HCG!^1BP4=@0F6*1^> MJ9T[FQ13B@B0D>I?M,*OR>EY1?DN5AZ,UV-KE^,E,'TBWJY;5\JO[7*\%7"- MBL7;*0R\67A:QIT;R&M,E5?CF*M2Y#K092*/F+LJD3M9)@FYSNVKP^LD"XED M.?$EX\XS_JNV#K!"4GW?N_MJIIE?4>*O)QR0T EVL? $05?1%_Z2N"*V+2 = M[\(+N5)B'V,ISA%,SM/*I FP#@SF4)%HDI=T*\W.5V[KO8LS:X89R@Y6#$Q3 M",WUTP9!1P4'=8F\IHP0E#^VE8/(Y069)KSLHXQ=^6^LA!\:L2MW+\Z#!"#^ MEA0/)SXZ<,XTBAO\S@.[9"10+'?)QQ1@)HM%&!;^HN8DP=77DW. -[%YF \6U(4*Z'KJ93 OGG6AOF58XA-:A& M9+02(^RHD16WL7 *,3!CN"QP MODX$+H^O N>6XB'.=14]R+E^,$!(4',^T$[ 'UNQ#%F([**,(-TWN.8 2V".'>N:G1K!AF]Y(FUGEO3 M!<(Y+&F[K9H.8@SD,24NQQ[8;JC9=:OI/3\YW-?*>]T"K+7CW<+(\\M*CS[V MS0H!&@/ 6:=98IZO >&5$5DC-S>,X3!$[\,<)I]!(9(1"%2"K0"]U-,JJPA4!F:AG9"\FF9&8T*IH(56_7>HS1*_'&*R+$T-:"I5H' M/]X2],O'R9P!AYDEK5#S"U9]3#YK;([/:^3L9=2@(1]5!4M/K[4KR0R*HE!] M&W(D;$4Y9Q%>4L22:@:,Y_V+U=-.;K!2NM,)E:LO*U-_LN57IDLAQPYMS>.= MCJ^V6WF)<1W&0*@AE2F]J8+WEJ9N37KP(I,PJ8>-"9[DXX+36$AJH$YD*>_LH0F7<4*,L7=LJW")S)2*-)>>M57X>29UC/:.,Y8H92:6723A97K^.(^.5YW3QFZ6(Y5$<&I* M&'/@W\-F#YT:E-VHSYGQ(2J$_P9)$HX%61_M7P$3=%N+FW(:AU#P6)*)*T$M ML>:>\>9/VA#\CDJNX O\[V9T.#+6-4[/!X)SRY5<+#HGJTUR5=+<7RSE5V & MBC +ZMC+E47F5V?*=XZ;_%>A 08X]?P9,6%L*)>I"*,PZ= M6Y?21[?NL918VK5T)%8EKUAR_W#@)&'7CE1S]4PQ'/:P8[EC#1\/+(*#P42% M!.2+BQ[%IZ#XR+8TE;4^)J"=WYDBU'5,M0+!J7*EYXQY>$=ZV8;A3LVH)-B0B%F8%MF,*+)IR?+Y](-?1ASIY\0@+P$O(\GDY=XAF.R4!/FRS=5N#) M%@US#8B!('.(X*9SO9-P55060WR#>+0PP["%(.Y6Z(.07WGJ0"M4'+[8R\(T M^F;L]C^507N<9>K<1TDOB]_):V(L M7/BI&].# 6MC?TG8P)7VV#U8"5_&:Z 21D=:TLHH]/?PO>!LL9$^1Q>;B5T9 M4\97R'6>H#KK*>(R@(%,PWA13 XPZ[86.XMT8FL@AU8N!?AZ?(L2J5KGWIP" M]%Z(TR(WM3!&BT?CJN!.$UQB1(:5PR''Q$NZC-RING/M*W'N3H1*62&>J/@H M^%:1OIQ+WFJI?82X!Y<&'0 M)4C5G=95V&,"[WG%JXLU!$#*50$F'!EN[)1/2F#S"3<'#BUC3CDPMSO(SC69 M\-*LP7C\[;)Z##5F,ZC\7]!UG=$EK]FBQK /SXR5B4S%IT9LV8RL=PVVH\?: M&9 7Y-YP1EBQB*3!-:)4?$,)S%3D@(_G%;-Y6[THZVZ="9Z%=>-;H5%:ID5I M9,!F<)[XK-U9#E(455!%2+P,2\XEK)WA]^R&+1E!N CL_V!$LO$Y!C^*-7=Q MK@GQAZ=%R314IS?26 'A_8YJKCWB,>I'0#>+F>3,*DU.M0V15UA@FY)"Y*HM M+?_O\>$9#HK_[7GQ^]2I&52\/-'V=<_&987">LM!*#=#([/0(M%H,9O5D3]WPS4,MAV5Z1MU=$5X=?6L\2:BUH_9N M&%"'W$LX0'EE[J&$6=NBPJ76^7$)@F=K+2+,.5,2A^"NFO,Z>MN>WBOLY/,G3Y_S5EXX,:R?^Y83 MLZJFT6*<'.?F>2L*L_9N^7G&IE &*OAZ+EGI5K:A:!4-V%'>]"B>*Z/^$X<<2T5N0X>$N&B M8RE!D_29*;;=Q")6RDX#.ZLG=KQWH)19JL37:Q/7,G*?&,=M-0$;8E)DZ5JZ MWJ7S#ZYT,;0)RX+]3ZHVX4LTF)W'D7ZLSAY/6#U'INXKV2_PU^OCO2O':\4K M=JVII6,XE=> M)4OPI*&H,%#G)XB.Q ,)*KGJE0?VRKW+=OW<#<7A#J_=7,I M/ ZOK8D&Q\,/SF:8&1\TP)!9R>P%SQKZXTJQ9E&"=1UZ,CBU6Q.LY3]NQ3 M[VGV!72?&;8IQR*F$D:FW!.;$L[E 5YUQ=IEMF;J-\+46PWA1@V&2SDVU9UU ML%:X[L3A";X'QY7'['"R189.7*Q/ZVZ1).RXR2<=).,P. M:O):];T[1^>5YCGGX%]*#7W'!4=!@RCI"MF[H+1G1% O52UJ8663LW.%N3G< M.G/(R8$)EV63 *)0[0(8UKK29EUILZZT^796YZ]B/W*ZZCS)I$MCMQV)5QN+ M$**@G@8?XP29&+.W&2V6I9^$0CDQ/$/M,BA\MZU%.(LC-V_[7276"A9.8=I# MKY3!^!OV^+.[/LH:=)KQRET"%#4_:7E03,6RV=(%/FJR9B\ *Y0.3!@VYZQX M\LM:M!09P'#QN7?,C H65$H&!9X(OX)7WX+\QH2'P94=7***=35>4B\1E92B MQNGO\*WM$,I.9>DC:$@)%*B&6H9PG*]$')&"\QC9SZ'0X.$&3=3?Q*G*FV&; MVM3F3Y/P(FSRF39=+CHG:]/1POQ-;"B0F(X:. L/JJXIPSSBJ5*NY$:NFU_< M))F'?JU.IN$C^-=\4T#";&5Y7J#7#&'2$M>W">$ZJ($NY2/BXT@-JNZJ^M64 M;P<;6/%^BBKD 9N+5V/.1]CIVC"9T":3.3P2S)HV=&[='-UX72'0HTI7(LWQ MM[#A1E;DXSZ6)YOJK9DKKZ):#(*ML?F_K;)UU[W#AS(RQ5^E&=,UP:3T4W8U M^:-A)8#BG$8^J#/.P"/\DQ#IQ2]-YR)\S.^7U.@60$WM%=[_T6"ECJGT\XK% M*%$LY;*>PO491:E@,%P7(5CQ[GHU/?*;LU:=$.'.]QL0:_K/H/(KO*^MQ!R= MC\K8\A79:$S_\_!V/! R5S5JBL0O!-NX_Q1L44]&2 D!CH'KC-*3-@D6Y*&: M8I=H1$XT!7Q$_R-U1M:%@:,7:0*OKTS65B5MG/R:_%5S&%^RFVW 3<(\\\6$ ME41Q96MU+HH8^"4+BA(YN8Y"="P_+B,E%3VCG?6B9K987N$/V-G,SL+YN;Y< MK0,EBI$D+*K#<,ET),LX^S; P!C#HA%Q(ZC<]AH;<&<>9&-8YVM=G+VP9";@ M!NWJJG9'+*Z>D7H4OW403C(WG?]$(LNF!IE('5OC(&1<83$O_.Q2Q&/IP*8I MX&(#\EP]U3,MW:7[0QHV=4*>9AILNIZ(O&D2O?-2'6EYS*)QD;89%95A"4A) MW&H;A0N[Z(R0=%,EI&NZ^ME.,DU=2_DF-V[Q."T,@,)$0[@FX#,(P$DHOOJ5"GD,6T1G:=M)&?;'$ M_T@EA.>8C[CR&5^)'4M3HPB/N"H2,;B!LP\9.4%7W)[=E#2PQHWS384F,_Y-: HROO:<\L:J1K<6D(?Z'B*2RT7@WMG>_J^T!] MI)Y5/A2[P+<)IJ/3%#UQV67VT5I[V:6M^RGZ MLM-Z01V1UJY>HKZE58ZJ!Z4"'O!4)^)>F,VP#L5_79!IP0GJ!8-N+PZTZ'H- MSB&2@P@M?>8/KQ7VV'C5 M((@MF#^@)Z&[DYLQRK6KO(1PV7-3=V^1#\$L9HO"VKZ>%\UV;K\#![&^2%%' M]9Y3F5"0#PU2A"VZEZ:A5%C/G401+.+T;MRM]9'*D?I(U%X/5I*:OD/57NSU MX=V=P\MC.!J,]^H*6PR77O\(0O'I\L%'#TPW!Q6#B0IZSF>=KZ: <6O>G[S"D)3R,""Q;X)/2]1"H$ 1<9B66Y9%J6NIN1SBJ4*]RPN M'ZZ3J.X643F0>08_,CW*;-<#<2-[($Q+^P;U31\B+'1 ' MA>F,*Q 770AY1DV:%J=*A*#+1'K0U0(]X3,3@6S# MB#[U!%'2B ^VUTY2P,([6Q2$3>="JED=E)2P*<04C@BQ4I1)9-%V];-2LX"$3WCZ.N%(T8-3#.6+_%/1FWM^B4Q !'Y M;2*(;3DVH@!1",^/S7:7^Q7LQ"28?^H?PBCJJ\4C/'Q-!ZS9RF;S3]E>3&G1 MM7 0'E11T'_BC ;$>TTKVTR#YSSJ,DL."M^0BD/G.C1V":5S!MZ#ID8N0GG M=WK977!@(PP["8LQQ9Q+3Y@EB%C91!-*?99^)K@-,@"U.:P",&\+P.QPH;CC MX= 9\ARV0*7 P %26"&F.5 7!$.=% ])[=Z8>&3K8Q.4(%EG?73<3)%4UI*! MB'GEE%4U53':H[C%WEJ*H,$ A4OK>"S-!&Q8QB68T8CM'?&0=1&0SL7!*(Q$ M3ZETX9;[EA8GK'1=/*.<"V2U2=$QKO,AW& 8D:):%C_0.4N")E?1Y[PXZT^* MLQX2%.$X47BJAGM*Y2 RP0(Q MG:@IZ[FT3=+:\'@: M74V,VD%)^UQW36B:A-#5>9=_$U+$ZEO@7>Y']D+B06*F0-A:VWS=#M)Z:$FP M"?F*("O_YK%A/)#9G#;*43IND,\M3 )U-[$(U[98=L06#-_W\.RLF,DMC/,\ MC]&2LKD^%>CN5>U)(2/OO4MND?0DF(L)&AAN(&C6:B%-U9-%"' TG=5MN;!X MN1?E6N >DJOOUY6##L<\_Q,L2Y2SSD%_ T**B(_@>884,= MT=J-%7_BKDH]R<+Q#%)O:!G9U\/HX&#[$I._XU9@99I1VYG-RTW'S&F5:@9Q MC<[*(A^G6/G;(3AZ#'<>GP4MJ-$+@NRM75Y<89'#0JH^MQ&^A+-XEYTQ^*>V M!5Y,G8G\>2RT;%W7ZZSK==;U.M\P@T(Z8)$6VN16/?:PZ0R78EENW!*$1VAZ MQ8M&*C??^GPOY@]26#"W(BK!:M=E*D#/*94AIJ*$!HQ4\%*92$'A7BR8",R5 M(J2Y6_Q9>H.?;^T@95U4%JN9,N+] ED?),P20*DQ5D1!DZ;HRDE,CF(0/CAV MTBTH9\QI_F2"8&DDNV04.;Q)3QR! +;I7J9]F*SQ TH;> 7VH>EYA@],@51" M41Z-L=+*Z#)SQ1?U!#8>M=BEC]%XI*T1XAWV0K-#@T8QD\ZBQF1RAKJCB#B= MZEQ34A[U0\,C5;@^&0IG3RT[S!+?!!MP"4&QM/;>:]V-L$]S<2 LYKJ1_2J+ MSM6XJ+7I*^3,67NPEQT;*_]>6BX?87!^O6MG_"_M/K]8A+5R/C#V"^A%2#"$ M\R)=]30H.F2D1RU"A,BS62N4]05FA2?]D]1(U>)=HW'E<%QP/6N*N MGPPKAP7U!LODW=)E$U[?.C9Z8\C50,1)672 N/C>+)L8WHN:W/4L M':O"QQC=+:,E/L'X3YX"2U M7#;D2#H0.VF(87I=-VLH,T/3U$FB_]6'>B>AX'(@-@5 T_/%T?Y1TZ2@_RJU3D),A3UZ_^4>&;_.@$0E.^0F7) M624^?&* M"C5P:.J]5Q9Y?*K+IHH>''S\]?!-?_#\X5\JW_38[QA=&OP#SO\*_$D4WI13 M$=T4'2S494W21)MAII-LSN'BU$1C;1+JQ:["3']&9RDW?K-^PR"SB0"=2"&. M,7_IF[PZ'\;8O'1D/S0KO=\+ DG6(1NFDE[SK?%:K"V5PI; MN_O+Q-B&I)IXLZ"6L;.FI$0E\^X&:;=>2/;P/62D'" MYB4NZI;SV_HK>MUZ*OLC'%K5*OAN;3ZF1"#@.'X7$D_F0U7V89_CY+,$=6A3 M%_NCVW.CX T+(OZ9C&F"$(NC>+?1V'C2-&76U*8/%8*$\.9+VU!)/_,Z9C(6 MT>KXU"DFBD3?HZH393)Q\FJJZPN3YQQ. ZA\<9#3U-JOZ#?;]MP[=D[_4#8I M8DD95#6O:H5Q-TYV&UF(5;CWV%@4AG_KN?B1[S0UI]",RW@Z-241$R 3M=@+ M>Z9RY3KVPM_4-MCFNU!JJ*[\)LNBV.*+R@*^4Z:TISN'[P$W"O:*,>9+'W[8 MXYPB):OVR)"5JB3&/:@F38V%0+#T@\N62SEIK37[T#6IPHR=B$0U<36N/'*I M2$ Q8&=CG\H*F/X9WC-YETD#I!O(:?AR5BU'F N0TI!GN&?J'-ZKIW3 M)D,?K+F=*\'X7)4(Y2NF)65^3HB2%3]41CH%Z<44O4=C'F# 8$DR7&#,V.'$6 MVH2DF"2^VV:.B'5LNY1Y.6IZ.E,VZDT-MQ?PI5(,H^MA(P%E$V%/2O'FCYH\ MZ0*H]#D--YMN9;-9S+TFYPI9ZLA>56JJ<[NL9;R0 #("5A@/$6ZL$7A<9O MQD$NG,E+M7V2>^WTO>[?<0T)(5>ADYKVN41F)3G!C'7C)MKS3M+3H1A9W;:- ML_Y/QBJ%38^GF)W-3C4C*]V40F?#@]6;T"Y96(MH;9>V- M1LAX.<%Z512!8X09)$1!S*7ESN V9UQ21OQN[B;)ORVZ[3/#N9 @[.$ZQW&= MXWB'^T^= PH*36379.T#);.3-"?SR=58DGS:,KVU< ^0#HRH:='DB7"-(U(-/QX@%C*X5^--Y1@Y/ M]H^(DV8X%X?)1\E)DF"(JE5=J6P4I06LZH+# 2;,AT,C*BI\F;(L9TY,O>39 M29>$2Q3ED#U&!^*=P>(CBT=)I@*:/VS%@:J/#8Z:++/S3Q3[ISX<'I]<-,UG M6ULTS?Y%=/9T((0&NEK[K20XQD4,AKS9S5)A&@8AKA-L#J3$@*&(-*DC- M\_[^>W>3]=5N6TQF+UW[.2'CDSW1^@BT<30# MLIU0G2!7#8'F'N=5,>59V,1BMKLI\V@8IQ$EX'FVG[7E-J/]K)[0A4#JQ)ME M"92:"E#1"I8(S1%87DN;=C!VILI"J1?,K1A:W.99IW+A#*:7*@O,J5/B6AA1 MIP&OGQ_Q-^I4T%041S!V1XTY-L"ME?!T=BQ6YZVU'N'IO./367@V^H2YJ(>] MZ%*M8Y]OFK%;W\&]O?!Y$3#_9HF*_I# )L\]:8AF=SKY-SF'I1[G$1$5T8 MB;,92Q?, 31]V6(*-7&[#5LT[M2)LLFH9Y-W(,>V4-_).2=QKJ"VQ2O>H,@< M8YU0AXJ,46.]AA'PX0=01]"7]!Z,.E!GFDK5W[Y]V:UL,:BT[]2P;-!7"'L[ M8-%IM&ZJ#<5 +E4KD,"3L(9LB4.%,9JL/]H3UN$7MY1"$NB/(R?F.67;P(W> M>8;YRDU%3N4_&NH/HE3MC<),"$0T, &,@NFUNS M*$.0>D[V(9,D/E=!;R47>26D#?+R2W62;Y(7]"1=7+D72(G\U]U=@ MUL".Y)E"@)P*L_E3^WD;=JLH:L+P_+3]B!0&6_R#$R M:>Z!9@[9+35HK[F:L^,$]3[X]FV#;,;S-K#< S4:,Q;S6J ?:HEZHT;'W3;L M#[/X3#!&@I\ "T6KA^P8TT(@E_!9J_T[JL+(O"0,%2[*4]H0?1(!%)S-CZY2 M/85M.)[0-I)6W1D \KF[=#:A\DUQ28D1AGX@8.JVM=7(@!IP$9W-[:23+,B% M0O:(1 L(I,. M79%"V/P]7!5*,#3_&&A>*F.!\QZI,=D >_Q7GHA,.S/J4?S5E#BTW%T MXN,\'!3E;-.D:H59 )$_;SX=%IGQD\'( M/XES9C/ZF'<9?X2GEK9,AV=;_'93>DSJ=5*4*>5TD6@FEP1(18"H/:QB6BQE7D^0)QTI-4!)NS:O5-=I/W^H[QHF& M_5M=CN=*"3LP/8]5QD; .[O6-W$=W^-KN;II$+=*"T]1"!@7:)OSHQK45)5) M,-J7TAYD((YN#LP=H6>.7"KT1\\#O1ID1=C :9$T4T[0RS&828X&#'CVLZ*@ M^"=Y300%;6@\T3FZ0C'@A"V*IR;[S@LKL)N;G"I^N;H7]SE3"Z[G"]XM'4@- MRDO/ZY9+:8'L-AYST^IYNW,R66'XLE%EP4J3VL<@I0P[L0JH\W12$RW-;92' M3;\0>,(+WGB.1IY0(UFX4AYJLNKY%6'G2P014(P/38!/TEW=S!!-+$S#,S.1 M."D<1U-;!D! GG3_]Z('^J&%#K"(!#@KKRVS@2=X 4_#XS;6)!A"N:O>L.7& M^"0\&G8]"OMYD2\-'SQ]R >Z*'P(^,XE$@8]0Z4;)^$"PB@X2%!MZ==BXO

@:J"FW(>S(B5IU*-&ZG;AT?.'WJ5363ZNXHV*GDY!=43GPL71U, MQ07OH)3(D8_3M@KOA21?,(A3+J_%.<*0,"9K%$LN+V&TLON\[1)!=/$C8$GA%=D2FY3OA1^&0N]U#Q4-6-8?"TX%U35 MLY1WD+)%O@84H*3P^6V[T9\RS*SOH7#%36&5KA1X@T6.RCC@B7#J[10Y(;KH=\W M%]5C[@?3[%!G-D',HC>BF(@MV/6JT#3WB9X-$;;7Z"*-W:G.@7RQ(C*L-$@P^DD?L/? MO<:G?XQGH,Z +@WJ8,.J.&;&1,?Z(.+O/W"RI05=GPYQ,/L62ETTA(0G(=1H M#I1B*5B[TOD#'^GT_?L#K]_H"T9P]1_PFI%2UQ(L),:,),(&E(0KI\A;_(2L MF6JP[0@&':BO7SJ[5:(,.*Q%+H][G$SVNKR0F&@NL8_H3"GG%I/9V(/%[4 M\YG4S0F&+PY2U42F<=V>N1\@1(A>,H(EAHH*^:C(=.$W5 KS@=W', 5%&++T M*B-LO,+<.)7,C$R# 35/,*-@83KNT$W20-#IQ6+L9VALXDLD_9+S8= 0=Z22 M(>*8_K*Y,FBTN8,GJY\B#E!$^CMVP5 M7FJU"[:CB8EJ&HH _X<>'+*G?% _:_@ #32\>=3+&LG;WP=* B95AG%O;6(- M5J.*"QOE[V9T[,].5YQU2@7$0FTS"^ M!9FBY=2R&+A_O >\2JJCID2XNL-4J;$KT 2L#W^8A#QVBC?QR=8/'#*$"] H M6V5=PBNX4_%N^, 9=5TJ*4N''%"/GYH:;R=2>$K;+(XNG<+CGU *0 %ABUL MQ)F!WU)[452]8K!38 H8-+EU M.X%+,2XOY-O"YXU4^,.R*FH*I@OWOT*?$? PY M@;0[KDV>?$S>5)N#PN"07.?#S5;GEM/Q/IW!_9UP"+_=&KO'W50YD=TT2\ J M:EBY[5-B3!/9=;^_E9=G9*I12%S)2M#+1RV2;$*(*^1!#=XS#2B'0DOR3 MZLJTF302(PU/WI&!0SZVZ13K$OP2/(W@( P& G)ZK MCQH<4N_!5KE5HG,Y_VD Z_"/"^B<1-C=JYJ]<G()>GZ;UKL5%T=I5""LR-G)Y>4DGBNJL3-?.1>6T 1!CZ-X-]2^P_=,5M(K% ^E MB^!J75/OOL!? D5J8N"5*:G%70F39R59JM0]CJ]T9;O5LC<*^WH5>?^78SO[ M;VVMKB7F9AC^@Q* QN;N%%)^55FTD5BD:X8!8+2?EWTB4R]2L8B M5:8OO/6EV[ 5.<$G>F8AARWCG]G2!6H)\\*V""*NC8Z\SO$P6(%]T!,!&7&= M+5H#XILY5)(5<>I'E; .ERT_XBT@7^/IK-_,<&QVZ;5 $4]U*9W@\:H956!I M.H(+U/5,7W<.A,8VA,)67VQ9OAW$\\<[6].!#Y##F28-YR(-.!G;==.K!>'U MN]\3-_=;\3AI;FP5BD $*H ?._1#%C".S27S3XR!G61]7AQ/?D;RP@Q-LK8V MV6V2'2[3WW2-D@O2&.Q 2(=CE%6@E11!8(LM*C.ZK)\-8@/@P-"R2+EA3R)Z M*BY5$ ZTQV&R58MA58"L2)0G4G3%]1@(.*0L?6M[R\\F*A?=PD)<@89ALB4E M>&$#*-R+C@FR/E/9*1J*>3T10]>HD*4I"D4XWM1$.TVU<6L/[G\THLV7X%Y2 M()@:M_8\E6F6(9;.,(MS D=OW04.%5!WU4![(-<+*[G>R54--D_3A'E52 U_ M&H&.D7RFY$NJ64#]A@B+^)NTYZ WA)'E@(LA-Q0&Z"5EUWX&$L:P$W=M8XH9 MRR5B- 3IWVC:"7+O1B[P47RQR(#0!6,U4Z]'+5%#CF?U'%@0JD(^<:>-3:*: M(=:$Q+/A]SVDQ @;Y6(#>)V# 9!YEY5*UTO*$>:]@Q54R41AXDJ+^QH@H78K M=G>:)A#OSL0HTWJF4*"&WK2 $76)C:HE-UKT84#]J7"JHBSS5I1W2)ML=\UX MWTR'6U0K> TVZ\%/MFX?.S=D-WS176E[?1?F%^0J)&4#2C3<(([CNTUB$"0! MF!I6M@&SY12F+QMVL( /%)5R!3F^ B>,H!3 G2O.W I)Q+"\2QE<>14>=4T^ MN)(LS1C\#,ME3A-CFB$5-L;Z(1P/T/9[\A>"*$\56)B2V,]>:(\PF.V!&X41( &%-#,A?(0P#+H9_0PCG5&' M;QVL! SEHI!VW-YU_0)5DYEXX3Z0O YC/U,:1-?"D(5\\;J0)W"3%)B>[_LV M.',^G.-($]@AJ)4%>LUURV'EG/[\Z@7_C-0CU1BH (5?4[X39G*9!S7#V8_< MK#>CH_C,+\M!KP;.I\GU'RQFG#5@,HNB_0SS%LN%7SK5%Z;!#R&GJ)QB1)D: M5M$6ETW15%DK$0J$5BM]5G+A,!$U?+%$"- 5HL\I+.%]S4ONL4("W[F<-)NV MB8B;,_+8F)ERKB*5I>29YP>C)TQ 9O$M-*QI3)]&E(?INY\T/6SR+-J'C?JR M%3=S^-0F_PDO=RUA+F/J(].?('B'R\(#K2,:;#/+KAS?MVG8(F;,>(O8(]2B MWNM2$8#TB?^GX-A2JZ[%N1)##9]<:#*P%6LI_Y0$V8B[LD_"'ZZ>I/&WVJF9 MPV9>4?'[X,F+K*AMGBB)"9L2BGN$RD8K\]PS](!Z/U*KHYCXEVHEE((B6[BR MP%Q1'P1F;0:=A2N/2@)M9;BI;&Y'PDFS(UPP;YN&E.UU-LLZFV6=S;)V8E_92YRLC!/[5YM63PGH M(\6H5?&YY(+<78_VF\7)+B:NE"I4B]$^PN>]EH[X3XXR!6B-%/I+XK*<2T6N M**8*9&")+8=,^J& 0 MH+6_;S]9&&,;]0OJJB=CD*!NR$4$4]*9.#7= ^)"XJ0<9/WDC[.OAJ=Q6*DY M(]< MDP'$4,Y;UA70D9;RY(P*^M>A![90K=H^Q,XF==[[CR0Q2*E!# M\LJOI S=2%[:$FLL\@M3;-_9,\'"[5J47>=.;X851A4Y%-DIAG&3,6$.925' MJ0C*B?$-!:> FS#Y3@[>T7:>E\OO@M%W;9;6*I#^CR5JZ*Q &CIG4H:M^/N3 MS6>6@!'1_#&E>1 M.IP(71ERE( EZ",[YF?4YW'[J?M=3[('<*LE;]W<"]0[ M'-7S-.F"N,OAQ6'-H7#PPA ZGWFJJJ340W1G#HO3;P['0[;;@9S8R%7\T>R M ,W^20IA'$L@GMD1M]@2^\FTQ?$@I5M=Q9MU8@OD7+JM]Q!Q 9.C>&S:NK 62HNS5MC+\8G?:\1YWM2 MG,&F3?10"P"D <"GQ G*NG1.^FUE$Q_9?X]+V_'>-=*92JPF_-1WFCI2@S44G8-4=X%6"Q\.MGX(=(A )190%%3P& :E!;(IJ9>Q:4\O.?("EMM2 M!ZKOK0^L(U7K2-6=CU3=HGDAJKR1P>DEO&71 =+-4DC@#3P&1"H5?&)E8\!@ M%E2 ELA?8=-A09&W''^PN=6V"V1/<*?1XV&W#7=]YX=0W1@X2\]Y*J:J?5++ MSZ'3M'.$/PSL E#F7K%D08]EK-(P<\V=Y:KZYU.,63GLS M>H/]KAGU[6-36]"-!V^./_H(_C#(DZTHI>[C"[L_]*Q3,])WB#4%9\EY5380!4\5T%7 Q/7WGTX0LI;&F9,DCR2SSZ]]S3F9* MLI&-,<86L^991B/FN/SNG_:(;N6?(D*?JH@Z=8$"D\8?52L' MM3H_&RRS*Z+G\]+5^Y9'^3^Y*.-%YY[R#=JG?@ ,!\4A90O,Q,0XP:0?#R9> M^DQRGU6T4G5+E3G.U,">9>@'J+*13[>\1I#%I41[%Y?$YQNGH5E M*K"O%P:N,ZKHY,PF+O9Y9TY>96@Z$:P46)I.#' P"R'% =E&/MY84.:EQ8L0 M9RIH/.73O%&Q216+G\(PGZXS#QSH*&?K]$5T/NN4&,K[F.!]"N)-=O&&I\/O MG"!MWAMAW%TTL?@];B8Q*TF!+-V9#2;4N!N!F6E"1$2([TW?Q$[?-G ':)1D M6&;+KTR%X_E/QD_OYVK\64E4&&F *7?W'3&%\NV\W*XH32>C?M*B%9,_(9!G M^QTED:,4QDKRZS%3%B;*%@T%5'-PR]Y3O*?4#'>2(7WR.H;* &%/ R-X#&L M_NVA=F:Y'H9)P"_D)5DV_5I6@4,!3]W:T]%DXR3,V:(BL$G]/'27A(R^%E*& M%9<*R_9(SM/HI2Z/^TBELCG#38I@I!V-2@&FEQFT)QAC(MJ)728-BZ*2V:D@ MVW]8CT^#7Y.FTX+7@;F1.AH!OX%'90)PLXCD^!WCA^^7)_O<1/V!:?8VJ+L@ MSR/M6$+J-.TI1LU-Q=YK'XY/3_9!B)$V :,D^=X\G0FURNP,[DF!@#F2FHYY M@/C,Z\#^Z2'-WX1 UW(IG G3F%B*V9XD31GS5>4TME<$K$]G"B>9=Y;H!X+5 M%V3D+'[OPA*T?!5BTX!KD=-';:XH14\\^T_TB/3B$&L&_!TT-!\+#^2W9IV] M7_YK!1_6#T)>B#I*VK[""G&AEI @R3=(S9/J _4RN$_YQAB/.B8)[V=YT=2. MR[ J2IWDXS(GVVP&G\N+*O/6 9SS8 U)+PLFK+8PFA!5)5H"[@B9&10$QY;K M>?&Z]KOB=DW=^JE;/W7KERL40C .@?M4IKE/IBA=A 6EB'+JVB.BIM%*?0(9K8.Z"9/+WU.( E2@R"T,J+(AF*?D8T4V,?@_B MT3QZ*%6Y9"YM=FCZ@1 4+$NZ;F:N((NTSBC(396LIU9MR["/0QSSN M&<*5U))UZ#+,0532%!65L0RA-XE2X(T$]Q) M83,>LRA/C7+,;D5A(1E?XR1*1Q#&&!WVHX-1FERMQU^*@#?^\A FE3[1(J,\*32CJ+H+#Y'+9B"*;B?8'346&8-9(D_X$H81":U,="5" MJWKR**/E84!Q-V7QZC):F.;I#0";7M9CA@J+W%JQC3QU'_<+[;/$NA]8:HV'8RJ"V9Z?0GXQJQ3\U6#H0/1HMHW5EJ M+0<07E(2=. ]*03ZSI=_@Q7/^CVL5 MXR?ZI*B['/'$?5[("VU(KALF*^5N35ETB.H8R][DZ9Z1\2G]I%C(#_@^WBY0 M=G?BU)L=&2-FGO3("ZEV*/I=_2"O@?U,A:BLKY8WR4@*/,\\3D_'2'<[S]^+ MP5 1%OY.XN318,;];\4%,C_/G4CVPLB*M#4QYIR/WA7 M^FLW^ED68=03+=_2\@G<(I+U'Q DV=8LLD4K96)-)>V)[Y"9A'$BL,6E@DOK M4$M;Y_2FV[;TD.70WZCLGEJQ51I\,*:=@Y!^F!?=,W=/I)N4ODZ]- .LPIB6 MA>-)*.CAQ!*7Q(4!-T)=OB8\HO@Y@UEI1N7@]U*AJ7VHG:3]'.FZU8UF*\"* M:!^+7 A^MC$5_B#=^911E05V%X%?+F'3[E"^(68?<_*XPFJ4#E;E+US*?? M2-WMJ:SE^J 8GOMB>GA/)(.%A[[G'2XQ9?1 M9(31F/]ECB@J(QILB6XQR4V0;#DFBG:F@6_/SR&1'B'U<1>M4[%Z:**L4@7* M[*I=:M Y&4T\'E2"4:PPX 0;$XO\_3SYE+8=TT5#,.FK.1FZ; "S@]F2NG>) M]^PBGY=_EG)8\1G53*(B/*"\PU.ISC=%MM&68!PL[ 7O)!"R6XLZ Z?GE0)! M9:*I.REU)[4)EOR'N.%&/AFR)*P8+=Z5&$"FC2$Z';(^- \M/VE.R!^2 M>E6P%[AH<)9;*>QY"6%%@B6B-D'95 ,J\08\]QJ8*-]*HVH=&/4/;#^YV)_B MQ@DG[O "&D:[6N,L#=:#T6D?\ =[V:_M[1^F55J(,:=+U%=EHZ(%2\#[,SI) MJ;F(+;,3Y#E/MA6GGW>?5!;M$52JC*%P[HN@,:%-\:J\Z09?2S.^9%H5G#@= MNQ^DL6IVNBUY-.7*K;*S6Y57,%+O!^R<"3=D"4D! [Q#^.,I;VTN J ME:1&9<^68E-"65K=4Z^EO!S0[=)\OCS69_B30JB=\G6X.G^'K@WTI0+(L M^C ]N&IF=RZMQ.55F>GB.KL)+O/.\Q:1L?;"R65KO/ M:WO,[Q/$ I+:K>@4L=$XH0FLH0>UN&U @8/F%G:G2+L?YQAC']Q]OO=C$47O##S92SJ&78ZL3!=2 M$(*R(>5283772$7,1./8@W!..YKW@EE:U!ST/[ECJ_=9]4Q@:D MX,IQG.EZ[;B\D=%L:"7F&U$8S@CK,%$OB;QY3>#@P;*U%NYL1L/CAX%J8X ] M^?!/V.^E-CREF3&%;2?=GJ2=&*?*Z,27,\.CP$BI2!3MH<+[8180B_' ]RT_ MMGLZICOO+$LA]HX9C\ 738E='[4'[):1EMO27\"P1]8C78*(4Z33H+/3T)>1 M;IW6\:* _"C_E@V%1>+ M$TP;0]0V@:OY2R\*0CE:$(!]$D^9-)C*U&)<59] M1FGF,&OL,'0WR\86P-,3.B'6+9DC]8=,>",^ M.--/K41IZV]L*/+"X>*B>RFC<'F,SC.!, -O9/WD@MN5<^"^L,ST)G):2>,< M3,H>8%MNR:'WGNB&^,8MK^)V%H+]B%V6]G@ME216DAQ^<B/7LTAUG'+CG[$D]?QHOG/L!)^Q>3$="T35L+>O8U&_RVY_P+<7M0,> ? M_M(P#ZJ5/ Q/)ML;HT PG3/J'W_0N[0O\FQG^$Y?Q+GZE?0Q;PT9'VB6%V)RG]P=9 M+Z<_RQ]LV4E_$;$!"R 08M 6M) M6K_"L)#S\_.R.)HD^S(JA]P-1X_L'YU* U.?IV(FS3:^(A#)]U"63;EY+HY, M;)G&2P_)G7 TD3'0)U<*;VHB S9/T87FTC9>A<'#8QJ9I&?N14!H A#S(S;$]:)T?A@[6O'%/#);8]['P:$IV1< MM2>);?=D>H'#>Z6"?3BQ8_DISB_YQE/@9;]&QJ*H^R WGTH-B""N'XS)'*=> M#)K#,/ $B3]'CY56XCQ^Y M>DFT]NEVH983D&.--N"JI\V,!,*R]F$Z6"+-46,) M[@-IZJ8?IBI[D&%@,7K()B$+>1AW$MXL$W(Z(&''CTD(H(V3%D'6 [Q;GU>' MX)[U(S>F_.1A'(^C3Q\_VF-0YNVA'WC![6,4>!/>O-0.1A^QS$@$JSQ +&/G MS(\J"D-%8:@HC(WJ/D;B,>SCFZD0/MTQY<9X>^4FN[NY@CY39?>4U]>5 M3>4ZON4]1FXD?Z:$_K9AE1"3.6U(B,U\S.B!*/J%%OI$3Z0=_S%]V245T\S) MP5>PLEIIPI27)$KSS8A2$ET7GAL_3C$^[6L\>,@=#(0ZY( P!V'@7<1K8$Q'5FYO< M7;)<[N5+VQCYQ0/D53AMX,V3 M$Q#M6Z.D3^VB?1:CB/W>^KXJ@:X$>ND$^E*$@'>=-]V3;Q>7WR^_GG=[VLGE M]=4AI^KN_WT[/SZ_T!)QY?OD8.R^;7OLMIW=*72+'_))J:GKP"O;Q-3LJH;/:@F=_ M_?KYO-$65@^-_U?$H_UB:<,0@V,QE.#3QX_W]_>'$;,/;X.[CYW0'F([@X_, MN;7"CXX56Q];1JW1;'Q$,14II#OT"V\88-<3N\C<%*>75%.65A/)J.T!Y-9!5T63,0IO' MWP8A"V]9N +UI<$>%,]!P]!_*,8;K-_>U&.F>B11HR,8#W;(CO@]=!1I/>JV M&$U]4U(HH;R.**\T7TZC2CJ6@T9KY;;4S#;0:.U?!DI'JF$(PFT9RGR!H[DG MAJ5F?)*:>=-@2Y2Q0/ ":NDV>E9@OI#R:BGE75-6JZ#J]-Y&DESOH*I]F/,= MI,%JM7I@UNO59G5%(NR,0Q=+*4DB%!E_BA97I\5=L.U6]IID_'+SHBVB%+BS M=+6(H*9'^]M6A-B^HIS74$ZU[(13^U=5D,(RM)(:)$)5PAJ5"* MOE-?G.??L0-!MAQ @UJX.5T.\HV5=&&F$YU82P MS :7*H?* %@#DANE1++1QM>U^D?>"EQHZ8^\%8J_E$+S$EAOEKWG,7-%":^F MA&:Y*&&.0M-HKJ+0I)!K*:VFI!1@5'; &V14_F52"UVZIW\9*: +QA#0NPCN M./)(R\=VX@%Z.WT'Z_N0[P9=+RRD*.GOU(YXAB"^NH-! %\^IP(B%$/-%:(/ M'B _$%5-7G#!\O>)!U9'F^;36-H;A:>NW%$EH-WZ__N >U@\\KUFL1N*# _K M#C-5*2%=SY1 31FYH0.$6T^O!Q? MUJ?=S,(([6UWH$QY^)"@6UEL#5V05 T M7B,HS(S%RF5$>^,RXI5RH5$,N7"X4## *QEU#B\Q,%[EQJC<&)4;H])%5+J( M4F$6J##-75!AFB]386Z&+F@;L\Z?OUL@],-'C?SN1OW-U)A\#]$KE9AF,908 M9=R^BEA;NT"L+2+6VM+4>D8%YI^0ZQGKAT2O)OEJC77ZIMZ04%N*4$M J.U= M(-0V$6H]'BY/JNX@AU*E8.6W%_Q2I?B$VE:$6@)"-8L9A6^TVVT1M@XPQ@:' M6,,-ZY?*(O1S.BX][:R F$DHS$2_LS"$?48R3OH'OB!J< M^ZD&4!5!Y2^YX:XJG:4,9%7;%;*J(1=^,5F](&2QP\M4B#+3(NU^OE1[":W5 MBD)K*B9R#237V!62:T3Q3[I3L60(XYI)CC O2T1KESRM,(V7Q 1>DFNB@\.L M^>,+Q_P"HA5COIAB"W+1KRCVU41A5@^-0A,K>_A7H]H"JVNI:A6!'XG2,'\& MWD#['VL$\TVJ+5T=GBR.#5%@65PMQ7@G8#%?5MJ$>&"FO7;"?3IVK%U/@'D9 M5>O J'VP]JED5T=XEK*_D=TPJY4D.K9GA7W+9]'!Y8/''FDP^ 38KZE0^#H4 MFN\"A56%PA*CT'PGO+#V.A0:+>V/PQX(S@1;1K5>>1: [4I# ?!- =@N=OJ9 M@%^]O0S\K@+/M1_)HN%E@ZC5/;7B[89AX+-@$GD G7LK1'-FNHTDGM?,74_. MW0Z_O>3U):H*>*\R\HW#\XM>$=%W[J/MK/W?\?5W,(?!WD7;578#4>>]^GGW M3KX5_;QOK(? #T:/H#?%P!PH<<<>LI&E + & )QTOK]# )Q8GCWA31(UC,?O M8T2,@L/KX7#:/7N'<)!=_A0:UHN&[YWC=XB&[U:?>0H(ZP3"U77W'0+A*F3H M-59B8LUX*&3!MQ.T++4KZQ;;T\4,#5&\,CNU8DNC>ZH/&-CD..)RRI6=[%($ MX?V4#8^QX!U'@R^D-V-/+CZ+DG;Z)EOY_S)U]O/+ I>BH]\'8S_3N5X[@>\C M:K0@!!@(1T00/FH8=(%O6F&(;EM^1RM[)L)'PMVA377T&V=\9^>4@TT.7@(9 MO++WJ:B9ZN2GLI5S=DIE*[\9T??.OUYT;OZX[O;*P,*R'GH49Z)E>M*'-77M M(P,SZA^<_<1[GP9F3%U(P<=&NUK3Q7B\7 H\80C,SD%?JVU-(N!]Q.I$5 AO M;Q[!4?+>I=C?M,^&EC>0CEN*?^%?H)%#-L&N$32@-8F'00B+=DHA5N;TBE2- M(4E1?$6F?^T-M^]*N+&>"#XK%E2:!W]??"R6?ER/2-? M9@3)C/Q(!00*CSZF*0H9(:3"(/"\X!Z+^HY!.@0^96H)P2%&ST@@1(,PVVP+ M65<252C:96,Z(P8[.M0(9>/2I"0\%^F5CP)61(8NBRK M3A=C&(=&,59SX\;>:U;2.#2+L9!3H++\=;Q0,/6#. Y&TZA[@6AZ>L@K_5CL MZRL=<7EKV?Y1/54DBDI(B?3GYR#"0!8H H6CH"65DD(QXP5*YGLAO"=;I3C( MNCG(R= */7C@[X?:U] %^HN'VM_#P^(R$\XS1.\(RU,\8[V;.P<-BGT4:B'% MX!UG(=)@I/W]4/LVN1VBF[C0K$-&F"I>L8XY/SE]Q24*MI!B<(E3RW>9IV%6 M@A_<*^ZP&]QA]M05:RC40HK!&FZ&\)1(^W&HG4P\F*CE*_:P&^SAZ'KNBCT4:B'%8 ]?Z3(9=,UCYOLL MCA5[V WV,'ONV?NEXK&*[8:LJ/A@G)R*#UXR/AA?_)+]_\B[2 MK![6WU)_$R7F!MHYR.PQ5K@#ALT[-K*0ZI'T/=?6.K8-%!1CV-B9&XY2WKWD M,HPGO)>SW15V(CO&QA_^5J$ ED?E%7I#QN((7OFO0 MNZ8ZBS5G*\@.I70(EV/&M=HHJ:CRR*PPTG@Q2'5&!3@CJK\Y##Q,=Q M"?C< M13%/=7 %/;@3*QIJ9UYPKXBK0&=T$6!(=QQD8GC28UO?9@MC*[6T-J(4KM7* M>J6--==R>,Z^2FV&'-,@?;%%J^I5-M6+]F7:GEIJ9Y+_;B''DW^V^+.NO[J>G[_:(,6V_K9V\CIX"2=GF7;E!<[< MR['KB_KAN)%Y$D++.G=+LD-_,FUHW3'-FCAN3(FX\-JV>2UL)):^,. B;L ] M Q[M0Z;>^_[+S#V9).Q1G8AH2I\*$F,%>-53I5AC7!^FHANH>@UR5"]XY7/] M2ZM2%SHV(I&#G'Q M9&98K5D;, ?I$K2_).G6L^ZCA$]8XS%,GYS-X<03Z;&P3E$L,2]I=UY;#CDD MK:I4U VX "[H3&P\OA0P\S8^$HU8D\WC.X(!:5'V4W'<\!4+#ICQND&XB\"L MD>7R \)'X8D'?2PT!3^RHL"G P-38A+2HZU^,($AA@PK9!I5YDI7P'/"@:0.^;%K'1"S%K<(,J=Q MSYX0D=@S>""O)X);CZ2)#U[VH;K6A[W%E4HQ.9Z ,A31+@K^@V,^94%L,.": MAH\L:IK!)=U'7[YX0AR\@=H%[K!@@7Z@11-[*"=1*@*\S-*<[4W0P2;@Q/60 MP&;.).2>'R +W ^2,6[T,YJ+=GDD>;3R#"7H63J=G0*2,Y=6#F?5"!::RJ'6 MPR/*?#E9#GN ;?,);\A+P1*/8I12+DR%W6&"JTW%#2PZ>\X:1BAJ.$-VW,CV M@DB,.7=97)2*K;2\*,A,X,[R)E:<#)ZKYE$E'WP>UF6@/@&PC3!3=T3:W8[P\KCC&SL8RZIV;+M7)!,Z*U8I6^T<3G MQ3X02,$]"C%+?@SC$RHK J ./<88L5 8 M6D+O!^-Y9G M62X^U#_ZXAY= R,/[QAGN;"=J#)KD862(V3Q)/2C+Q_=H[(Y9F'AIRP":(RS M$DSR5[=4:P75VZ&U]KF'A]^WF41]C44,1T>5Z!EP"/T=]5MDT-)$EY\.P?C& M^JJD?R"C OU#L]W0GHQXAP]2?3B93;G00(T!_87XIQP+C0,;^/NA=@IV+9 \ M.M7TJ9_UF6V-@*+O<5;$S?XSL,;GV9-7"< ;5=$+F'#S,!F&!:HW843E8N7B&>_0-1# H=1W'01M& M.*!.H;)*VDK9R"C1PK.V ,D%DE1!KJDXBQO/M:0S3"CQW%8EVQO%J^>. MN,<_T*?+IWTJTUX"?KB=#RM-#8]DU^Q,ZX]H,A;6-#?DYVYHQKI#4W/:ON1@ MY71)FE#,+7QRXR%3L6SR9V+S8.Y@XZ6?I1G$O9_22)'. ?3FC,:ICSY1KG*L M*K C!?]#78W< .ELT7(4***Z2.Z %\^+[&!,O&6:]PK=#K\N^9L= !?"#>&X MXMX-RWM$8TI(-_Y;\0+N2SRSI12C\GZ7M"M',IA,0VZ4,[!-8-O"*9J52GWKRW_M,]"T M&GO6XR>*_$%-X@%?7DSH:E'S06_[;<]A[J<.7SN&@YP[>^1C90_Q-?8E=/Z% M*M]!Q8!_^$O#/*A6]@"(O^VY#W<'#;/=WCNJMDU0/K+#DR*R@7/%W+/G%G8! M;[QT6=5*!4 SMROVT[66A5">V\SO 7==O'Q#C;VCXP!8BZ^#\AI%ECV<1"S& M@,/R[F9.2I^*@E11D&6.@DQAN&0NVR;B)3_/[2! F6S'G>^=BY.NUOO6[=YL MNH=%F@7XXGPV@9&!Z]_@3_.I_,DQ3J'@?_XS">+/,VOB;\[B@3;8I5 +Q,## M5+I;9B[?F(4S3F8S6_->1(^O/(_9!>UE(]77-VA^Y/^;C0_L!6^9?MLS3U[=E3WC\WV^!5CYDB!DU0@Y:SL"QOV3O*AO+E)B2H8R[7,1N;/&:9CJ-X MUCL'LY"5!_QTX&OC!_2KN8X6WO8_5'0-_]DO%N;1.GI3K&M"8\CNBH+&.X%& M?J[C!J&1\,8-,<(<"PL/R*S4P&:NMN#_ZO7]MV&7TB)K+NJ@^@8XF#[T3J\G M;8[2*#EJ?#7^Z[6S+7.@>IV8SUMRH'(=G!I?C5\&PM^ ZK$]=>-$A.OB!7X< M?5)ZAQI?C5\H]K,1O6,K["?YM\U9$297)ZGJ&/Q_9WES2]#(.XU?UW<"\_#U M!H_*<\3^==YSS5]SG05O.1=Q[7\66KRW.=[;VT:E56O7FRUS^K+?G;KAG_@N M?_N/WNF>B!>81 >WEC7^A"?<\1W\3S<]WDY\8H4A5E7XA^5-\-8*J(S1A1:& MG5DQA@S$G_S)Z, )*%?'!23M:>)%]-O>^<79WE%+;QE5O6$V9 "!G/S1ELYS M8V!2N%T.M]4$8.=IX.9!'%H.IHBS MN(22\+E'%8V)U%85?O)DKY.#O6"Q,+]6Y1TUO=IJZT:]7D3>H1"Z'8365Q5S M;X'0JMYL-O5VLY (+8ITVQD3+T^Z!5@Q0@FVK;.-QFL%&VC(EWB6*?N(7L\_ M6E7=:!M%9!X*I]O!:?.UXNU-<-IHU?5&HU5$H!9%RNV,#7KE2(R!H7([2"RO:H$6P\B6\VZWJX44JF/F1XQ742"++"GDQ2,#-B7(7A2M_!;/7S9.N& L9^EY+^), M[AF MS7PWY%$4$;\#UJC9I$G.[W3E@7X-@RA: M69DQ=+-IZ.U60;P.!4+-#@-TY;##-P!H16\V*WK-;!81H$61:.55K&^6(Q@0TYQG,O(XE M8=BS"LY05+%]JE@YJE)115&D]PY8I-,Q&4&DS,]M:_BMRBNB'OGMW94'Y[X^ M[U55-XV*7C=JQ6 @!4+.#H/T%;&';P)24V]66GJ[7A I5TR!MC/F:,>V)R-L M'<@<0,HXQ([8O(T@]G<<8?_(_](;2MQM@I-\6,A*5@\+3$_Y-'/(\-IC^ *X M2R=SUG,YSRLN'MO5AEZI%$8R[A< 7[L,Y=6C^K8/Y5JM4:0\O/UBBWV"M9^7++[[5J55XT> 5C,O1ZO:$;6\HVRN-$N^)6WFTB6#E6ZFV(H&J"A;VE MHFRK$$%1!'1Y;6]X[C62TD$P.)A$3//P[I_GQ"N)7#)FM'*8U"6P(BL&XJ7( M$,++Y>"/B%$F\,J%D*NF7JELQUA0 GE7:6#EH*@WH8%:H_&N:* H\KB\!O-G M;/H^8&'('"VV'G"L[;P8C=6 ^\&L?K3.-&6V]NJ4V4 MDL2[2@(KQV^MGP1 $042J%7?#PD411"7VC#F,2$W>F5EN-6+5>J-BJD;1C%83W67I*^"?PK_5Q:#>PW\FVV] M7=M.#N\J\.>2]V/<#YQ'_ O;I1QIOV@@'!SWCK_*%5=_FYGCWSZG\Z'I3(DD M(9&$0)J>QGC!4V8>\N)G?$ 8N/Z$.?N+'_0^EM-C3+-LT!/'EH^-24'2QS!@ M'&@#U[=\VP4!'\56S'/<#C>\9 ",9GN@8/RV=_7U^/>]6:Q7*K_FD;QXAW@+ MO;5'P\V,=W9SG0R894DVK)2%G[7,0\3OIP88#@["X%Y^,ON1S3Q/N_IZ\<>/ MO2/^!8VO37P[H86IU]F7PT1WO>I\[1X<7W<[OQ]TSFZZUY\TR[NW'B/)VU ] M\]G4A#]K0\97;R+)"HWT+Q7Z7YZR*C[:^YBW4]].\W<*MWP=^W1S>?+=]7^N MME//L17M"2J7%"("3+,+W@Q=GESUM)ONR;>+R^^77\^[/>WD\OKJ\$L_A ,Z M[GSO7)QTM=ZW;O>FMWF2%"= G%U D 0;GJ60&,G?T=BRD[_YJ0-CN<&?YE-S MOB&R@C"CE6XEGO&\Q+ MNX4+A'GT\KPIUE^43**@42QHF-N&1E'<_!NX;Y=V5A.TY.VY_+^?=X[/OY_? MH$G2N3C5>F"[_?[M\OMI][KW/W]IF4;SL];]WS_.;_Y9+D5(C:_&?[T&IRXC MWXXSB7XKFN=:?==S8Y=%JBN&&E^-7RP>5-[(Q)DL_0NZ2!E;C^CKU)-N>F,L M$5'*JC9YWIOBW ,_<[^;EX=47>9^EXZYXSO? \N/KOAIO[+U5ZVA-]N%;$2@ MH%H J.9EJ2P5BO 64*WJ3:,P!6F**._*JW,_+>@&BX\3D5=""5>X0.-G.$5> M+L]20DV>Y7J8A*G7JW6]TMI."-^.B+1WADTS+\%CV3IL:\2FH;>J#;W5J!<1 MFT6183MCLP&VP@ES-/8P9G[$RAC4_M[X1%X6S+(R#,_R>^H.?#6KJ#3KNE%5 MEIF"9P+/O+2(9<78>N$)(E5OU0NI8Q5%CNV,+99D2(?LCOD398MMGU'D)9 L M)<=.X%>=FE!-J;XE2O MFX9NF-LIS/5.I-O.6&E48":YYW_B U:IL E-;X:7P6^%5D]3RH!V4]# M<)4N7C(U9.5 N?5YNFMZI='2F\WM^*V4!KZKT%\Y\&Y]T*_KU69;KS>4WJWT M;C6^&K_ XQ>%\$NM=T\EF6@>BZ(=<(873KUX1F]8.0SW>^#?WK!P1*DUOU0H94%<4\57>F*6<."6-2D@8GS4/ M, ;4$HZ4^-HZHU@Y G=A1,A%X-NOLX6KAFXV"\D[%%*W@]25@W'?&*DF0+5B M%E+[*HJ8*[65]EU*,]$], E=*J%TVVD7<77E*-\Y01JOYSU&4W415'2P:3I8 M.8KXS>B@6FF_*SHHBF!6]R9J?#6^NC-QP?B_K+P0\B9A^X#P=#UW&8_XF3>:/: MKJ6SP:\_(;!WM^CW/OXRAU;?RJ$5A?&56C?OQ8']:OQU?C%8D7EU<&2?XT6?G^JG^!!.]'1 I15P+%T[:_+2*ZZ"7NTS/>J>T>5 MPXJ1R#?ZCS:V0NW.\B9,UZQ)/ Q"6)&C+35@;T=&36]4#+W6:LJ!+'_)7S?IU[5&!7[=F)U&,(FC&(;"QK5+ MC=:BT>I&6S>-^HOGTN9SJ<-LIK?RVA]'0O<8_62[\FI7L&AGOLG M_$A7OE"IZ$:KHK?:U2+R$87.K:"SMGK1]_6BL]K6FV9#;]55ZQ)EVL^1C7+/8P=X1&/C->DUOM@M3A'N_ !#:9;2NG)"R";36=,.LZY5V86)>]HLE M_G;:R/M.I02"*-:"P5+.T48%6Q#H9M-\J5NU8>P=&16]8B3N75NXUMU8SO. M997"7B %1XVOQB_R^$4A_!U0P#,I[.0'WRV%_%EQ7P5Q[P03+(X\(^__6E@5 M9?Z<%^HHZVC,T?&=]6DLH*DW*J9N%$1CJ>Z2MJX((R6,=;3M6#MA--MZN[:= MV,A5"(-+](]Q/W >\2^L^7RD_:*!0''<._XJ5PS^;6:.?_NF,R7JA*03 M@FYZ&N,%3YEYR(N?T6-,LVP[&(TM_Q&3B7RJJQ\'VL#U+=]VR=5EQ8S2\0\7 M3V;M2X8=UFS/B@ _5U^/?]^;!4>E\FL>]8AWB$SIK3T:;F:\LYOK9, L==NP M4A9^UC(/$;^?&F X. B#>_G)[$T$/%.OLR^' MB1)YU?G:/3B^[G9^/^B1(P+U? O M%?I?GM8H/MK[F+=3WT[S=PJW?!W[='-Y\MWU?ZZV4YE7^.*7[.^?HU'M"6*7 MY-4":+.;L1F:/;GJ:3?=DV\7E]\OOYYW>]K)Y?75X9=^"(?7N^G<=']T+VYZ MVN69=GG5O>[]/BG9Y?7VLVWKO;/;N>ZIW4O3KNGVFGWI/OCN'N=1I5T M+K+OBJB2S5.^.&CBN +I)' 0,H*3)W]'8\M._N;@ OYU(PKTYS"-?,-C!2$S M%4)4H5O8+T)8@!F8SN4;LW#&>YNR#,OA[ 'NA(%1O^V9N0RH.$[4S=G".>N? M-H^1AM^T7,247F^CUF6!.A_NN*@;\D[JQ*L^%S%,+F;,P&.6U<^@^V-X$B;(310S^ M<6ZLAY4-^*9>KU?T1JTPB1Z[X<1Z1XBNY2#:0!B;C1R64S(7C,<\PC^8:9"D=Z548#%8NY7#4T%L@.VN5=A%M=H7-[6"S MM0;!M@9L-O5JQ= K+=7T=MMF99G\ 6I\-7X9_$FE5E9[S// BM"U6^:ST/)T M2DRPG)'KNU&,W5WOF,8>QLR/E)^I0(K%>@SK]AIT8X&@KQP_8%MWIL#3Y=A9 MO;6:83;TRCNRL15EE( R&I4U:.9O31F51D-O-%27[$)J\ML2Z.>^'8R8-@B# MD1;P_NR!7T;)73C&\PQ',=8@:R_Y@?JW_)2_@^6_LO=:;[3;>K6A2KXKC"88 M-=<@]=:(45,WJ]A75_FEMFV>ELFOH,97XY?!+U5R-39F(8MBS>7Z[ ?A@]I7 MFNS6M81U) #(\^5*@C"%+]C*5UBF6=>;]>T$)BEEMI P74=4_[IA:IA%[2!9 M%*E6ZMN6RWC(PET0:;OM/%Y'^.Y%X ?3EO0K_<5F4S<;VVFAIJY1=I42UA&Y MNW9*:-0,W:P6HYZ3NC,TS3&0=$;RI,UIF MZ+K^! CQ,KDB.Z:3Y]^[L1Y8U'V(0PN8H.M;X>-YS$81<"*<2!C0O:ZT#5:_ M@6G73;W:*F1;4X7U[6!]'1'!!<2ZJ;=:3;W1*$@OHF+*UU*;ON>)1,7A[Q]SL*P<,-4R]4IK.\XW90'O*"$T MUQ%(N&9":-8;NKDE4:SLWX+*YPLF[UK+*(M5B?64(ZTC$!'0LHX0Q&JSHIOM M8L3VJY8#.TH/ZPAZ7 L]F+I1-?1:I1@1_SR@4J\1'7K&PAVE,)2 7@%, O#E_<+H#-6E'#B8HB*W?07G1<;X("5%F, MQ>4SJT0X+JM[G_+S5S:CPNW:<;M*M.+&<*NL1F4U/K4:\\2ALAN+Q59>'#SX M$K5;\)4GVO*POVU#N%DO:HM$+C$_B@[5'ZFY M]FP;]_YG @#.[E)[,?88]U[>KKQ1\_]H[X%S2^-O'M!#Q3K[,OAXF2=M7YVCTX MONYV?C_HG-UTKS]IEG=O/48R! GU$)]-3?BS-F1\]28&T@C5ZR\5^E^>5B8^ MVON8MU/?3O-W"K=\'?MTT)8I=D%P)HLYNQ M&9H]N>II-]V3;Q>7WR^_GG=[VLGE]=7AEWX(A]>[Z=QT?W0O;GK:Y1G\=7GR M^[?+[Z?=Z][__*5E&LW/6O=__SB_^2?_]MGEM7;SK:O]L]NY[FG=B]/NJ7;: M/>G^..Y>:]4*J.>@[VB=B^R[!KUK;IX3B(,G#BR03[(&(23"QY*_H[%E)W]S ML $_N\&?YC.1?$5_!?E"D'!]A_G$>A[(N.'" \RN="[?F"6$YF8LL7*$I24] M[!L+6??;*0<%;V(O-V"V;2.W-N/ _OFFW>S+%6:6CO^6&"OKGJDSV;WQU9D4 M;_SRG$GBO%9:U+L8_PT]8F7=,G4DQ1D_L37,7%MC S[>[=@08F'3)L07]Z@# M)C9Z92WORT?W2-D1BOS*,+XZ$L415^6(/72H'&R8&RHM6*'Y3=",_[!1=D*? M--S*:>%;,'(4)A0G"1(]?/RHT*#3 %X:!Y[ P2O @PE.4,:7 7\*XC-5H1*0' MN%$TV:0G52+*ML1OC59#"DL+2*['DL(%KN['" MDL+2J[$4LO$DM(=6I#0FA:*FVF0 M'%N>Y=M,LV+ME-F,+L+,.N7!&"5,V%Z^LO7"*;7?9T7N]DP!33=-GJW_JR=3 M(;O$%DZ"T3CP,3.R\^!&!SS/@OR.K *V4?K1(MCFW_8. M]H[,AF[6&WJM;1:C$DHN:>T=[2L:*BT--5>FH9N06=$D?"2ZX.KE M^IZBH!)2T$(":LTGH(V9-%7=:#3TZI9JPJE67L4*S5'CJ_'5^&I\-;X:7XVO MQB_4^$51_$K=FH.N&0_Z&!.#EZFW]"4?&JX[BV* M,:'G(-1&% 8V# &BE.XO5TQEBK<_G:7@AWGWY,HIEK?-\&< M<4B:D# YRT:MUU0I( M<4O%+14&% :4Q)02\$C8UHP%N8Z"VTW8M%N M&NQ%8CMYS:5?K*B_/%X"GD]#U;SF_X6'D].$E(27J"J2LW,#0J+3U M9F4[ 7U*T!81\">ANEZXZY5V4X%=@5V /:\E\B;],)L#?KNF M-UH%B3K5:+P@-+ M%AQ]:9>*W+?W.T[B$H=V''!8I#==C J8PC'TN5$MJE> M+3?'HFMA>35'=D4U4S!3,%,P4S!3,"M0\MW<:2_4W9>["WZ#7'#0P\Y)#?L> M1-'*M[VZ437TVI8N7131*-ZL8/9.8/8.>?-RUX>*S1;8E5+J6)N\&H^ $ZSQ M:.Z T""2VD(',^!6W,IJGKS4I= MKQOOQQM0%#_F1D+"RE2D28VOQE?CJ_'5^&I\-;X:_Z7C%T7Q*_4%MBKRJ#(K M569E$3"PR'.0%Z):/:@8\ ]_B4Z$RGHO4K=5WFC@/C#GX+\L#)YX+Q)B*(+_ MKCAHW=V\2S.OH,Z+":.,E2\K-;VI:I,H$9)02EXD[8LI997;4"5'%'44GCKR M*O>\F#I6O.=4!*((I/"*5FLI BDFT-^QLE04'UBIZV&H@JF%93MY%:76ZOC8 M=L'4FJ%7*MN)CE6"MH"(K^95DGIK5]\&"Z;6#%4=6(%=@CVO<#J=JPJF*7JMBE8+809HN$ MW5KB#%[HOUJJPE=!S15%*#M**&L).7B%[TL1S:X3S?NK!UE=+@RAJ+5ZP;1J M5G2S78SD:T4T.R)IUG*)OJ+K34F972>8]R=E:LO=P2N!46 G7:D#UG*K#E>H MZG!U!]QVNU5UN)97>.NM M_66'6X43'T6FL[4;6J\*.JN(6DDU=QZ^TBZ-94 M=;BA5PQ5=5B1S?;(IKHRV12BZG"MHANMBMYJ;Z@6KDJD[1T/UE6FH.%6'S3H(I*HJ.ZQH:"O:7&,^"6W,J&GJ M5=/0V\W:N]'(N"/S8]P/G$?\RX)M/])^T;0O'QWWCK_*]?[];6:.?_NF M,^7A$PX^X=^;GL9XP5-F'O+B9_08TRP;*[Y9_B/LC>8',0P8!]K ]2W?=BT/ M'BOX:W2X>#)K7S+LL&9[5@3XN?IZ_/O>+#@JE5_SZ$6\0X1);^W1<#/CG=U< M)P-FZ=F&E;+PLY9YB/C]U ##P4$8W,M/9C^RF>=I5U\O_OBQ=\2_H/&UB6\G MX)EZG7TY3'SG5YVOW8/CZV[G]X/.V4WW^I-F>??68R09 [J'?38UX<_:D/'5 MFXAQX1'_2X7^E^__3L\EJ[^=;5_MGM7/>T[L5I]U0[[9YT M?QQWKY.; ZUSD7TWV\5PHY0O#IHXKD Z"1R$C.#DR=_1V+*3OSFX@'_=X$_S MF4;^?,%]I W"8*0%8Q9:,>KZ:'K=N;'+HD]OBHIRU2-7XY=[_*(PJ/+F%R;_ MMG<@US#'OS3/LVB8QFN!JJD; M54.O50I3]*&(LJV\8;DSLBU3ZQ2=ZB$#D-JNQS0_$7KXOHTZ^C@,[ER'.5K_ M42GI:GPUOE+2B\#(S.9X48>H$NKLSSVJ:+K/SQ;<+F$I;072 MK8"TGI=,]U(%?N5D@U9;-RK;R310$J^0D,TK[?M2 MB?>FD*W5]695R3]EWI'\&[ P!-LNMAYVL>-)X;C'J\AEJ[K3=5/P<%WA2\>:6.7RKZ-@->3&RKU\PB@K%_,7/&R\Z+WT M>W#FP7UZK+.4M!T7D*@JR;[;-"U-8ZWD5D5\J$U^'V><, MPFJ1PA;VBR4$=\ 2Y!$+)T/+OX7GH"1,@Q"BB,41B4'/M?JNIP(2U/AJ?*6L M;U%9[]@VK!ZX4LALYMY1FB"5B35 \(>64\9HXG>G]*PC@OBI(T >_75R\JNJ M/ W#P")1!5-Z%%RW8U:N(XCX#=&:6I:&7FF;>J56R'CXHHC"'5#9EQ"%03QD MH1*%6^\I;+O%T4\;R>G]XHV+JM::*W-LMY"Y4XAKK"-U[,^@>-5IU MO=$H2%FUPOFM=L<>//?OF!\'H:O"%[8O[AKKB-=[RC,R9_SZ]1NU'2S79A8O8()N=VQ]*Y"-K9<1V,/F/[ ^)4, MF7B:/0E#@)FXJU$BTU 7P;AV[&+UK3&]5"JG1%$96[8P\F3M&Q]8@.!B41M\Y5 MUA&V-_]^Y8J?\\KRK]W23;.0S$/A=4L:W#IB]MX*L!E/1J.J5UN%N0M4QN'V M)%XX8:EQJ"3>1B0>EB&6\SB(F'W@/AP,7<=A_J>$D32QW$!--UL@7_#[2JJ4 M&A.+IKVYG2:4RB=@KG,[GQ+ EBM+*N.X$.G>(;MC M_J2,QO'2!?H+)CV6GO=B(?,V\48G,"0^[D\W'IY,(I@@"Z7$64.'/+W6:.N& M41!39DXW@Y*)H=+3R2(R:;Y-;--;D D&_=;J>F5+E1;R:.&]R/4=< %4&S0) MK*6_5#%A)?!+QLC6$7 %Z,%N,5<".\>/?T18;>-2XJ>3P&=U'F8VFGJM7HR6 M[,OP,$4=9:".=01VO3UU5/5ZW="K6XKS>L\2OKR6^^>G';Q<_XY%JCF &E^- MGSM^49C2#I@=O&;(U22TAQ:&HZJB6<6]=VJNHZ3DE?5(W6QN@HX-9QNRJ1)$ M'=]Y=16BIM'2S6:M&"[ TGG[WAUHUU%*\NU!6ZNV]6:S,&4D"Q:"4U[M?%80 MAH'-F"/T])TK([G;/H9U1+=* )T!?G)*_"W#JN97IMQ204KE==M5BEA'^.P: M***X=2_?L\MM!ZS;V4NU2<0OU/(<<$J3GP?"_Y\78? M6&B[H!*M?#%AZ-5&83*X"H.AW85K:QT1[V\&5Z/>U&NJK/5NZN2SXH_?VF)# M-C^(69D+N>RV(Z&UCMCU:S86M_R7@PN$RRO+P=2J>J,HU4&5-VT'B& =(>KK M)H)Z0Z]4E<=,&:>+;L625+,/>#^VCQ=D>:XT);;+QK'6$4\ZQ_]_)@&T1O^_ MJ5 =9\566\ .Z\=42=(H_!?[OIR5ZS* Y=.V8.?M#QG>DW,M^\ M@H4$SM,:&+8W0>KN/MC44?C:BEEW,&#VRF%Z]5I#;S6WDSFN?-F%!/\Z DS? M!_BKNFDT]%JM(!ZI8@KEC1C?9;K25^.K\?,$>4O@G\ ME=T/+=UL-/2FJ@>EB&JC1-7*(2IN.-3?/U'5]4J]HE>-[5SO7GEO[Y[3 M(QCV$2RO!O$L&ZD"&W&"2=]CLWSDKX5E??/GO)#WM7-XW]N["3>F4+2,JMXP MMW/1-\O[JKND4"@:2VBL75%*>Y%HK"CZ1:G]%+W)>.PQC#ZS/*YC8'*=YOH< M6X /E4VGQE?C%XLEE=?DF4DG(/.'FJ<#/\+PAF#$M-AZ*&=D8HY +(Z2]8SR MM(YT@',ZWQL\WBLX\PNV\LVK81AZK5Z0P,%=,1W>$5K7$;>_/K06%*E%D7;E M5<"?D78Q"\%J5)*N6+QC'1'TY^)L7\DXZGJE74C6H8!: *"N(YA]34!MZNUZ M0:J<%5/&E=>BFW4R.6YD>T$T 53AY17@X8"'JO.TB$?E;U+CJ_&+Q9UV1@/' M)!HFZJ$@=RI[V:9WK=^L(XN&"N&<1]&$.<:JRHU9:>MF>SO%J'=$#R]<1-LS MT%Q'CLLZH D\NUHM9/85%VT?XW[@/.)?6/'B2/M% P;KN'?\5:X\^-O,=/[V M.7TT/7F*YPN6+SC^]#3&"YXR\Y 7/Z/'&&BT=C :6_XC1GKS:DAQ(,LL@"8< MQ59,6G%T^+:3F5DP[*]F>U8$(+GZ>OS[WBP**I5?\X(LQ#M$6O36'@TW,][9 MS74R8)8B;8:6Y&=K]V#X^MNY_>#SME-]_J39GGWUF,DHTE07?#9U(0_:T/& M5V]B_(+0D/Y2H?_E*4_BH[V/>3OU[31_IW#+U[%/-Y2U,\24N\EI$[?7+C( MM3,X/,E?L@#('"X7#!>3$1R:O9PZ-2VECB>1Z[,H.F61';JD*'=\Y]B*W B[ M?K (K7Y\]P8&/O9 I.UQ46G66T:K!N/!#ZTQTD X89*EO,WI1\",IR@.I&7 MXZH^@2@&HO=<)'FLH?(1OPQ"_B6_^L)&V7E_TEQ_"/N*SS:^?&2C(SGJQQ<- MNZ]=6/$D)(-$;G:A]B(<,0-LRC<;G$RY)Z:_F9RT( MDP^N>N+-?5G4*-(LYPX(#\@7%"4X )2U@3-0\N/QD'(P:EKU@0L MZ2!V[YBN,9^%MX^ZAN)[@@7M/])=C,]B'1B7!^ M#I_=1G8P[U%251<<>0,,O ='X X S'[< 85U@A&GMU>!Y]I B?E,V]@1IFV^ MBFGW)B,B#D!<9H^U=),UN@NDRA#L-^]1\UQ8N2-Z M@HVX&'%CV!F4-)-0" H\MOEG$0]#QL1YN$?:"#X>1JB9>*"?87H6BB(')".U M$Q7=ME']Z+,GV5PET0F(]F0L7?&V*X8Y@O,AMZ, MR-3!$2>^'7A@LL0N349.L&]A6\0)Z- ::MX!L,=H$I+S"C43G+&82^A&/TEB MR MZ4J''S$:%1FCIP%UU8*WP,L3K23"N0*6&MP D?C#BM ECT:3(,D)ZRR:9 M(%O$WF%H2&B#"5D"[ $>$L,LY6YTG']/)+<65ERZ>Q;\ CAL> L_@ ^#)&%* MJ/EH%+@!LGQI,&2>WD>3#O?QSG(].K5X".>VF/_#23QJ"?^WJ%+4]*0.M:R* MGP7-R *+$OY]#@*XUW^=?]/0,"OU51-#._*I9T%X&DSZ\6#B2;J]"MG(G8PB MR1I3,GY%S4J]DM.P5;.BYR5MCA T]*_%MZZP^37)6!'R0UVZ]W+C8)Y MW7*DV &10WEDV0QX.BL18ZH#QR #I("[!\KF_B&8I?:/S@V/;.X_:B=7/5WK M3V+-F4A]&(2H^!#%:'>"W:+AH!+IPK5S(1BB(6\=#2+AW']FMMPYG\XO9<$# MUV,\T!K?[%2#S3<,@HC]4$SN&9WS(=/>BR\ W5( M^X!ZC5GY?'Y-;ES3^+R/O6->RM'3(QX&]_"(D"8B-!]&4G\Q2*I<)BQ%<>LG M;-A8]H!IX"SGJF^E.]5%EX5+W*I*7V/RB\Q]X;S+PRU?KK[V=O7%.S9[O[K* MGA%-31U]%@L2)D^^HXQW"DT'5@(6Q^-BKV!+V>N+]2Y[7Y-;639?=&9=9"!2 MQ(TC37*P?T!0@!BW@PAD//V_*TWC /<]$IO8#-U3QR@K+)N#' M^SJ:,@X(W7 $6^OP7:;G+!9F S?$'"\AOPY<7W_9#P)0I$8L'H)M^^'L_.P2 M)@(ZC<_ "$?WG%+,^A'@0<3)C>HW*;L!DC/0,AN M81ND7R "'8*;\9/(NN5ALA,RJ)-1=$S5YE5-I@;/7/1QU>NI'R'?Z7&+5[*P MU7S*$0@^T!W&1/+>X0#9*3 1"&<%9]QIY3-/P@52Q2 M]P=8[*#+8B3VQ+-">DF+L9YS&-\S[V[68RS]$KB??&X(U.6GE7A)Y YJ)&"5 M1WD[0ND*+95/,V;@%/PXMU*T/<$.1O\-W@CLA MGJ3?%?DY&TP\S7,'3)P:+11,=]+-3S4) MN0,:Q*4SX=9Q9D7HM5MFV'9RS\;'!4Z_S._,RKSI#"8A6,XRTB08#- *329V MJ'W'7@##P'-D1 GW-^,1.'++<5OE[D7#((RY&D$Z!;5?025 XYX%-\QNZZ'V M SV_S,_$IHPM-XQF_=?(UBF."/W7]B0$@7FH_8'N^I#%;LC]_RA 01CKW%V/ MZHN(=N%0L>W)2*# F4)+B"X,D%__Y7_CHV%$6)*36.PP;9"H*%K1G*FG67@^^!?_L=L.)T !.+(S5JE2=1GTK<38L[!C99LLU( M%[B]![2_&M_@4LF]Z?O4.Y?=1\!<8,4>K=BB%?.B&.FNH#I/KC[;#8'3H;5F M"\,$N-!$RX5;*'2IQY5LEV[>7-\149S)9R [PY R-KB;-UK^%G"1PIX: M;-S=;:, 09Y^S5_*\$2<%S)5M, 2.RPCH7U,G\9Y(:_F[O"D:A^RYRW*+OK&;-KOM_<7$N!C91)S;*F;\QSSH+PCVA>AUW4*= I?@^6 M5,3\K#_\H,JMK]E;3'>*6/$.XPE\-R^ME%=9>9655_F%VHVXH$*V?.N3,KM8 ME7D2"ZU4F6E59K"?7/IE-E5[[_I+AOHQ*LD=/$X_5Z[9I6 P7/9_N<&#ME3H MD/U'E]K+>(@S7L.#*&9CZ?#E/N9,1'E/N*PQA<:AB'/:[ ^=WLG^,T]I5!IZ MJJ2(:UFY"C(+3^ 7*/'$;?Q)XK(5-[>E//T@\NMR,]1KDC M/+*H_QRXWV"F647:Y?-%O[L]?7)I6 7H8]9MR(23@S0U[(888TX,:$0VH]L# M2OD5D7M]>#A7K>7U_[DO]&9>,L/2!K B#ST9F0=E-4/4 MD#LR<\N _T)/*7 M_+ B=*3TZ'JAD\Y*A@C\Z'5DB$ :>8#I.^A2F(SZ(8A/*[L( MN5GH_J+L+W@@7U F,I%3D[CF2?WIMN5SG[IV&P1 69P6KGK3D^#>BE&$+OY( M+A-[Q^36965DL)7/!?"_ND']QYS1+1Q$LPC9EW> MHSFG[MF, @ACU*:Z7!FMK6$"# M/:5$=+@"-TI24:9/:RHS49!:Q,1$XYP[4U TV)B<(M(Y/7/\*=N92Z7O]XR7 M$.!7F331RU2N2?*1\GU[TOP,T,0LD$;R.*81E68VT>$">;H\P4CR^T0JZ'P8 M@(&0;B&YZT%EI#&YD, D!:DR.%,YM%FAK^&D.&?/S@49%_\6ESH"[9K-0HQS MQZ(0&.^7N7;"ZQ )S$1H/R6*)P-;CR)H,X#%RF&SUU5TK>X]4CP&71;@:L5R MF/-^$?T<6GI#=SPFQR7LX1#^SZ,_>-@"B@WB#C.IB MP1& 6!*))PA 1QX*A?AB+ :S'!HV,Q6L@S/Q!A@G2E>0@+HXY5QY4";=ZU#+ M7^2 $;.&T81S59A;PJ4;6=@U '9<0"*Y(IL#C M31T./O^%)@?*CL1&L!*!,(N0N!GQ;#JDPC# M*"UC(F8YQEE*%IP#IXS M2+U?B#\+WW4:LO!T+T!>7 F6)((60Y82*89(HOZ!.<":O%83]X?T[9#%D]"? MHGUY"B1K6(15ZUQ,J)^*JY1L4/R>QQWZL)51A/4@DFL]^3E/G.1<*0V(G+K4 MS$8_I-P$I*;MCJTXG2NE/E)LA-;#&\_IJ#QB%MB/"J\^MCL4]]V'!2Q/VITY"7M//H$@LWW6K,Y3 > M9O);.=)%(M((PW@\]R<#378>#^P[20122@"!/MI2JU%3A]9"P5Q%D88 MUSN0F..D]0))1G!/8GLQWYF;'+%4;0/O#B_:L^N=C!TZ*50VDK1CF,.<10MQ M+MKMDBG%L[Z)_?'X)**: 3(U$7) 1#MW]U][49\-%9Y_E5[-:P&P[%4Z99-) M(_A/P*UT;U\3"/&>99?7=^#D/='M:.19^[3Y0GS2O^$T5_ 4/#R;A_%N$EWF[!;.9 M806B+"H\.BGMI2(F5,3$+D9,D#F"Y1G00)YGC4A9.\>)N3UCY=S7[MPPYC<1 M6'(I]5 _U1J0P;F<_5FISB*UUM24>&*L!/T[-]T=GXE\(E*+Q+N"($"7"BE[ M(#^E&2HNN ,ON>A8VB35G]P2DSX9\5NWK%,+[TFQ\L 8C;!*. ^YA8GXT(2L;DSB8Y3SR_LP\ MOO[I)1-.,$HO@X'.2(>Z]7ER0W)KA&Y9TD1U.7_2EAWTPM-"Z(J1M@)7EFC7 MR=K&$\^+,KEU>$LF-O\>D#4,)A$WAB?)W;B;S06A)$6R5JR,2T+HTCB0\-:2 MQTP4*I+WQ.(:5-KE&U*E6ZL6VA'%&\1._1"E4B-JB@3+Z/C.#X;WI*>V?J4['F@*"V/S'*6]'9(>&\CX>.A4(F(E\OB;$5DVV!-* O!*YQI:;J, M .E],/$<3B=+9)*"EI5JP)B-) L%650Q\9D8"R&"PP@N>'BJKF# MGDI,ZR+/L5S4;ARF$[ 7^;I%QS%^E,+9,@"236YXYMX#43VN::N'@H%_VX-YUL&_2PG=QC*^I8GP7Q_C>8@D)ZLU^PWNSO^_8 MWKF<9R(M&4KI($Z<5A87,;D8<)4&Y,ZVK3\4UYQ4*8O_@A>-)YD#7Y')3MFQ M9?F*1#9(13%A0"(5"'^/LIW]9\+HW@ U*38:P[F!CN:X>&W*/^BS^)X)I2[M M2)-Z-2FB+)DWW5G0:/-FY_,K_A&S(BKNP+W=W&MJT11QF-"*Q9<]ZUY<'%O9 M4H_H%]8'AVUC)V [V8 HIIC(:8 MZV??%7I)H?+2>+SK?$6_5EU5T4^D2?2I35^.E(I>45S#T#)D33B6Q5T< MK.:E $A_S&W\$+/00YX9C_N%.Y1VHRT)@;\W%:QKA1AR$5VQL#<$6;!8$ZLJ M36RQ)C;:WHT@.9 V9CWX*V,"%F0I?OZ9@1>KJH,!@.XW#?7%JF MXE [=3W*:UG7O*+)*'&L+3O%L3?!'D@\'!D_"]?*\:XP9(.Y((4O]\*O[\",@FOB%BN&=WD M)9&@:7WW3#.Y&0%04P)@L0!P,=UV>E]+Q?5/A&HIJW.X=)4(W ?=:8E)D]=D M-'ZF15D8^ &:&J.T,]1B MY;&N>,=BWO%OXAULIDG9U#Z7BI>(?%7^$0!R$O)+U[YHLJEGFZTP[FMBO(\4 MCSJXS[KZQE,;)14CH<:EK6!SLO6UXP#_7R8ZGW5ZQTFFL]8=R/R 1<;OWRU_ M@CX^;OI6A>]C*EK8 8T,)H2CYY<,^(.B(I-I='I_)"79%Q9/-QKTL(-%C1BJ M>K:^NGOT@SL*9<4<46?_>U)0+MVO)WX/KIPZ2=!MM,S=&?=L:GLTF5P:1KQ$L]Q6":A]=RK0\>@_')ZKQ!!Z1AX7YH44-$%27U" GL0W6%K.TO-2:1?V;%?1B2HZ<8>B$]^9SOA' MQ"X'79F;,:,1JHZASVB$/_>U/[A.E&RA%%-7(4_\%;(EO]=]B93%&XH%G%IS MKI7I^M*J2%-R?L#= 7XBS:2%)<.P=^2-QA3 M30!E&98T_X@N8T&@CL8RI-$FJ?V86(NJ3?Y9$:B77WAEWZVS^CXI MDKJP #'I9@^4!7M+19*3_#HGT\E0)/=P?831KE(PXTN:!O\>W3_LFL\*#K M.Z63'T]IG=9+D8",UW"BTB@6V*D];$2-50OBG,;=M8KJL?(, Q[M M\RB! ]IF[4K4]2LK%Y;!BE':/@,50-D(-,D8DGGV3ZI@8*6<>_2DB?8KF'&> M.BO3.@\X/-V-/.#>4]]BS[YT'/'F)C,1FU@-F)N,A1X# /]S(IN\+MF:DCS,8[)!G= M2DQL1TRP6Z2^:VD>+G$O:*AN),\(!A\$ ]]7+=G8TDH%WGT$*X-D>A%1[3+R M(/"/Y TA%>E=(E2V88KD'QXJ&_'=?,([,4Q=5"!BF%]I.7<8TNZD]Q11@-%+ M,"4]TUQ[Q&+X"+X3N@^\? )R\8@N.M!),^I[&)L-K&KHW@Z!EX'V"\**X3U1 M&/BN'64J+%$VIN7%CVDA!C&E25\,YL[6C[&\*'U2I&'V)\9T\LAQ8*^T;RAQ MAH_]T!7%4%R\UA'9;3+R@BKUI84E1KR#-;JJ^B %#T6MY?0+(1-A&51-PK_U M&&Q#^).)W'&.6?+!12X@Q<*KAU"ZKV!R]_#X WFC)V2G\+CDV6N9$AWHJIN$ M(C]/:!#SMTL(:PSM"S$;(Y[*+4;)3&X\/TW2B,D@Y(N!QXFVUKKT\Z2?+5&Q M,;X/7E 81/1;D]_WX+E>]*1!6%(%^"D0!';#4<"W^R<*3)%[S=_-] '%O4R3 M1>C\TT_%12!6SD*!32H8428A569F)S0Q/1?TBB9$C,&:@.LHH6;192?K;YO* M L1R1E)'2E:'OL)[5!2X8_2%]Y_DILV;#V7KXW3F3$9<-6,)['I2E3S2 M9Z8@=;A9R?V&S#E;]U@^:G9A]![>E_V27+#]DKU"6V.WZ=/$'3ZK3YCUEM&J M/4D6?$OM;(LJ1?4U*D5I.TYO(]$I_76VU_*4CXN,E@!3Y(#S?-I&Y,(KU7I[ MR)R)QRX'"1V>\"#-&ZP4ED^)3Y)%Q,5Z3,7%>(@!95_A1?T8X^7]V^1OP*2= M_,VO]($YT].2B(&IN(1TCS3:)"V[I=K_8,WWSS,;R]_4-7H;-8G0'7S6B'1< M'TMQ?](JXP>D\[@?.(_PGS SEV_,PADGLP'U($9[6,8P](,8E)75YS&[()R& MDX>7UPTJL1([&QG?#O!H_=_VS-S #\I-6-^>:9PL#C">! \SEJ$M!_QTX&OC M!U1@0"D.;_L?@!_@/_M(Y_G$^:K93!&NB'L4@)M>OZ!FC6\A]]0#,;_5*6F" M^K*[HJ#Q3J!A;AL:'^/PZ!?DC1MBA#E19GA 9J4&\KC:@O^KU_??AEW*D+0F M2)Q-XF#ZT*^M^\0C$>6>OI2,OZY3_.2S@S=XU%/2W#OZZ[SGFK_FDLE;SF5! M^GJE4EL]?5UH5G"\296J.4GJF*!^X 2DXF-R>C9+_?SB#/B"WFH8>K5:?9*M MOJ7SVQAX%$Z7PVD]!ZJYE%Q&E1!%N]3C+M+07;]H39GT'X MDV<1DI^QA.+LN4<5C3,T7BW!\$S/_2M^HJNR!D.OM:MZO55(UJ"PN1UL-E\M MM=:$S58#L&D4$IM%$5L;L,>V)[;.L/[G4)8X+J'46MH;4C &LO2\%_*9E:L- M)WQ& N0KXF-5/E.O-O5VL[X5+I/G^-D5L;C;X&^_6LBN!_QF76\UMR-B5P%_ M4>1N>%KB"6G$M"54 @7CL$LYAP8ROE*L4EGNBK'J.FMM@G_5HJH MEBM,;@>3QJNEV:LP6=#?>7R=RU M@=^HM_2VN1T7R@O!7Q1IO#,&Y$T06UX91>^S=%T%NG:""0;BSA!V<0(8EI_S M0E[T^H"<"S:O#]P2%FF]9>CMZG:$[RRWJ>Z2"U?10$H#KP_V>14-M)IUO5TQ MW@T-<$'\443]?Z2$A4PIP)G$)U6 4A6@W'X!RCEE*#>?J?<=\SK9I MD]K'/ ^>%XS!-GVN3YW"@'*H2(ILWY>6I(S2FMCP-6?"H7'XS$0OIAJ<\KQ# MS%9/IB#FE79B .)S8]YA3_1K255:*I%V!$ MC5692#N_"]"%D.F73IK303 XP,3I.94L!T&RDU1# !^U1'ZGD:DT-H+/AI3A M#8?#PI)4A;D9LAS\+P]HA'&Z1Q_PU$71^0LX4E >!Y;-FVK2R*+^PK[H[L/[ M O'"G=E3Y+-(6W,"0PM9- YX5R/^:=JN4Q1FZEL>Y=A'0\:H( <6&2,H A6QDN7[ZJ+&HGY76;YK]!D$W+7XP6VT"ELJK4:4S MQ.%@.W>^*\YS=2BF9H-Z +5]H<(.HA@*G(#K8+TG?@:WP"*Q]A(C>LM^*P95 M0C2Q G/"VDKU]CTB(L,-CC[PS$R=ZJ09Q0NFO$9-I&73+Y^-H'E?%=G%'7= MK"E&L4O83MGP21FHO-LB]LC94+PYC4OEC M!6%41HLF<34;A#:K!V5N9,K'O52&3J MS6MC>. T3X)H48.4AHK3*?QM?S9.9ZLW_\ZR.X#M1.K>_'7_ MVL>'%O>S%&$Q)&N?H-6 M>:D^]%1%+'=X3GG--?0E!:"0ICEJA>0)RWE3-GI-O^24ML=F\BH,O8;-7 2^ M_4I.TWRQY;7<;5?)V4]Y%9+<:[/WX"%:TB6R*65FV>ELCQNM7&-H^]Z?Y9PV M)>=!&U&!-MQ.4XW_#H!77N''O2"75 [C/$TA5:ZJXC^F*,11:L/T3RICQ9P# M"[;7NIU3G0)S]!'>45I:7EZ5J:"IW1"P3WB(C'SA M56J>8QZ*86P['M-<+E/M:A*R_]_>ES8WCB-I?]]?@:CMGNB.H-6ZCZIY*T*^ M:KW;5>6PW3LQGR9H"K(X39%J@K1+^^O?3 "D*(NB3HH@A8V8C6J+!,!$GD#F MDSLIE&O)!P_ !O?4MY+'6A?-K6/*UH?/W9HRC2M^5CUC0(-S:G#.='#.E&?R M ;F$B"M6\J+^_"I&;;I"0)Y;!.2)@[#J01E]?W>\BJ!5 HT.OWYFVB/R9C+R M4X96;O;>%0:N2?GYU[W$LKIW8'E#=W03X2Q>SI_F,SK\8;,+@0YV*\'!OG(\ MCEV.!&]^S*C+%FGUK:V5]T4+;S]7V^"-.J]T!5*1NH@" MN"LLTP([$Q>0O0N#E%UH(.F;W01^M>J[T.9WT!F[D Q0W]^5\(V.&&;"532 M)P[Z*=':.**98V(B?> 1&_[DQ#>B[_S!&AF"2A0 IBO8GN2-PE#V-(+UJP04 MVH?/-RS@R'PCP=;.?($0QU%X8VPY%H'+I<+]&3R1S^%.-V*<93)V/R/O_5\R M;] -\,W0=# 87,O"_WHPW1?!X5\A?IR&TRS6MF9LDIHZ_U5\^@-\=E3)LZ^^ M:64P.O!?-ETR3UASO](MT.[? =?-N*[RG??PV_2Z/A/D&T6.H'IRDC"'+W:#'[A[@6%H(SCR2+**R4O' -X)*%?X>4( M_Y?B>0&(+3'?3'^$4_F1LX%_OA#HSN+'&GGTII1X8QZ:-@,;^ MGS11ZH,_R($%4&P$ ,T'XW3BB-QT*\S??A<\;>I&H+_H";(%7NK2T +\]_W2 M@?KQ-B: Y%^!^@C;2/]"%%Q3@.':+E#/<1+PV.9VB^PA)N]KA,%_P?U5,)FV M-UJ[J)B-5A8UG=*1+5"1@8+O/O%*0,DNMAU1A<45";$9"SDP_6B)0Q8.6Z9@ MU =<,,@CW[MEV:Z(5[M0&;MK"=@SGJ8T)EF^VB#-AZW+X P'^@:6GCM@P!;X MDU"E,;7QD16?C%NG]T["P@%(&JRA[Z.+)\*\%1]AB$H$'!,8_ON8_\J&(?A; M/AZ#[YW?9W3JZ;G$$"WA%!R3T9M"(!$I.FSM\&K:CAG!;2/G8A4'ZEG9+"&3 MRED>L9)4CK[VUO._H"#O2^Q^JYF*D!:16FJ"9>I*Q;L77G2M.+SH7%3 D+ 0 M@G6?(X4F[1]!2KYRM/.]"+5\@F--D$'8RB$&_,.5)QDVB[#$X3\XC/K'\D%R M/UH3.@H=*AE]55(D43.J_?K'JO;;G5O$43D_H4_>JYC@/T5_X!=AXB_)=T_JU4;4YT^)ZXAC(#\DSA)U[*XXWY M>6CQ[+6#9WD\&B62=D6B_7(:159B?!I(>ISQI\3-QW=Q,YG8>G$7LN^5QZ#; M,-JIM=OEX)T\Y>NG?8B@#C.GH6X?RLQ_/%[?4S]OEGY75Q+%6-SMV!M0M];N ME9O+]]>M&5=MT:#\=DWYKRD%';9T*C+JC(MT*KZ())JR2(8RZK;5W+)\0R4W M@F\VNW/O>3;5%]]C;&\0F'8;4U7*K6*U(Y'&V:U\.?L0GX+MQ.#Y^!6#DC.] MZO94Z3?5\RL4/:R(A$U[%FGZ-[-E2:M;A&N!V7MW/.?YFJ?9"14JSLWYCU+% MQAN[=XIKN[$&/FY/1LF)@XLXKM4.29H\;%LIK:!#$DE+KCY)H];K:Y]$^R3* M^"2*GG7<>OZ8VOJT8P^?I%TOX7&'W._07ZC?O<.^5O>X]R;:::FVT])NE-=I M29&;G(Y25I$J]CRV1ORN.=::I6ZXCJ M78XO1?297+)[MVUW5/@,ZEB@M&QA)9V^XV4+UUMJ)_DX*2K-:_9WZ.X_^G24_UY (N^]PC]'7N*!NSG=;VL'=;,B;93G1E>7#C<;^70@:@X'1Z.145:*;J^KFJKJY MZOJ.4KP34-P"B)K6)&JK()I/V!!'QRT%4_L"A2QJE'#IP)9=/%H3S\'F(7R8 MBQG(%CXP]4;4$4UUQI[C>&_\+1ZAXM/S^^]X^LN7#Q@XSK46'&>P8L?'YYL?B M6G'DTB2Y;IH"(0]6>Q&1O^(0<7[1W2[1W798CS%]K'Q%.NG](*$ !7M M_U:'F,UR7 ()8<@+B-YF?UZ,?8HM\L _PF9L_K'0UT_P9N>D45;MFS?W+;Z ?31T;\&9Y5%WPM%"'7@+*O!.:D QH8S)+YI; M!^78WKW6Z:Q$XS]K)9";$LC@P&Y:;6\V!ZYI$%XF#FS6^JL-QO?BP-/?;>?J MZ=S\F%'>>=A!K'?;%7UURV(1BM#KNUQ#K%7C1SI$39.::$=3[A6ZS8Q[AWB41;$0)VL_&VMBE111;MX MA@5Q4B^#DWJY**)R'V[%+M^KY\">.'8P+XMZ[N16BMO.37VG:X., "WMB"#M M7B4.Q.[#(Z9A94G?_\8,LV\HU@+O8%!;;6ZQ5RB6'S>4T/6HN%3TTEH6K!JG MX18!7.;.J5!USP+F=\.-J<(F;^63+.OQ%^ M(3Q.]KXV@F!9"D2YX\!_O,^&6T[=XUEL1=P$Y/2YB4PV93CJM*KE MIRS=TM\2\W?SO6".Q4&9+9+XC]>@?V(]=0"X;Z-LNDA+9\FE.DZ< X:+$X"?[.#"8&-E<7CF)QN6Y30OT+3P:3R M.)<<1ON3!@O[BS^ )T%]9XY9Y)8WG7K('Y[U9VK>?.WDN>"YU1"@<3#=.?&I MY;VX/'4_RW8U!SFC&Z?4/<%V>Q;6,*2;-'2+7;:_ 0*7L3=8/2;E]0'9I$B+ MF5,N<\"G#\ >(Y(/OR][I/" =4[;W9CISO#FE MC]1_!5,O3%T%MC3UY@.LG?KSP6?/."?U*8)I+I?3FBTZT;_<9J M0B%7FC@Q?$Y"/41:%]X_T(LG##\L(L49C(38,FQ6N>:F2OA M&=#Q$_S+#,3H6. 4G2W"#,\TJ<8\,*'$7"U$FG&'5C#.:8N=<]M>X:/?>K[\ M$SZW?'7;' PRKFZ;B:31V$W@V6F;+-UQ?%&R;.[2/!:LZ>.U>^+1_T@6YAU> M*36T+"\$GH,X"!VGH3N"O_@A'?UNF\]XWV!3=FTSR_%8Z*>71"%*7DI)U E2 MS[FS"X+K">SPC]*5L;%D$WL52/_5WN6M#(7:E=I3>L4[#?LKD70ETE2QI'== M>H;*86G(L$P*/1C"0K5 G_RW:EBFL/0PY:S9+H$BF[).7[I3R3#66?1UN8 ME+XD531KE(0UTHM83\@:[Z^&\E:$*>@6F^Z>CC:U-#F]K$KE'/A@>=,C-\>A M+Q !HIMB"O\9]BF5&1:'ED>T1NG:(8>I5B65(QNES]O\.55J\EQ+YE53=_W) MQ8:C)K')][XWIHS!N*9S2RF["GT?/)-]#Q3ZW37-P0K9Q9.QD.;6[;BUE\*M MJYD6)^/65L=H#=+ K0KG5E5L7D;&X?%DIV@[-S/G/H3/W-)%!YIX_IB>L5%N M];%I*M4T1L;)_%8:X]%T@ D.UA3=]L!HUM,R&0I7%9HSB^',M$Y'N]BR(W%F MKULW6O75*QP%.%,5(W:"P*UX(^;A76<%#=;6IR:*:8^MUYVE9 ;U \U?XB1] MZ(Z^(X\D_K2WW]P:&(-66F>S_-DA[;SH7$SD>JZ3@LJ'1!OO^9,7R"C3=5& M7V!C)MB!$7G#J/? *6BMYAP7X12TSLD_UB*R$)&T9E7;NLMYBTB_63?Z'34" MR&T$Y)RJ;^Y9?TCK%P_]3X9K^? M>I6-Q1(F5BO@S#@BF453$TNL6^:JVWQ^?'YF^G&B)A8KV<%<_ J3,LNWG_&Q M9^^5ULB=2Y _.6UY21,074YF\/>C@A[;A=EXACW.R$QLZ^'3(/1=ACO'VW5, M48YQXNQMV]F8R[V.Q#X?M00.L0H5.(A7G I%6:DZB;M-M8+D MJSE/J=6+C1OHMJGM\D0,M&[9YJN=8K[J%_4.UF8*XMZ:%@<5D_Z&W('EWX2S M\2_K8KSY_)3=^F%#!M'HD" M<>GY/B_EN#*Q2"&8Q^:SNST&#.\2DN*]P/XZ2$$_YD-'\J&TGK_\_OWJ5U%J MO?3))/IFDOAHDOAJ\LOE]=6O-3(D+C .C+*K&Y+>9A'VL7[,?7P O06>Z.C) M#UD@^:T,&X9>#3?ZW*T!UY!O4?0UA'].)#^BE1O? G -J17B2\]SL1LRNL-2 M2FJ_B@[L;N3BPX[3(.["%HDC_CY!O]==;N(3/?>-,P XP/<^: Z"P$7<[868 MU6:3Q=S_,,%X/@8^A #DOSWP%^&57S)YHIM:C2XBBL0_3\P>:5!0:2,FNRU< M\PYVHI)S3[C/?BVE]0>O0=NE U$E.O<[QN5](;*ZI@])F9V)7VKGI;W>?R] MRU%%[R/1J3!<*#+/D;Y@<>TSR"F**PH:&KSX"5Z1CUN,] Y0N-Z\T$%I?.65 MSE,[X+7/BZ@11"I[+[)JW4NQ%]$\<0?HD^A?T+B3;\L^0.='OF#BA0QI MN!7+-FO;-F,]-$!9#J^+0B7XW7-?$(4?H^OTF+IU)C%U_Y"8.GIM^U>BC=_U MO6]> "26]R*'3GLVD;YO3=![K*_Q'DWKK]#& ,4DCY[K ;N[)'0"WV1XY ?V MU_+AC]Y,V#U3@GYMBB8;:TX%6ARQR8?A_&".4"[!T!TAPLM,8"8^S6<"_"5: MRQ_Q4K[&*]E&IZZ=XPL,LL@V:^VD8IOUU6JE6,DFG9%QB/4L(O!&^S4&[\.U M$$9GXGOA"YZ6;])?G%A"?T5T0T5UYS)011Q-4G3 B8B"PB%%(QT>9_EM5'P? MEK7#F*3KR,]/F]Q%3H//$P?L;!LZ= M(Z"0-G)S+\7#.,(&93'P\E@B<+4MB22Z)_^N(O/'W&L0B6B"Q )Z@)B[ECT# M_W?FA&QQ[@"QD!D?/F32+"W0.9A0::'_\F#)H/\Q0)\?:(?W->;+OBT7N[5V M2I^/"J$4FB\0"KW@I@)%0I^G&$2'2RXWNI&,"U Q"=HX$\S(PZOX^454A=B1 MJ/LX- XK-3#.UY@LW\=+;N-Z>)RVAL=1'AXGNHWL9_4ER[V$*#Y( 2W[,5>T MCUTQ6:)K;@5*$XH!98D(L+QAT@@S,@HI^AT"\E#CM)Q!N=_M/WFV2A4+_4H, M;/$>-7G[?.2D,5\8^01(WSG?H/QG]ZH\TJ_8A2Q=\U2NV\,>JN^ MN"X9/@_<"Z%#.EJ'J*5#TO,?CJU#_DE-_^G-VSMSVVAT--C N7H?OV/^3W3 M<1;Z8^OX0!TUL_62LU)OZH.=D>5X5OA.NDCPT=X9^D:SW51#%:V)CGY52S55 MVJD1N1(QTU[]\]H&_U^>>H\SZF,3>B#^-HH:F,# M[+-\H3#B>9G'S:=J;I=/M5-2SD%L:H Y3T]NVO;SF[M\_LX-QO/]_)XQ2.D) M?B:M3^Y.[>!7GH=#36LB4C J=,NZH,'W<2PW4@%=BJ_/N'#MZ@M7Y2]<==,) MM>XW=3\2S1JZ'XFR)\UJ]".18#,G3DW1X^OQE1U?%1U4Z2/E6SK"[.ZS.$%6 MZ61XPXEO_PB':]*DR!U>B?+VOAUO&(/&:H-M!:['->>>B'/7'SPUC&:O+@^? M"N<'50Q(I=,E>/E'%/0-^K'N-R1]HOPJ'.I7VR:692=YPSWSOU68CQ]?AJ*1Z=%E+*($BYZ&9#V-(^0DP?F1&YJVO2 M_O?NE-[I&9UZ,16"9Q*YEXUI.T>(M?-EVDZO9_2[Q<39)0FI*^U9Z[05M13* M<<[XTEOI[&3%6?18M'%<1C@M;%OLF6_Y4T F<>]].LWC7I?C<3S;;!LM5Q44"Z.44=Z9+GH=;I& ML[O:=E55N5 4XQFFIC\L)QS1"!9S9+]&Z)+W7VZ?'C(;P"6@+R-R07C-CXNQ7-2^%(: M,(2NY8UD,YM87U.+-X(E+5!C:* 7K:P11'OKMQO\[6;B[>J YT;$!"&B[,H9X] '#N.X-P0X=WHLC,]OAY?K8N!ZI:=Q?]K]/DBOM& >#.*36K< M%^)XC!'+]/WYV//?3']T'EWO5#H W7"PN7=_\)6H^GNTZ[_#IE\E]WS=">?8 M_D%'%_]'?6_E6\#'PK#^!5Z=XV6,B'U30]BF7HK=!>^S<.WJM]L#&A?)O\C[O*K'50WV@\L%CV11-_Y@&5.SQ45SO?K=C#)K%9,-HFZ@DJPZ.:1./R*H-H]EI M&8."@/]+8NC.)TZ\',63>Z:CI;JMBO\PG4AI;EAW1$G$5*I;9DA2N+9HX'G0\45OE*,8^6 M;S[H!FG&?@0!F[E>*)Y$ -OK%&2CE>KLN]CSE.P?S> 58 +7+S5VC/IN!3[X\MV3+J?275AN;68KCU>(DN MQ^?6WL!HJ\FMJABY\XG_KLR9'0!U_P]BP(>_F=/9IVL-ZZ:6ICD*;E7SJ+DS M*?I.&KF31Y24>\8_9X:,!%E G$[GRCU M>S"AOK;6%=-+QTO4X?RQM_HQ>@4EQ&N3?*ZL?[S$GP-9OSO0=E<'SHER;:R. M'*UB_531^&KTN%@AM8Z75@0,M'_:8:<[4*9-N492/%-9.%X6TP&RT#3J( OM M5GED05'TQ%S0\(:$A5/XRQP!\, #(];$=%\HL5W^7ZL&E-BLG&!UUHQ-/CZ* MCST&8%U? ]9IP#H-_:51X31K:.@UK1OU^'K\$H^ORI'JGAC.S&37Z).W3_6D77MNHY M,;]D^AR= SK[\6N*%=_C9CRF5K!T72'K*_=T2 @#BOZ_#Q?%-N9>W8#T\[A? MM7A42#RZ!S3X.[EX%-F8>T?Q4,6:%^C&:[V@M%XX'25U1K)FHS//[JUT4'6Y MN"N@[BBZ):AL,:S.:ERXCVE5@/ME^"82O72RKQ:+/F%+8A8+P9 M3QC0$7F>$W,V<^:8S($/_%%[K)$QA7TV'5BI&82(CDKLQ02^&5#1CWVMNFN] M!YA:<\;Z+[%N5&UA,/%\.Y@/?]CLXAK^R, KO\+%^O.OO/=LRL/?0%/R%^Y0 MF%S3>:"OU WI(_5?;8O>/3R*5Q,:]C[TZ7L5*\ZG[%<:S_ W_A X0LLT+0< MM&P8W JB/$8T67HX5L,7S:WUYOYFC? M(0NPHKE>TQ=R.7E M@4GW55M&(5N@][WP9>QP.:S=^!ROBKS ="KHQNM,]82[=4AY_(J[M7S4OO=9 M>K]IU/N=TJ2J:[FHH%P<4A>?DUST.EVCV56CLTJ)2SAR2)Y;,HA]#".J^,&+ZE+#P^=_4XAG?/GVU84K3'1'Z Q;B\C 5L_2C MVR/\B45W2YBU;\IL>)NR&DG,BA4 5NAC_K\S)Q[P&TY@AB,[ !Z%P41!P&SF M@)^$PB R0."CO3%Q[*D=\+D13%X\BB6'B$?_(UGZ<7CN^ST( M/Q85N"-^ G'OL<"G@>U3/(602H%=V\QR/!;ZZ7GOW7IJWGL^9/L[9LPN98L.31?.5" MA^V?X^%.7#>1M[(A; 9"Z_E8+++FT\DO*,Y<*W4_X1^D@OHUH1=B "RN#AZI M,(C9@MRN-Q:R+RM4HLH<(DMS8)DC6B,WTYGCS2D:&)/CS,)VC:*V%K@D@VM& M"BZ"C;H)BV%,C.CL&:J^Q(/$',,,&U;62BBED3GGWT3Y$I X-?)'_-TPUI1% MBQ<+"1+$S9X&[!\\$LT$9MR:R&DHY6K"MY]#H50%I5D(3TPI*/"1H .SX)%E M2M3(=>BCHM^L19.:=[%FZL#N(<"91\22LF3M9SX&IX\)CTI"9$\]MGT6+.;. M*@Q[CTR[.;I(*]BZ%OQRE: H4DHRE?\5OQ(HMO2[J*K:LTYK-8WGYP4+K>SM MS+1'*$ SS\<_F [87T[-&;#'#(B&N\T+\7C5G4=^RB39=K5T&ZN(TRAV!88' M3\1?7- UHY@XK:UI<]$"SDMI:PEL)U$4>$\[2@\W^W.1F-L[%S6P< MY&8NT95[$**%.4$:&^31!O8=0Z0%OMA5R"!DINBB03#WA7HOOCF;P';>N8*C M881*N:>W$,>ZE@U>H.U"I!/RNU;R!I\\602_"8T/VL9:(:$U. 2HO+"1TPV,?C_)_2OT'X%/8$3(95AI!%$NY8EZM]]:E'X'5S+Y9AY M:MIN /]C8I01G7D,0C'TQTS"WBB=16,8L'[J4XS,@1-$( ^AN(?;9_$%3;U7 MX:UN,L#D+ MZ%3@()BN35GD733R8CK M);P/']G31Y/L.# 1GNMX/O'P+( P:H4(;B#J_>&#X$/1W,)G,!//+$W^F$\% M: /\(HEASC!H,QTC;M6Q.,7A7S"%;P\\'DO DQ8= 3LQ*6Q &&=)Q-"IVDYF MP,9Z"<$QHV$XO_)US#S'MN8PS2OELT_!HN,$*%E@S2[^>$QL(ZQG'/K\&V'U M]@O&>XF%U63%.@0+G0'3A3/8'!B3(!-@!9" M5)/*9V+NM)6(M^';%#X3_"4,OQ.*7BSF K;*1*8"*\N X&]V,$$)K\1*ZF4A6I[O M4PPP(2+ @ -+W%?1&9,EHN]/AZ_(J.7U4I5P,S88>3H;2# MG^3ACH8]4L.*:T0LS1JE1<322<_YZ?IA!1.>RU8"EG8AFP(GNW*W=3F_I*XU M@>G^Y#BQCZ9#F0S$OM% LNFO/8TGPEDV&6X'/ MK@Q\'Y^ -?:\"&XI Z_SLP*\?,9BL]VEO!:;M6#,Q8J-*N:]TC@]E]J\%ZZG MMD.W4TQ/7:[H*0$7EKN>4J?27)OW(L6FLQU6GA8;*3;%U ^J;]XK';U?:?-> MN)[:#F9/,3UU592>&BBFIK34%",UV\'[::F1UKVGF-@H6NNLV]7I=G6%MZL; MBD3X[%K*:VIQ74):=7!-P4TP%J65R_FZ&=G]9!32N/L=HV3IXOZ"4>O"_G$Q ML44M')> MZ.P%L$*LIL#=E.GC,E/[?5JX:?&T_=$N.>Y>Z/.\?9[8+I/=HP5'Q9&)C/9G MZMA@JR-6@XD3N>\,5O%*X1GJ\M(]ZCMS4:D]DMPHJQAP KYL7,FB7H3C1O!" ME(JDE:>!;,ALGQEQZ^J ME)_)!'YJ:^F2[\CFT[-+H\ M[M@6IRCKCF>7I?5(YL4S6]I46H&!%2MRY<;0%2-*97 M+LD\EUR_KY@,*5L]O,_Y6V3H/IMLT3YE^>1=@@5CEQ600H/,0M^:F(SWT')' MV/> YZ6-0]<2P,'ID-#/80 [XH9CX(#0IP03/ADUJY)2.72<=51V//?EPN$) ME29C5"*K8QJJ*0B&&.B.9W&PXS3B;2+1H6M7H\/"C>F[V&L)],WCQ%S75J%] M+FT5F@>U50"S0D371 +T))R@I%+-$9Z6TI)]V9]>9I\CCK_%Q6QD.R%*DDN# MJ(_@#-'B.4' F%FA(Z3P]'KH:+#5W\?O9><2OW_HCJ[%UVB5,+)-;5J6$QUVJPQO<4GW^+&*;>XJJFA9\?()F7A]S)J M9-+S<('[?M\,[SFZ6#KLK[D5^]QB+[[/K6U]G MWWV[_?"Y8;1Z=:,Y4"8Q1)F4#Q_@='#\4L**"U^9+N7I>3F?3X>OPJ**/J M.D+OE=&5-YV"T\[SP/)%@ZL6I^KQJSV^*IKH?-RB[V' M/%._$*'CB6K,:G MNUW3E<3!#<^W?7]T$[FZ0^'I?@NQ\.;[F#_+$AO.+][W/H5L&^U!Q^C5E6E] MH@Q7G3$#;]?_1!D&;K:-5E^9#J(J6L+J^N3)S*,*FKY27V!L!_&V?($159]L MJNPZ2&G4:]K>::Y=P[7;H:P5PK7J]-%4TGRECYTJ M[6SK!%L]OAY?4GREE5%U'2&=8*O'U^.71Q.=CUND$VQ5.KC9K@^% M,OF).L&VZ*E48^#MND HP\ ZP5;[Y)$EY(E(]BLE=#RF5H -"UC@67\2;\8Q MT"MH'K?&X%1,"6V][DQ=M3-BSO:Z2B:UK2BLX>C?(0NP%\W>6JO5,AKU8GK& MI(&3GHLA/FM1Z>V,V*."J#0[#:/9+2:S>!]14<7DGR3XK=*IA1Y?CU^%4Z_S M\?6?O,!TLH[?J^6LM,#HC[P0FQ:5RUM9O_!,=R77.O5U#LL!YQ#=9M_H-XHY MAWCOJ;3.V*D_-SG)M1P^#SGI=8QNNYB\UWWD1!7#KCUZ/;X>7WOT%?+H$Y7# M:=U+J^C4E[@BH9^N@5NX)"O.. MYDLTKE1+]W]0@EW96?C\;\Q."#S.D/&W&N@".2&&J,2A+Z9#9KYG48I_$*2Q M'-.>PC]]F^%#MLN;P8NI8*S09Q1S'IY#^)DR;!5O!O!W<%V)B9T8*?%-F V? M 1T54)\MIC2(.?5@4 ^&]&$MN#1427QB.ITYWASW2*[A$WGS_#]Q '#:9M1E M?&_C'V'AHQ#>=6SSV7;L8 [/FSY,'LSY>%-O9(_!F\:7/O&_F/%=(?%\XM.9 M8UI4_.>8JV:&=YZCTW>QSX43KFT?.<#R&#(]8YYEF^@'O]G!A.\I90$8"OR3 M3^&[0TY=H,02PW!N,BT+E L0,! OFB!:\#89P=OXQ[>);4V(#?XU _,#)!WA M[CRC2A?\82YVB4Q,1IXI=9$M0M_'86%O<%Q@CE!L!@MAO,4K%DCZ,S 6-9GG MPJCSQ=IKY!\3&Z81D]O3F<>8S>?UX*,M"*A,R<*A(UZ1?(^3CFW7A*^$_UK, MQ@KA=(%6I_ MACV )9HHH/ K$F,$H[)%3I.@&'PZSP'@/+*@%9#8%KR"0L2 KGRUWHP*[U#@%MA9P?3D5J%BZ8@<()Z MRMD\=_F6PR?"UC+YC M?"2V',H+^;;A<%QE>4Y%=,0W+T!^C\Y+K>/<.L!9.$CAB\Y:L ZS4E)R%6S:!9V&MO+08?JZ1 MI\1GX8OP+108:&0S$^04UA>K1V%G:N1QPADNP*'DP,!:*+@O8LHDI;@@CNB8 M@G8!E4"=L60O8&+X4M"9X*E(BX-_Q2_DQD_J,\9Y'SP^QCE8*D@8 OC=GD8< M?RKN(UO[QR<1 O3"<5L8Q#:_#Q^?+NZ'7VXN+A]NAO\3.;Z))^Z_W#X]R+\O M_3 97_C>6_3+^Y\L"CMX_^7;'U\_?!8/+)Q^DO3[E_Z=" >B?_W]-Q[:0(PS M":;.Y_\/4$L#!!0 ( &!I;EB6(;Q(QP( $ * - 97A?-C,X-S8P M+FAT;>56;4_;,!#^O/Z*6S\PD)KFK922ADBE0(<8*&H[L6^3DUP;2XD=.2[0 M_?I=TDZTO(QI2$/;OK2Q']\]=X_/9_NISK/ 3Y$E0>.=K[G.,,"[KUVW=]"U MVH3ZYFJ2T/>& 2,4J)C&!*(E3-.%2%"=R!PAE$JS# QP3=LU'JCYD+/C%YS/2M8CD?-F50YTT:"&F/-I6A"+(5&0:LU M9EBD4N"1D,V@X9NKB/U()DLH]3*KS84V2OX-/=LJ=+\>SEC.LZ7W8!7< M#'9$5!9]WRR"QC,<#RA^A4'CG398QN?"4WR>ZFU*/PI.OWP\/SZ?@N.V;=^, M@I_Q_XD<_Q6.U^U53.6,ZM%F#:4H"0$Y@W,Z4@72#PW'..D)LSB@LF1J_&7B9PK)YU:*^=$M6!N^G%K4IE&$Y@BG$J9";GG 0:;J2T M6V4YE'G!Q'*O6BT7BI(D7$-2=_!+IN(4;$JB:MNQ==SF*4)US*;P0[+B_Z]EF%[^.;9O?:D'C#'+(!Q=?;Z\9Z,5U1OKB3^*PJS>7'3IU"_'[U!+ P04 M " !@:6Y8&6^_,+,& #1&0 #0 &5X7S8S.#OA6]7E0]K2A(D972>0HO=IM0])[OBL'&F)$5O=@MK*MDZ.44 M* O*FEV161/(0":0IKJTAEX8VXKR3@;=5G:FJECFI,Z'GU%TU&PSH< MQ9^%K)1>3AY_/_[AZ$Q5Y,5OM!#O;25-?'=4RSQ79C89*B/Z(V6.=EOSZBM: M.S77-!QM6W$NG9(F3 QO2A]5TLV4F6!8K/X]Q]3=']_\_LO)JY,S,1[U1]-! M_657#701>E*KF9ED\".Y#3NP]C&YH J52?:V.&V<;R L@A5O+A N,R/Q,@O3 MU'7!>M]H$J.Q[(T.GLB]1$@O7N:V9E1L"G]HPR?&PWUA"Q%*6JOX(%TJ#?G> MNPM-2U;/4_:'P_W;-__IR-W+^=CT8Y/Z^NB+N_K*&B>)>,6CXJPOWLKLG):) M.'7D58XH"&ER<5PJ*N!FRIJ@YB3>%8@#N41D,29+>$V&R4/RR:@O3D0IL5=' M:>W&(M8T-D1@FNDF8I&A-<0[ -_%PQ MP. X*4"EA%6U*"0GF1.V4C$]X[P;$PQEY+UT2YY2R7/BO%WK]'B7PR8L"3HI M0Y?8(E,N:RI,,Q 7L2R(1:FR4OB&_ZSE%^2H4\(;J)378&]PKEBH4&*#O@9O M\.JLMX9I-L>F-QX4#,:WP(!$H0P\S,%:>S2)1&(Q[#;&E6G+*!.P M,IEN08])P5K>J:F(ON.;[MN@_I2@X>IKS\UY<^GID M,WS+DV8<#/9^+N+,/.EM%ZIY5+;."A .-!X0^XY,UP%*.D[@087$A2W>:I7'SMXW*3H4!4_P!E1+ M^9&)#&MJ/--PQ*>/G!T3U'J"03@I1*%: K=9HR7S"K85C5C3.23:XK"EM.%% M2CP?# UE#\H>D^O8TAQ.VY:.F4X"*YT&RS;>@7^N &E.TO>'5% X1R]*42E MMT8RKT@/D'%59_1(EZ\B"6PIF2JMPI*9?=NRC.L8]!C(%I)7IFYT!9&^+KH- MU8VK@2U>9T1Z:HABKCO/ %SCECW0XISWE]Y<",@G1.XP^_J<1RY%N][L '7"YME MC6-7;Y#S%7T%(H]T*V .I#\V('1RK6PI_66]X3R,0* \$E2TMR./)8X(YZ2[ MD\2U^_H/F+QZ?+Y&2K!.$T[6R/D =7_1LY IGVCUJS8V. 59) M] O!=D;P:'P!915.E(&(E[@BD%H4#'Z;*]@319\ (TAVSUR"_[E76<&//C8* MYK+916/BU9'?FZ IW8O'$2Y>\9(*X]RD9HI@=4=CE^W/@N0Y$U);/"(EQ;(7 M#[ZKH\F]?-%U*FV_O079,H>@ITM@;_%;5R8Q&6Y -4M:/O1HE'Q3 0U 2]Q& ME^K;3W$\X4FZ%XF@$R>KD;/N2L!UX**J MUG9)&%V4M@64O.)C^.1N3./_2PM/D7NP.=Y%)6OM:9K#I\G=WTQM_ MWS^M%RH/)1Z'CSI+>IJ*,)%-L*L7CN]'VC?M)3(,<^T#GO+5HG/. 3)KW4)_)J;BXEX*QW0/AHG@F_Q5RZ-7P'R>QA_V#_\HL9?,77@ M!]?O5=3KH/N3\#5!+ M P04 " !@:6Y8OA<1 ZX& [&@ #0 &5X7S8S.#X:3/'*="F+\N*KD7;#_NV4=+)(D*1*DG9\7[]GJ/D MV$F<-MFZH?.'II)X/![OGGON2$^*4.HGWW^W,RE(9GC X\XDJ*")O^[LT/GO MCT:'CQ^->I",@_UF=/)#MRM>D2$G V4B68B/16TR*==4%J,>H/1_W] MP?Y#<3@>/AX/#L33-Z+;C:HG)04ITD(Z3^%XMPYY]W!7]-?&C"SI>#>WKI2A MFU&@-"AK=D5J32"#.8$T584U=&QL,Y5WTF^WLC-);+80/BQT5&-"UZL_:3P< M5.$HON:R5'HQOO_CZ*>CCZHD+WZEN7AO2VGBMZ-*9IDRT_% &=$;*G.TVYA7 M7=+:JKFBX6C3BC/IE#1A;'A3^JB4;JK,&,-B^>\0HKM/7OSV\^FSTX]B-.SM M3_K5UUTUT'GH2JVF9IS"C^36[,#:)^2"RE4JV=OB7>U\C< .X:2E[WQ"NG M\ER%0OSB>CR@*!KD09\;.-653ZFQR3V:QEK$A#L M."E HN086KGD]'+"EBHF9I2[)F H)>^E6[!(*<^(,W:ET^-;!INP)(BD"&U* MBU2YM"XA9C!=Q((@YH5*"^%K_K.:/R='K1+>0*F\!F^#;<6#LL$UE:-QZ*J2C&!@X6B4HQ'"@(( BT4P: MSNI&5>5L2AD^>_$ R&I?=FF'"3>5M;_]%&:^A%8K-5QJ:P<%2(Z9\C'E($4FZN$. M896LZWGO2.,!L6_)=!6@3LL)/*B0N+#%6ZVRV-/[.O$J4_ $;T UE!^9R+"F MVC,-1WSZR-DQ0:TG&(0S0IQ42> VK;5D7L&VHA$K.L>,ICAL*&WXD!#+@P&@ MAK*MHO?D*H84-^*FH5.&@^!*M\:RC5?@CVM0NO7,VR,**)RIC($BO362>45Z M@(RK.J-'NFP926!+R41I%1;,[)N695S'H,= -I"\)+K6%43Z.F\W5-6N IY\ MK$1I:ET6#8C]P30>/35@A1&*IPT60>_38 :X5A6H:JM0D_8$S:2N8WJR2RG/ M^5@U@S/\ALJ*^G$+HFE>/UMF(THP'USAFYJ>V#K<;,)M5KT0)FY;\L^U>:T1 MR;(ABKAO/0%SCECW-L4YZRT]N!:0U@GZY3 'LS_5('1RS=Q"^HMZPWD8@4!9)*AH;TL>"QP1SDBW)XDK\IU_ ML(6M:OX._D;S%X_/%TCIK!*$T[6T/D =7_&LY0IGVAUJS;6. 59)] O!MD;P M:/P 925.E(&(E[@T(;$H&/PU4[ G3GT C"#9/7,)_N=>90D_^E0KF,MFY[6) MET9^;XRF="\>1[AXQ>LIC'.3FBJ"U2V-7;0_//@NCR9W M\D7;J33]]@9DRPP3/5T >X/?VC()8;@!U:S3\*%'H^3K$F@ 6N(VVE3??(IC M@0?)7B2"W,'W'9A&$2G87#Q+MU[H-'FJS,SJ&7&R&CEMKP1<"RXJ*VT7A-%Y M81M R4L^AD]NQS3^F\O3$#N7!)XF=[P[V$4F:>TKF<*FB_?VCC>^WSVMYRH+ M!1X']UI+NIKR,)9UL,L/CN]'FB_-]3$,<\T#GK+EHC/.S,;;-4J/^@] MO(>9_]7U[W-N+L;BC71 ^W#4$7Q_OW1IO/_/[F#\X][CKVK\)5/[OG_3C>KJ M;GEGYU8B&Z]?KVV["5\_QJ_]-80Q]LT4H7]GM?BK"O^8@N=)O_W)Z"]02P,$ M% @ 8&EN6 Z!UTO" P ' \ T !E>%\V,S@W-C0N:'1M[5=M;]LV M$/Z< ?L/-P\-$L"2)2M-'=DID#IMEQ5=@\8#]FV@Q9-%C")5BDKB_OH=*/W[83)Y M<7@0TDE/'+74V0]! &]1H6$6.2S7L"@:Q=&E:B99 5S-1HCP>-S8/) $9;-,5*/![DVI3,!APM9E9H-8!, M*XN*>"Q*K JM\%CIEM5Y,NI?SEZ=+2 9A_%L5'U;K1:O;<"D6*DT MHSBBV;*#=,_16)&+C+EHPWECZH:8P6J()_!K>!'.0[AHW;MS=:]P MDYN[:EE7TV\>W%LZSI0K5M6Y?R5LX9UG2C6$#H,5P02(\H9X(8[>N1C,SR]@ M@5FAM-0K0>KGVM"Y-AM[CGWW4Z/M=*[+BJEUN]D'@HF77:$1F@,2%#F<8H;E M$@TDE"7"8>)SE0M)M(TUE)W&".M4,<7A]35A4JV0]):EJ&NGEG[N)">H0X$& MRV+Y%AIEW0BO=*+UU<,R8[R)>"KJ M-N_#("<.^V#[D7,?NZ(P?CB[7.&V]0YY(R55+56Q=-C9X,G@IT88+*FU^EJ_ M*=L]M@\$T_CY'M_?-,(;]&V0UW7#^"@YF#I,?A6*-MDCG^UN*+N*_!\*3Q$* MXT<,!:':ZYFK;WM&.BQXG3!@"2F6P=I 8.C*3$HB-9I6?@W5%&*F' MGBL7BJG,?2>!7'C1;B[1J4:VB-(5MO/PRUGR=:0>$5(>) FG[O:=PGMF:.C& MB9_R!T_I"C6J1_#*D6$1DIO9'[B^N5O>29@7 G-JJ-1/7PAG5,E M"4ZE^-3"-*>WE"0I[T)X:P1Y3 /I9Q-N1Z4[<"?=1>W-!H!=U!Y3G!Y&FW\V MNMG]V+Z)_P102P$"% ,4 " !@:6Y8TCO1?V8/ !XN@ $0 M @ $ 8W!S:"TR,#(S,3(S,"YX&UL4$L! A0#% @ 8&EN6+L-FK0,.P WCH% !4 M ( !(!T &-P&UL4$L! A0#% @ 8&EN6&0I M[YW9"@$ +,\+ !0 ( !0>D &-P%\V,S@W-C,N:'1M M4$L! A0#% @ 8&EN6 Z!UTO" P ' \ T ( !]00" D &5X7S8S.# XML 75 cpsh20231229_10k_htm.xml IDEA: XBRL DOCUMENT 0000814676 2023-01-01 2023-12-30 0000814676 2023-07-02 0000814676 2024-02-12 0000814676 2023-12-30 0000814676 2022-12-31 0000814676 2023-12-31 0000814676 2021-12-26 2022-12-31 0000814676 us-gaap:CommonStockMember 2021-12-25 0000814676 us-gaap:AdditionalPaidInCapitalMember 2021-12-25 0000814676 us-gaap:RetainedEarningsMember 2021-12-25 0000814676 us-gaap:TreasuryStockCommonMember 2021-12-25 0000814676 2021-12-25 0000814676 us-gaap:AdditionalPaidInCapitalMember 2021-12-26 2022-12-31 0000814676 us-gaap:CommonStockMember 2021-12-26 2022-12-31 0000814676 us-gaap:TreasuryStockCommonMember 2021-12-26 2022-12-31 0000814676 us-gaap:RetainedEarningsMember 2021-12-26 2022-12-31 0000814676 us-gaap:CommonStockMember 2022-12-31 0000814676 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0000814676 us-gaap:RetainedEarningsMember 2022-12-31 0000814676 us-gaap:TreasuryStockCommonMember 2022-12-31 0000814676 us-gaap:CommonStockMember 2023-01-01 2023-12-30 0000814676 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-12-30 0000814676 us-gaap:RetainedEarningsMember 2023-01-01 2023-12-30 0000814676 us-gaap:TreasuryStockCommonMember 2023-01-01 2023-12-30 0000814676 us-gaap:CommonStockMember 2023-12-30 0000814676 us-gaap:AdditionalPaidInCapitalMember 2023-12-30 0000814676 us-gaap:RetainedEarningsMember 2023-12-30 0000814676 us-gaap:TreasuryStockCommonMember 2023-12-30 0000814676 cpsh:AccountsReceivableAndOtherIncomeMember 2022-12-31 0000814676 cpsh:ProductionEquipmentMember 2023-12-30 0000814676 srt:MinimumMember cpsh:FurnitureAndOfficeEquipmentMember 2023-12-31 0000814676 srt:MaximumMember cpsh:FurnitureAndOfficeEquipmentMember 2023-12-31 0000814676 cpsh:LeaseExpirationDecember2020Member cpsh:FacilityTwoMember 2023-12-30 0000814676 cpsh:NortonFacilityMember 2023-12-30 0000814676 cpsh:NortonFacilityMember 2023-01-01 2023-12-30 0000814676 cpsh:NortonFacilityMember 2021-12-26 2022-12-31 0000814676 srt:MinimumMember cpsh:NortonFacilityMember 2023-12-30 0000814676 srt:MaximumMember cpsh:NortonFacilityMember 2023-12-30 0000814676 us-gaap:EmployeeStockOptionMember cpsh:The2020EquityIncentivePlanMember 2020-03-03 2020-03-03 0000814676 us-gaap:EmployeeStockOptionMember us-gaap:ShareBasedPaymentArrangementEmployeeMember cpsh:The2020EquityIncentivePlanMember 2020-03-03 2020-03-03 0000814676 cpsh:The2020EquityIncentivePlanMember 2020-12-26 0000814676 cpsh:The2020EquityIncentivePlanMember 2023-12-30 0000814676 cpsh:The2020EquityIncentivePlanMember 2022-12-31 0000814676 cpsh:The2020EquityIncentivePlanMember 2023-01-01 2023-12-30 0000814676 srt:MinimumMember 2023-01-01 2023-12-30 0000814676 srt:MaximumMember 2023-01-01 2023-12-30 0000814676 srt:MinimumMember 2021-12-26 2022-12-31 0000814676 srt:MaximumMember 2021-12-26 2022-12-31 0000814676 cpsh:The2020EquityIncentivePlanMember 2021-12-26 2022-12-31 0000814676 cpsh:ReserveForPotentialCreditsMember 2023-12-30 0000814676 us-gaap:RevolvingCreditFacilityMember cpsh:MassachusettsBusinessDevelopmentCorporationMember 2020-05-31 0000814676 us-gaap:RevolvingCreditFacilityMember cpsh:RocklandTrustCompanyMember 2023-05-01 0000814676 us-gaap:RevolvingCreditFacilityMember cpsh:RocklandTrustCompanyMember 2023-12-30 2023-12-30 0000814676 us-gaap:RevolvingCreditFacilityMember cpsh:MassachusettsBusinessDevelopmentCorporationMember 2023-12-30 0000814676 us-gaap:RevolvingCreditFacilityMember cpsh:MassachusettsBusinessDevelopmentCorporationMember 2023-01-01 2023-12-30 0000814676 us-gaap:RevolvingCreditFacilityMember cpsh:MassachusettsBusinessDevelopmentCorporationMember 2021-12-26 2022-12-31 0000814676 cpsh:SonoscanUltrasoundMicroscopeMember 2020-03-31 0000814676 cpsh:MicroscopeNotePayableMember 2020-03-01 2020-03-31 0000814676 us-gaap:RevolvingCreditFacilityMember cpsh:MassachusettsBusinessDevelopmentCorporationMember 2019-09-30 2019-09-30 0000814676 cpsh:MicroscopeNotePayableMember 2020-03-31 0000814676 us-gaap:DomesticCountryMember us-gaap:InternalRevenueServiceIRSMember 2023-01-01 2023-12-30 0000814676 cpsh:CustomerAMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-30 0000814676 cpsh:CustomerAMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2021-12-26 2022-12-31 0000814676 cpsh:CustomerBMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-30 0000814676 cpsh:CustomerBMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2021-12-26 2022-12-31 0000814676 cpsh:CustomerCMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-30 0000814676 cpsh:CustomerCMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2021-12-26 2022-12-31 0000814676 cpsh:SignificantCustomersABAndCMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-12-30 0000814676 country:US us-gaap:SalesRevenueNetMember us-gaap:GeographicConcentrationRiskMember 2023-01-01 2023-12-30 0000814676 country:US us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2021-12-26 2022-12-31 0000814676 country:DE us-gaap:SalesRevenueNetMember us-gaap:GeographicConcentrationRiskMember 2023-01-01 2023-12-30 0000814676 country:DE us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2021-12-26 2022-12-31 0000814676 cpsh:OtherCountryMember us-gaap:SalesRevenueNetMember us-gaap:GeographicConcentrationRiskMember 2023-01-01 2023-12-30 0000814676 cpsh:OtherCountryMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2021-12-26 2022-12-31 iso4217:USD shares thunderdome:item iso4217:USD shares utr:Y pure utr:sqft utr:Rate 0000814676 CPS TECHNOLOGIES CORP/DE/ false --12-30 FY 2023 false false false false 0.01 0.01 20000000 20000000 14601487 14460486 14519215 14450470 82272 10016 254281 P5Y P3Y P5Y 0 1 1 38000 P10Y P5Y 0.0343 0.0424 3.11 P3Y 3 10-K true 2023-12-30 false 0-16088 DE 04-2832509 111 South Worcester Street Norton MA 02766-2102 508 222-0614 Common Stock, $0.01 par value CPSH NASDAQ No No Yes Yes Non-accelerated Filer true false false false false 34000000 14519215 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Item <em style="font: inherit;">1C.</em> Cybersecurity</b> </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Cybersecurity is an area of increasing concern to management of and investors in CPS. While CPS has been ITAR compliant for many years, that in itself does <em style="font: inherit;">not</em> completely mitigate the risks of a cybersecurity incident. The Company is currently also working towards full compliance with NIST <em style="font: inherit;">800</em>-<em style="font: inherit;">171.</em> In working towards this goal, CPS has retained an outside consulting firm to work through this process and help us implement the policies, processes and procedures to further mitigate cybersecurity risks. CPS generally keeps all employee personally identifiable information with its payroll service provider. Each year the provider furnishes us with their SOC report which includes their cybersecurity policies and procedures.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Management is <em style="font: inherit;">not</em> aware of any previous cybersecurity incidents of any significance. Nevertheless, there is always a risk that a phishing attempt, ransomware or other attack by a bad actor could be successful. Although CPS is generally down the supply chain from prime contractors, the fact that we do work in the aerospace and defense industries does make us a potential target. Please refer to the risk factors titled “<i>Manufacturing interruptions or delays could affect our ability to meet customer demand and lead to higher costs</i>”<i> </i>and<i> </i>“<i>If we are subject to cyber-attacks, we could incur substantial costs and, if such attacks are successful, we could incur significant liabilities, reputational harm, and disruption to our operations</i>”<i> </i>in<i> </i>“Risk Factors”<i> </i>in Part I, Item <em style="font: inherit;">1A</em> of this Form <em style="font: inherit;">10</em>-K for more information on the risks posed to us by cybersecurity threats.<i> </i>Based on information currently available, management does <em style="font: inherit;">not</em> believe that there is a reasonably likely risk of these issues, nevertheless the possibility of <em style="font: inherit;">one</em> occurring cannot be completely ruled out.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">  </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Item <em style="font: inherit;">9B.</em> Other Information</b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company had <span style="-sec-ix-hidden:c108496195"><span style="-sec-ix-hidden:c108496362"><span style="-sec-ix-hidden:c108496363"><span style="-sec-ix-hidden:c108496364">no</span></span></span></span> information required to be disclosed in a report on Form <em style="font: inherit;">8</em>-K during the <em style="font: inherit;">fourth</em> quarter of the year covered by this Form <em style="font: inherit;">10</em>-K that has <em style="font: inherit;">not</em> been so reported.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">  </p> 392 Wolf & Company, P.C. Boston, Massachusetts 8813626 8266753 4389155 3777975 83191 685668 4581930 4875901 276349 211242 18144251 17817539 11271982 10770427 952883 952883 985649 985649 13210514 12708959 11936004 11446901 281629 64910 1556139 1326968 332000 466000 1569726 2069436 21602116 21679943 46797 43711 2535086 1836865 1075137 820856 251755 2521128 160000 157000 4068775 5379560 8090 54847 31277 231020 172000 309000 4280142 5974427 146015 144605 40180893 39726851 -22754796 -24125092 250138 40848 17321974 15705516 21602116 21679943 27550646 26586926 20725237 19285846 6825409 7301080 5126046 5066660 1699363 2234420 225757 12015 27261 641233 1952381 2887668 582085 756268 1370296 2131400 0.09 0.15 14495709 14424381 0.09 0.15 14628811 14675646 14350786 143508 39281810 -26256492 -2515 13166311 250359 250359 109700 1097 194682 -38333 157446 2131400 2131400 14460486 144605 39726851 -24125092 -40848 15705516 0 204797 0 0 204797 141001 1410 249245 0 -209290 41365 0 0 1370296 0 1370296 14601487 146015 40180893 -22754796 -250138 17321974 1370296 2131400 204797 250359 489103 445739 -499710 -754542 -0 3400 611180 -1092046 -602477 685668 -293971 964299 65107 -14631 698221 -263386 -265575 -2469116 1045010 1267453 3551399 718274 439772 0 3400 -718274 -436372 41365 157446 43671 56032 -2306 101414 546873 3216441 8266753 5050312 8813626 8266753 111456 456 5096 7954 209290 38333 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">1</em></span></i><span style="text-decoration: underline; ">) Nature of Business</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">CPS Technologies Corp. (the ‘Company’ or ‘CPS’) provides advanced material solutions to the transportation, automotive, energy, computing/internet, telecommunications, aerospace, defense and oil and gas end markets.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Our primary material solution is metal matrix composites.  We design, manufacture and sell custom metal matrix composite components which improve the performance and reliability of systems in these end markets.  </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">  </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">) Summary of Significant Accounting Policies</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(a) Cash and Cash Equivalents</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company considers all highly liquid investments with a maturity of <i><em style="font: inherit;">three</em></i> months or less at the date of purchase to be cash equivalents.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(b) Accounts Receivable</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company reports its accounts receivable at the invoiced amount less an allowance for credit losses. The Company’s management provides appropriate provisions for uncollectible accounts based upon factors surrounding the credit risk and activity of specific customers, historical trends, economic conditions and other information to estimate future expected losses. Adjustments to the allowance are charged to operations in the period in which information becomes available that <i><em style="font: inherit;"> may </em></i>affect the allowance.   The Company maintains an allowance for credit losses of $10,000 as of <i><em style="font: inherit;"> December 30, 2023 </em></i>and <i><em style="font: inherit;"> December 31, 2022.</em></i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(b)(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">1</em></span></i><span style="text-decoration: underline; ">) Accounts Receivable-Other</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;">As of <i><em style="font: inherit;"> December 30, 2023</em></i> this amount was primarily VAT paid by CPS, but due to be repaid by its European customers with future shipments. In <i><em style="font: inherit;">2022</em></i> the Company filed for the Employee Retention Tax Credit (ERTC) in the amount of $641,086.  This credit was still due from the Internal Revenue Service (“IRS”) on <i><em style="font: inherit;"> December 31, 2022</em></i> however was collected in <em style="font: inherit;">2023.</em> </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(c) Inventories</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Inventories are stated at the lower of cost (cost is based on standard costs which approximate actual costs), as determined under the <i><em style="font: inherit;">first</em></i>-in, <i><em style="font: inherit;">first</em></i>-out method (FIFO), or net realizable value. A reserve for obsolete inventories is based on factors regarding the sales and usage of such inventories, including inventories manufactured for specific customers. The Company’s general obsolescence policy is to reserve against obsolete inventory when there has been <i><em style="font: inherit;">no</em></i> activity on a particular part for a <i><em style="font: inherit;">twelve</em></i> month period and there are <i><em style="font: inherit;">no</em></i> expected customer orders.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(d) Property and Equipment</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Property and equipment are stated at cost. Depreciation of equipment is calculated on a straight-line basis over the estimated useful life, generally <span style="-sec-ix-hidden:c108496218">five</span> years for production equipment and <span style="-sec-ix-hidden:c108496219">three</span> to <span style="-sec-ix-hidden:c108496220">five</span> years for furniture and office equipment. Leasehold improvements are depreciated over the shorter of the lease term or their useful life. Maintenance and repairs are charged to expense as incurred. Upon retirement or sale, the cost and related accumulated depreciation or amortization are removed from their respective accounts. Any gains or losses on the disposition of property and equipment are included in the results of operations in the period in which they occur.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(e) Impairment of Long-Lived Assets</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company reviews long-lived assets for impairment whenever circumstances and situations change such that there is an indication that the carrying amounts <i><em style="font: inherit;"> may </em><em style="font: inherit;">not</em></i> be recovered. Recoverability is assessed based on estimated undiscounted future cash flows. As of <i><em style="font: inherit;"> December 30, 2023 </em></i>and <i><em style="font: inherit;"> December 31, 2022, </em></i>the Company believes that there has been no impairment of its long-lived assets.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(f) Revenue Recognition </span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Revenue is recognized in accordance with the <i><em style="font: inherit;">five</em></i>-step method under Accounting Standards Codification (ASC) <i><em style="font: inherit;">606,</em></i> “Revenue from Contracts with Customers.”</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Identifying the Contract with the Customer</i></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company identifies contracts with customers as agreements that create enforceable rights and obligations.  In the case of a few large customers the Company has executed long-term Master Sales Agreements (“MSA”).  These are umbrella agreements which typically define the terms and conditions under which a customer can order goods from CPS.  These in themselves do <i><em style="font: inherit;">not</em></i> constitute a contract as <i><em style="font: inherit;">no</em></i> products are committed to be transferred and the customer has <i><em style="font: inherit;">no</em></i> obligation to make payments. In the case of SBIRs an enforceable contract is signed by both the customer and CPS.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company contract is only enforceable once both parties have approved it and is usually in the form of a written purchase order from a customer combined with acknowledgement from the Company.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In cases without an MSA, the customer submits a blueprint for a product, the Company provides a quote and the customer responds with a purchase order.   In these cases the Company’s acceptance of the purchase order constitutes an enforceable contract.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><i>Identifying the Performance Obligations in the Contract</i></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">For each contract, the Company considers the promise to transfer products, each of which are distinct, to be the identified performance obligations. For SBIRs the Company is obligated to provide certain services over the life of the agreement and the customer is obligated to pay for those services, generally monthly, as they are performed.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Shipping and handling activities for which the Company is responsible are <i><em style="font: inherit;">not</em></i> a separate promised service but instead are activities to fulfill the entity’s promise to transfer goods. Shipping and handling fees will be recognized at the same time as the related performance obligations are satisfied.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company provides an assurance-type warranty.  This guarantees that the product functions as promised and meets specifications.  Under its terms and conditions the Company offers a <i><em style="font: inherit;">30</em></i> day warranty and replaces defective or non-conforming products.  The expense of replacement is recorded at the time the Company agrees to replace a defective or non-conforming product.  This assurance type warranty is <i><em style="font: inherit;">not</em></i> considered to be a distinct performance obligation.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Determining the Transaction Price</i></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company determines the transaction price as the amount of consideration specified in the contract that it expects to receive in exchange for transferring promised goods or services to the customer. Amounts collected from customers for sales value added and other taxes are excluded from the transaction prices. Product sales are recorded net of trade discounts and sales returns.  The Company will establish a reserve for product returns when necessary based on returns history and specific circumstances in which the Company anticipates returns to occur. Such product return reserves are recorded as a reduction to revenue. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">If a contract includes a variable amount, such as a rebate, then the Company estimates the transaction price using either the expected value or the most likely amount of consideration to be received, depending upon the specific facts and circumstances. The Company includes estimated variable consideration in the transaction price only to the extent it is probable that a significant reversal of revenue will <i><em style="font: inherit;">not</em></i> occur when the uncertainty is resolved. The Company updates its estimate of variable consideration at the end of each reporting period to reflect changes in facts and circumstances. As of <i><em style="font: inherit;"> December 30, 2023 </em></i>there are no contracts with variable consideration.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">When credit is granted to customers, payment is typically due <i><em style="font: inherit;">30</em></i> to <i><em style="font: inherit;">90</em></i> days from billing and accordingly our contracts with customers do <i><em style="font: inherit;">not</em></i> include a significant financing component.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><i>Allocating the Transaction Price to the Performance Obligations</i></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In virtually all cases the transaction price is tied to a specific product or service in the contract obviating the need for any allocation.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Recognizing Revenue When (or as) the Performance Obligations are Satisfied</i></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company recognizes revenue at the point in time when it transfers control of the promised goods or services to the customer, which typically occurs once the product has shipped or has been delivered to the customer or the service has been performed. Occasionally, for the purpose of ensuring a steady flow of product, the Company ships products on consignment. In these instances, delivery is deemed to have occurred when the customer pulls inventory out of the warehouse for use in their production, or upon a specified period of time as agreed upon by both parties.  As of <i><em style="font: inherit;"> December 30, 2023 </em></i>there are no products on consignment.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company generally expenses sales commissions when incurred because the amortization period would have been <i><em style="font: inherit;">one</em></i> year or less. The costs are recorded within, selling, general and administrative expenses.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company does <i><em style="font: inherit;">not</em></i> disclose the value of unsatisfied performance obligations for contracts with an original expected length of <i><em style="font: inherit;">one</em></i> year or less.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(g) Income Taxes</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company uses the asset and liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are recorded for the expected future tax consequences of temporary differences between the financial reporting and income tax bases of assets and liabilities and are measured using the enacted tax rates and laws that are expected to be in affect when the differences reverse. A valuation allowance is established to reduce net deferred tax assets to the amount expected to be realized.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company’s policy is to recognize interest and penalties related to income tax matters in income tax expense. As of <i><em style="font: inherit;"> December 30, 2023 </em></i>and <i><em style="font: inherit;"> December 31, 2022, </em></i>the Company has no accruals for interest or penalties related to income tax matters. The Company does <span style="-sec-ix-hidden:c108496244">not</span> have any uncertain tax positions at <i><em style="font: inherit;"> December 30, 2023 </em></i>or <i><em style="font: inherit;"> December 31, 2022 </em></i>which required accrual or disclosure.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(h) Net Income Per Common Share</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Basic net income per common share is calculated by dividing net income by the weighted average number of common shares outstanding during the period. Diluted net income per common share is calculated by dividing net income by the sum of the weighted average number of common shares plus additional common shares that would have been outstanding if potential dilutive common shares had been issued for granted stock option and stock purchase rights. Common stock equivalents are excluded from the diluted calculations when a net loss is incurred as they would be anti-dilutive.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(i) Reclassification</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Certain amounts in prior year’s financial statements have been reclassified to conform to the current year’s presentation.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(j) Recent Accounting Pronouncements</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">In the normal course of business, management evaluates all the new accounting pronouncements issued by the Financial Accounting Standard Board (“FASB”). Effective <em style="font: inherit;"> January 1, 2023, </em>the Company adopted FASB Accounting Standards Update (“ASU”) <em style="font: inherit;">2016</em>-<em style="font: inherit;">13,</em> <i>Measurement of Credit Losses on Financial Instruments</i>, which changed the way entities recognize credit losses of most financial assets. Short-term and long-term financial assets, as defined by the standard, are impacted by immediate recognition of estimated credit losses in the financial statements, reflecting the net amount expected to be collected. The adoption of this standard had an immaterial impact on our financial statements. Management does <i><em style="font: inherit;">not</em></i> expect any of the recently issued accounting pronouncements, which have <i><em style="font: inherit;">not</em></i> already been adopted, to have a material impact on the Company’s financial statements.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(k) Use of Estimates in the Preparation of Financial Statements</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the amounts of revenues and expenses recorded during the reporting period. Such estimates are adjusted by management periodically as a result of existing or anticipated economic changes which effect, or <i><em style="font: inherit;"> may </em></i>effect, the Company’s financial statements. Actual results could differ from these estimates.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(l) Fiscal Year-End</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company’s fiscal year end is the last Saturday in <i><em style="font: inherit;"> December </em></i>which could result in a <i><em style="font: inherit;">52</em></i> or <i><em style="font: inherit;">53</em></i> week year. Fiscal year <i><em style="font: inherit;">2023</em></i> consisted of <i><em style="font: inherit;">52</em></i> weeks and <i><em style="font: inherit;">2022</em></i> consisted of <i><em style="font: inherit;">53</em></i> weeks.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(m) Share-Based Payments</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company measures the cost of employee services received in exchange for an award of equity instruments based on the grant date fair value of the award. That cost is recognized over the period during which an employee is required to provide services in exchange for the award, the requisite service period (usually the vesting period). The Company provides an estimate of forfeitures at initial grant date, and this estimated forfeiture rate is adjusted periodically based on actual forfeiture experience. The Company uses the Black-Scholes option pricing model to determine the fair value of stock options granted.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(n) Segment Reporting</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company views its operations and manages its business as <span style="-sec-ix-hidden:c108496262">one</span> segment. The Company produces and sells advanced material solutions, primarily metal matrix composites, to assemblers of high density electronics and other specialty components and subassemblies. The Company also assembles housings and packages for hybrid circuits, selling to the same customers mentioned above. These customers represent a single market or segment with similar stringent and well-defined requirements. The Company’s customers, in turn, sell the components and subassemblies which incorporate the products into many different end markets, however, these end markets are <i><em style="font: inherit;">two</em></i> to <i><em style="font: inherit;">three</em></i> levels removed from the Company. The Company also sells armor strike faces to armor manufacturers, using the same manufacturing process used in its other product solutions. The Company makes operating decisions and assesses financial performance only for the Company as a whole and does <i><em style="font: inherit;">not</em></i> make operating decisions or assess financial performance by the end markets which ultimately use the products.</p><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">  </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(a) Cash and Cash Equivalents</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company considers all highly liquid investments with a maturity of <i><em style="font: inherit;">three</em></i> months or less at the date of purchase to be cash equivalents.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(b) Accounts Receivable</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company reports its accounts receivable at the invoiced amount less an allowance for credit losses. The Company’s management provides appropriate provisions for uncollectible accounts based upon factors surrounding the credit risk and activity of specific customers, historical trends, economic conditions and other information to estimate future expected losses. Adjustments to the allowance are charged to operations in the period in which information becomes available that <i><em style="font: inherit;"> may </em></i>affect the allowance.   The Company maintains an allowance for credit losses of $10,000 as of <i><em style="font: inherit;"> December 30, 2023 </em></i>and <i><em style="font: inherit;"> December 31, 2022.</em></i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(b)(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">1</em></span></i><span style="text-decoration: underline; ">) Accounts Receivable-Other</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;">As of <i><em style="font: inherit;"> December 30, 2023</em></i> this amount was primarily VAT paid by CPS, but due to be repaid by its European customers with future shipments. In <i><em style="font: inherit;">2022</em></i> the Company filed for the Employee Retention Tax Credit (ERTC) in the amount of $641,086.  This credit was still due from the Internal Revenue Service (“IRS”) on <i><em style="font: inherit;"> December 31, 2022</em></i> however was collected in <em style="font: inherit;">2023.</em> </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> 10000 641086 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(c) Inventories</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Inventories are stated at the lower of cost (cost is based on standard costs which approximate actual costs), as determined under the <i><em style="font: inherit;">first</em></i>-in, <i><em style="font: inherit;">first</em></i>-out method (FIFO), or net realizable value. A reserve for obsolete inventories is based on factors regarding the sales and usage of such inventories, including inventories manufactured for specific customers. The Company’s general obsolescence policy is to reserve against obsolete inventory when there has been <i><em style="font: inherit;">no</em></i> activity on a particular part for a <i><em style="font: inherit;">twelve</em></i> month period and there are <i><em style="font: inherit;">no</em></i> expected customer orders.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(d) Property and Equipment</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Property and equipment are stated at cost. Depreciation of equipment is calculated on a straight-line basis over the estimated useful life, generally <span style="-sec-ix-hidden:c108496218">five</span> years for production equipment and <span style="-sec-ix-hidden:c108496219">three</span> to <span style="-sec-ix-hidden:c108496220">five</span> years for furniture and office equipment. Leasehold improvements are depreciated over the shorter of the lease term or their useful life. Maintenance and repairs are charged to expense as incurred. Upon retirement or sale, the cost and related accumulated depreciation or amortization are removed from their respective accounts. Any gains or losses on the disposition of property and equipment are included in the results of operations in the period in which they occur.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(e) Impairment of Long-Lived Assets</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company reviews long-lived assets for impairment whenever circumstances and situations change such that there is an indication that the carrying amounts <i><em style="font: inherit;"> may </em><em style="font: inherit;">not</em></i> be recovered. Recoverability is assessed based on estimated undiscounted future cash flows. As of <i><em style="font: inherit;"> December 30, 2023 </em></i>and <i><em style="font: inherit;"> December 31, 2022, </em></i>the Company believes that there has been no impairment of its long-lived assets.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> 0 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(f) Revenue Recognition </span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Revenue is recognized in accordance with the <i><em style="font: inherit;">five</em></i>-step method under Accounting Standards Codification (ASC) <i><em style="font: inherit;">606,</em></i> “Revenue from Contracts with Customers.”</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Identifying the Contract with the Customer</i></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company identifies contracts with customers as agreements that create enforceable rights and obligations.  In the case of a few large customers the Company has executed long-term Master Sales Agreements (“MSA”).  These are umbrella agreements which typically define the terms and conditions under which a customer can order goods from CPS.  These in themselves do <i><em style="font: inherit;">not</em></i> constitute a contract as <i><em style="font: inherit;">no</em></i> products are committed to be transferred and the customer has <i><em style="font: inherit;">no</em></i> obligation to make payments. In the case of SBIRs an enforceable contract is signed by both the customer and CPS.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company contract is only enforceable once both parties have approved it and is usually in the form of a written purchase order from a customer combined with acknowledgement from the Company.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In cases without an MSA, the customer submits a blueprint for a product, the Company provides a quote and the customer responds with a purchase order.   In these cases the Company’s acceptance of the purchase order constitutes an enforceable contract.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><i>Identifying the Performance Obligations in the Contract</i></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">For each contract, the Company considers the promise to transfer products, each of which are distinct, to be the identified performance obligations. For SBIRs the Company is obligated to provide certain services over the life of the agreement and the customer is obligated to pay for those services, generally monthly, as they are performed.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Shipping and handling activities for which the Company is responsible are <i><em style="font: inherit;">not</em></i> a separate promised service but instead are activities to fulfill the entity’s promise to transfer goods. Shipping and handling fees will be recognized at the same time as the related performance obligations are satisfied.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company provides an assurance-type warranty.  This guarantees that the product functions as promised and meets specifications.  Under its terms and conditions the Company offers a <i><em style="font: inherit;">30</em></i> day warranty and replaces defective or non-conforming products.  The expense of replacement is recorded at the time the Company agrees to replace a defective or non-conforming product.  This assurance type warranty is <i><em style="font: inherit;">not</em></i> considered to be a distinct performance obligation.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Determining the Transaction Price</i></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company determines the transaction price as the amount of consideration specified in the contract that it expects to receive in exchange for transferring promised goods or services to the customer. Amounts collected from customers for sales value added and other taxes are excluded from the transaction prices. Product sales are recorded net of trade discounts and sales returns.  The Company will establish a reserve for product returns when necessary based on returns history and specific circumstances in which the Company anticipates returns to occur. Such product return reserves are recorded as a reduction to revenue. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">If a contract includes a variable amount, such as a rebate, then the Company estimates the transaction price using either the expected value or the most likely amount of consideration to be received, depending upon the specific facts and circumstances. The Company includes estimated variable consideration in the transaction price only to the extent it is probable that a significant reversal of revenue will <i><em style="font: inherit;">not</em></i> occur when the uncertainty is resolved. The Company updates its estimate of variable consideration at the end of each reporting period to reflect changes in facts and circumstances. As of <i><em style="font: inherit;"> December 30, 2023 </em></i>there are no contracts with variable consideration.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">When credit is granted to customers, payment is typically due <i><em style="font: inherit;">30</em></i> to <i><em style="font: inherit;">90</em></i> days from billing and accordingly our contracts with customers do <i><em style="font: inherit;">not</em></i> include a significant financing component.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><i>Allocating the Transaction Price to the Performance Obligations</i></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In virtually all cases the transaction price is tied to a specific product or service in the contract obviating the need for any allocation.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Recognizing Revenue When (or as) the Performance Obligations are Satisfied</i></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company recognizes revenue at the point in time when it transfers control of the promised goods or services to the customer, which typically occurs once the product has shipped or has been delivered to the customer or the service has been performed. Occasionally, for the purpose of ensuring a steady flow of product, the Company ships products on consignment. In these instances, delivery is deemed to have occurred when the customer pulls inventory out of the warehouse for use in their production, or upon a specified period of time as agreed upon by both parties.  As of <i><em style="font: inherit;"> December 30, 2023 </em></i>there are no products on consignment.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company generally expenses sales commissions when incurred because the amortization period would have been <i><em style="font: inherit;">one</em></i> year or less. The costs are recorded within, selling, general and administrative expenses.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company does <i><em style="font: inherit;">not</em></i> disclose the value of unsatisfied performance obligations for contracts with an original expected length of <i><em style="font: inherit;">one</em></i> year or less.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> 0 0 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(g) Income Taxes</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company uses the asset and liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are recorded for the expected future tax consequences of temporary differences between the financial reporting and income tax bases of assets and liabilities and are measured using the enacted tax rates and laws that are expected to be in affect when the differences reverse. A valuation allowance is established to reduce net deferred tax assets to the amount expected to be realized.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company’s policy is to recognize interest and penalties related to income tax matters in income tax expense. As of <i><em style="font: inherit;"> December 30, 2023 </em></i>and <i><em style="font: inherit;"> December 31, 2022, </em></i>the Company has no accruals for interest or penalties related to income tax matters. The Company does <span style="-sec-ix-hidden:c108496244">not</span> have any uncertain tax positions at <i><em style="font: inherit;"> December 30, 2023 </em></i>or <i><em style="font: inherit;"> December 31, 2022 </em></i>which required accrual or disclosure.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> 0 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(h) Net Income Per Common Share</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Basic net income per common share is calculated by dividing net income by the weighted average number of common shares outstanding during the period. Diluted net income per common share is calculated by dividing net income by the sum of the weighted average number of common shares plus additional common shares that would have been outstanding if potential dilutive common shares had been issued for granted stock option and stock purchase rights. Common stock equivalents are excluded from the diluted calculations when a net loss is incurred as they would be anti-dilutive.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(i) Reclassification</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Certain amounts in prior year’s financial statements have been reclassified to conform to the current year’s presentation.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(j) Recent Accounting Pronouncements</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">In the normal course of business, management evaluates all the new accounting pronouncements issued by the Financial Accounting Standard Board (“FASB”). Effective <em style="font: inherit;"> January 1, 2023, </em>the Company adopted FASB Accounting Standards Update (“ASU”) <em style="font: inherit;">2016</em>-<em style="font: inherit;">13,</em> <i>Measurement of Credit Losses on Financial Instruments</i>, which changed the way entities recognize credit losses of most financial assets. Short-term and long-term financial assets, as defined by the standard, are impacted by immediate recognition of estimated credit losses in the financial statements, reflecting the net amount expected to be collected. The adoption of this standard had an immaterial impact on our financial statements. Management does <i><em style="font: inherit;">not</em></i> expect any of the recently issued accounting pronouncements, which have <i><em style="font: inherit;">not</em></i> already been adopted, to have a material impact on the Company’s financial statements.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(k) Use of Estimates in the Preparation of Financial Statements</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the amounts of revenues and expenses recorded during the reporting period. Such estimates are adjusted by management periodically as a result of existing or anticipated economic changes which effect, or <i><em style="font: inherit;"> may </em></i>effect, the Company’s financial statements. Actual results could differ from these estimates.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(l) Fiscal Year-End</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company’s fiscal year end is the last Saturday in <i><em style="font: inherit;"> December </em></i>which could result in a <i><em style="font: inherit;">52</em></i> or <i><em style="font: inherit;">53</em></i> week year. Fiscal year <i><em style="font: inherit;">2023</em></i> consisted of <i><em style="font: inherit;">52</em></i> weeks and <i><em style="font: inherit;">2022</em></i> consisted of <i><em style="font: inherit;">53</em></i> weeks.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(m) Share-Based Payments</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company measures the cost of employee services received in exchange for an award of equity instruments based on the grant date fair value of the award. That cost is recognized over the period during which an employee is required to provide services in exchange for the award, the requisite service period (usually the vesting period). The Company provides an estimate of forfeitures at initial grant date, and this estimated forfeiture rate is adjusted periodically based on actual forfeiture experience. The Company uses the Black-Scholes option pricing model to determine the fair value of stock options granted.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">2</em></span></i><span style="text-decoration: underline; ">)(n) Segment Reporting</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company views its operations and manages its business as <span style="-sec-ix-hidden:c108496262">one</span> segment. The Company produces and sells advanced material solutions, primarily metal matrix composites, to assemblers of high density electronics and other specialty components and subassemblies. The Company also assembles housings and packages for hybrid circuits, selling to the same customers mentioned above. These customers represent a single market or segment with similar stringent and well-defined requirements. The Company’s customers, in turn, sell the components and subassemblies which incorporate the products into many different end markets, however, these end markets are <i><em style="font: inherit;">two</em></i> to <i><em style="font: inherit;">three</em></i> levels removed from the Company. The Company also sells armor strike faces to armor manufacturers, using the same manufacturing process used in its other product solutions. The Company makes operating decisions and assesses financial performance only for the Company as a whole and does <i><em style="font: inherit;">not</em></i> make operating decisions or assess financial performance by the end markets which ultimately use the products.</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">3</em></span></i><span style="text-decoration: underline; ">) Inventories</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">As of <i><em style="font: inherit;"> December 30, 2023 </em></i>and <i><em style="font: inherit;"> December 31, 2022 </em></i>inventories consisted of the following:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Raw materials</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,861,333</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,645,442</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Work in process</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,493,582</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,863,512</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finished goods</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">537,975</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">525,872</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Gross Inventory</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,892,890</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,034,826</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Reserve for obsolescence</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(310,960</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(158,925</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">4,581,930</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">4,875,901</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Raw materials</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,861,333</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,645,442</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Work in process</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,493,582</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,863,512</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finished goods</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">537,975</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">525,872</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Gross Inventory</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,892,890</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,034,826</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Reserve for obsolescence</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(310,960</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(158,925</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">4,581,930</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">4,875,901</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 2861333 2645442 1493582 1863512 537975 525872 4892890 5034826 310960 158925 4581930 4875901 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">4</em></span></i><span style="text-decoration: underline; ">) Leases</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company had <span style="-sec-ix-hidden:c108496268">one</span> real estate lease in <i><em style="font: inherit;">2023</em></i> expiring in <i><em style="font: inherit;"> February 2026. </em></i>CPS also has a few other leases for equipment which are minor in nature and are generally short-term in duration. <i><em style="font: inherit;">None</em></i> of these equipment leases have been capitalized as the Company elected an accounting policy for short-term leases, which allows lessees to avoid recognizing right-of-use assets and liabilities for leases with terms of <i><em style="font: inherit;">12</em></i> months or fewer.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The real estate lease expiring in <i><em style="font: inherit;">2026</em></i> (the “Norton facility lease’) is included as a right-of-use lease asset and corresponding lease liability on the balance sheet. This asset and liability are based on the present value of remaining lease payments over the remaining lease term using the Company’s incremental borrowing rate at the commencement date of the lease. The Company does <i><em style="font: inherit;">not</em></i> separate lease components from non-lease components.  The Company’s lease agreements do <i><em style="font: inherit;">not</em></i> contain any material residual value guarantees or material restrictive covenants.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Norton facility lease comprises approximately <span style="-sec-ix-hidden:c108496275">38</span> thousand square feet. The lease is a triple net lease wherein the Company is responsible for payment of all real estate taxes, operating costs and utilities.  The Company also has an option to buy the property and a <i><em style="font: inherit;">first</em></i> right of refusal during the term of the lease.  Annual rental payments are through maturity are reflected in the table below.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:36pt;">The following table presents information about the amount, timing and uncertainty of cash flows arising from the Company’s capitalized operating lease as of <i><em style="font: inherit;"> December 30, 2023:</em></i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">(Dollars in Thousands</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">December 30, 2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Maturity of capitalized lease liability</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><i><i>Lease payments</i></i></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">164,700</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">165,240</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">27,540</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total undiscounted operating lease payments</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">357,480</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Less: Imputed interest</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(25,480</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Present value of operating lease liability</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">332,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Balance Sheet Classification</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Current lease liability</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">160,000</td><td style="width: 1%; margin-left: 0pt; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Long-term lease liability</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; border-bottom: 1px solid rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; border-bottom: 1px solid rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">172,000</td><td style="width: 1%; padding-bottom: 1px; margin-left: 0pt; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total operating lease liability</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; border-bottom: 3px double rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td><td style="width: 12%; border-bottom: 3px double rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">332,000</td><td style="width: 1%; padding-bottom: 3px; margin-left: 0pt; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Other Information</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted-average remaining lease term for capitalized operating leases (in months)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">26</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted-average discount rate for capitalized operating leases</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.6</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Operating Lease Costs and Cash Flows</b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:36pt;">Operating lease cost and cash paid was $162 thousand for the <i><em style="font: inherit;">twelve</em></i> months ended <i><em style="font: inherit;"> December 30, 2023 </em></i>and $160 thousand during the year ended <i><em style="font: inherit;"> December 31, 2022. </em></i>These costs are related to its long-term operating lease. All other short-term leases were immaterial.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Estimated monthly payments under the terms of the Norton facility lease, escalate from $13 thousand to $14 thousand over the lease term.</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">  </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">(Dollars in Thousands</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">December 30, 2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Maturity of capitalized lease liability</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><i><i>Lease payments</i></i></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">164,700</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">165,240</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">27,540</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total undiscounted operating lease payments</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">357,480</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Less: Imputed interest</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(25,480</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Present value of operating lease liability</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">332,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 164700 165240 27540 357480 25480 332000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Balance Sheet Classification</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Current lease liability</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">160,000</td><td style="width: 1%; margin-left: 0pt; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Long-term lease liability</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; border-bottom: 1px solid rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; border-bottom: 1px solid rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">172,000</td><td style="width: 1%; padding-bottom: 1px; margin-left: 0pt; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total operating lease liability</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; border-bottom: 3px double rgb(0, 0, 0); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">$</td><td style="width: 12%; border-bottom: 3px double rgb(0, 0, 0); text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">332,000</td><td style="width: 1%; padding-bottom: 3px; margin-left: 0pt; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Other Information</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted-average remaining lease term for capitalized operating leases (in months)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">26</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted-average discount rate for capitalized operating leases</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.6</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> </tbody></table> 160000 172000 332000 P26Y 0.066 162000 160000 13000 14000 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">5</em></span></i><span style="text-decoration: underline; ">) Share-Based Compensation Plans</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company adopted the <i><em style="font: inherit;">2020</em></i> Equity Incentive Plan (<i><em style="font: inherit;">"2020</em></i> Plan") on <i><em style="font: inherit;"> March 3, 2020. </em></i>Under the terms of the <i><em style="font: inherit;">2020</em></i> Plan all of the Company’s employees, officers, directors, consultants and advisors are eligible to be granted options, restricted stock awards, or other stock-based awards. Some outstanding options are non-statutory stock options; some are incentive stock options.  All options granted are exercisable at the fair market value of the stock on the date of grant and expire <span style="-sec-ix-hidden:c108496286">ten</span> years from the date of grant. The options granted to employees generally vest in equal annual installments over a <span style="-sec-ix-hidden:c108496287">five</span>-year period. The options granted to directors generally vest immediately on date of grant. Certain options also remain issued and outstanding under the <em style="font: inherit;">2009</em> Stock Incentive Plan.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Under the <i><em style="font: inherit;">2020</em></i> Plan a total of 1,500,000 shares of common stock are available for issuance, of which 832,700 shares remain available for grant as of <i><em style="font: inherit;"> December 30, 2023.</em></i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">A summary of stock option activity as of <i><em style="font: inherit;"> December 30, 2023 </em></i>and changes during the year then ended is presented below:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align: bottom; width: 51%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Weighted</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Weighted</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr><td style="vertical-align: bottom; width: 51%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Average</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Remaining</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Aggregate</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr><td style="vertical-align: bottom; width: 51%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Exercise</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Contractual</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Intrinsic</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr><td style="vertical-align: bottom; width: 51%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Shares</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Price</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Life (years)</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Value</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Outstanding at beginning of year</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">961,400</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2.47</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Granted</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">344,500</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2.90</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Exercised</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">(141,000</p> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1.78</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Forfeited</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">(236,400</p> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2.93</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Expired</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">(25,000</p> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1.00</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Outstanding at end of year</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">903,500</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2.66</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">6.51</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2,403,762</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 51%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Options exercisable at year-end</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">494,600</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2.42</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">4.58</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1,199,158</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The fair value of each option grant is estimated on the date of grant using the Black-Scholes option-pricing model. The following table presents the annualized weighted average values of the significant assumptions used to estimate the fair values of the options granted during <i><em style="font: inherit;">2023</em></i> and <i><em style="font: inherit;">2022:</em></i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align: bottom; width: 66%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="4" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 10%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2023</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="4" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 10%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2022</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 66%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Risk-free interest rate</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;"><span style="-sec-ix-hidden:c108496056">3.43%</span></p> </td><td style="vertical-align: bottom; width: 4%;"><em style="font: inherit;"> </em><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>-</i></p> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="-sec-ix-hidden:c108496058">4.24%</span></p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1.55%</p> </td><td style="vertical-align: bottom; width: 4%;"><em style="font: inherit;"> </em><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>-</i></p> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.84%</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 66%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Expected life in years</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">5</p> </td><td style="vertical-align: bottom; width: 4%;"><em style="font: inherit;"> </em><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>-</i></p> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">5.5</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">6</p> </td><td style="vertical-align: bottom; width: 4%;"><em style="font: inherit;"> </em><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>-</i></p> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">7</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 66%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Expected volatility</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">59.7%</p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">54%</p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 66%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Expected dividend yield</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">0</p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">0</p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 66%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Weighted average fair value of grants</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"> </p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">$2.91</p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"> </p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><span style="-sec-ix-hidden:c108496084">$3.11</span></p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">All options are granted with an exercise price equal to the fair market value of the underlying common stock on the date of grant.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company recognized $204,797 and $250,359 as stock based compensation expense in <i><em style="font: inherit;">2023</em></i> and <i><em style="font: inherit;">2022,</em></i> respectively.  As of <i><em style="font: inherit;"> December 30, 2023, </em></i>there was $560,815 of total unrecognized compensation cost related to non-vested share-based compensation arrangements granted under the plan; that cost is expected to be recognized over a weighted average period of 2.55 years.</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">   </p> 1500000 832700 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align: bottom; width: 51%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Weighted</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Weighted</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr><td style="vertical-align: bottom; width: 51%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Average</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Remaining</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Aggregate</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr><td style="vertical-align: bottom; width: 51%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Exercise</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Contractual</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Intrinsic</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr><td style="vertical-align: bottom; width: 51%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Shares</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Price</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Life (years)</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="2" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Value</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Outstanding at beginning of year</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">961,400</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2.47</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Granted</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">344,500</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2.90</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Exercised</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">(141,000</p> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1.78</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Forfeited</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">(236,400</p> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2.93</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Expired</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">(25,000</p> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1.00</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 9%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Outstanding at end of year</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">903,500</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2.66</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">6.51</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2,403,762</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 51%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 9%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 51%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Options exercisable at year-end</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">494,600</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2.42</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">4.58</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">$</p> </td><td style="border-bottom: 3px double rgb(0, 0, 0); vertical-align: bottom; width: 9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1,199,158</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> </tbody></table> 961400 2.47 344500 2.9 141000 1.78 236400 2.93 25000 1 903500 2.66 P6Y6M3D 2403762 494600 2.42 P4Y6M29D 1199158 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align: bottom; width: 66%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="4" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 10%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2023</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td colspan="4" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: 10%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2022</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 66%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Risk-free interest rate</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;"><span style="-sec-ix-hidden:c108496056">3.43%</span></p> </td><td style="vertical-align: bottom; width: 4%;"><em style="font: inherit;"> </em><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>-</i></p> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="-sec-ix-hidden:c108496058">4.24%</span></p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1.55%</p> </td><td style="vertical-align: bottom; width: 4%;"><em style="font: inherit;"> </em><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>-</i></p> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.84%</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 66%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Expected life in years</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">5</p> </td><td style="vertical-align: bottom; width: 4%;"><em style="font: inherit;"> </em><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>-</i></p> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">5.5</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">6</p> </td><td style="vertical-align: bottom; width: 4%;"><em style="font: inherit;"> </em><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>-</i></p> </td><td style="vertical-align: bottom; width: 5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">7</p> </td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 66%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Expected volatility</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">59.7%</p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">54%</p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 66%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Expected dividend yield</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">0</p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">0</p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> <tr style="background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 66%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Weighted average fair value of grants</p> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"> </p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">$2.91</p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> </td><td style="vertical-align: bottom; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"> </p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><span style="-sec-ix-hidden:c108496084">$3.11</span></p> </td><td style="vertical-align: bottom; width: 5%;"><em style="font: inherit;"> </em></td><td style="vertical-align: bottom; width: 1%;"> </td></tr> </tbody></table> 0.0155 0.0284 P5Y P5Y6M P6Y P7Y 0.597 0.54 0 0 2.91 204797 250359 560815 P2Y6M18D <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">6</em></span></i><span style="text-decoration: underline; ">) Accrued Expenses</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Accrued expenses at <i><em style="font: inherit;"> December 30, 2023 </em></i>and <i><em style="font: inherit;"> December 31, 2022 </em></i>consist of the following:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Accrued legal and accounting</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">86,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">35,398</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Accrued payroll and related costs</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">649,201</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">760,305</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Accrued other</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">339,936</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">25,153</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,075,137</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">820,856</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Included in Accrued other is $288,000 as a reserve for potential credits to be issued as part of the quality issue described above. In addition to this reserve, the Company increased its sales returns in the amount of $104,126 for parts for which a credit was issued in <em style="font: inherit;"> January 2024.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Accrued legal and accounting</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">86,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">35,398</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Accrued payroll and related costs</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">649,201</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">760,305</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Accrued other</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">339,936</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">25,153</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,075,137</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">820,856</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 86000 35398 649201 760305 339936 25153 1075137 820856 288000 104126 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">7</em></span></i><span style="text-decoration: underline; ">) Revolving Line of Credit</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">In <i><em style="font: inherit;"> May 2023, </em></i>the Company terminated its $3.0 million revolving line of credit (LOC) with Massachusetts Business Development Corporation (BDC). A new LOC in the amount of $3.0 million was entered into with Rockland Trust Company. The LOC is secured by the accounts receivable and other assets of the Company and has an interest rate of the National Prime Rate as published by the Wall Street Journal (8.5% at <em style="font: inherit;"> December 30, 2023). </em>On <i><em style="font: inherit;"> December 30, 2023, </em></i>the Company had $0 of borrowings under this LOC and its borrowing base at the time would have permitted an additional $3.0 million to have been borrowed.  The LOC remains in effect until terminated per mutual agreement by both parties.  Total Interest Expense for <i><em style="font: inherit;">2023</em></i> was $0 and was $0 thousand for <i><em style="font: inherit;">2022.</em></i></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">  </p> 3000000 3000000 0.085 0 3000000 0 0 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">8</em></span></i><span style="text-decoration: underline; ">)</span><span style="text-decoration: underline; "> </span><span style="text-decoration: underline; ">Notes Payable</span><span style="text-decoration: underline; "> </span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">In <i><em style="font: inherit;"> March 2020, </em></i>the Company acquired a Sonoscan ultrasound microscope for a price of $208 thousand.  The full amount was financed through a 5 year note payable with a <span style="-sec-ix-hidden:c108496316">third</span> party equipment finance company.  The note is collateralized by the microscope and is being paid in monthly installments of $4 thousand, consisting of principal plus interest at a rate of 6.47%.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The aggregate maturities of the notes payable based on the payment terms of the agreement are as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Remaining in:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Payments due by period</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">FY 2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">48,974</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">FY 2025</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,155</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Less Interest</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(2,242</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total Principal Payments</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">54,887</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Total interest expense on notes payable during <i><em style="font: inherit;">2023</em></i> was $5,096 and during <i><em style="font: inherit;">2022</em></i> was $7,954.</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">   </p> 208000 P5Y 4000 0.0647 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Remaining in:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Payments due by period</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">FY 2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">48,974</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">FY 2025</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,155</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Less Interest</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(2,242</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total Principal Payments</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">54,887</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 48974 8155 2242 54887 5096 7954 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">9</em></span></i><span style="text-decoration: underline; ">) Income Taxes</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Components of income tax expense (benefit) for each year are as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Current:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Federal</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">81,919</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">1,270</em></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">State</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">456</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">456</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Current income tax provision (benefit):</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">82,375</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,726</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Federal</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">357,507</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">577,866</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">State</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">142,203</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">176,676</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred income tax provision (benefit), net</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">499,710</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">754,542</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">582,085</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">756,268</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Deferred tax assets as of <i><em style="font: inherit;"> December 30, 2023 </em></i>and <i><em style="font: inherit;"> December 31, 2022 </em></i>are as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">December 30,</p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">December 31,</p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred Tax Assets:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Net operating loss carryforwards</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">132,632</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Stock compensation</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">209,609</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">209,092</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Credit carryforwards</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">865,928</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,253,956</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Inventory</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">84,955</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">80,628</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Accrued liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,071</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Depreciation</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">143,081</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">179,481</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Capitalized R&amp;D, net</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">263,421</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">205,878</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Other</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,732</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,698</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net deferred tax assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,569,726</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,069,436</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">A summary of the change in the deferred tax asset is as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Gross deferred tax balance at beginning of year</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,069,436</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,823,978</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred tax benefit (provision)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(499,710</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(754,542</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at end of year, net</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,569,726</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,069,436</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Income tax expense is different from the amounts computed by applying the U.S. federal statutory income tax rate of 21 percent to pretax income as a result of the following:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Tax at statutory rate</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">416,663</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">578,214</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">State tax, net of federal benefit</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">142,562</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">177,036</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Other</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,860</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,018</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">582,085</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">756,268</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company’s income tax filings are subject to review and examination by federal and state taxing authorities. The Company is currently open to audit under the applicable statutes of limitations for the years <i><em style="font: inherit;">2020</em></i> through <i><em style="font: inherit;">2023.</em></i></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">  </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Current:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Federal</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">81,919</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">1,270</em></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">State</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">456</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">456</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Current income tax provision (benefit):</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">82,375</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,726</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Federal</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">357,507</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">577,866</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">State</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">142,203</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">176,676</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred income tax provision (benefit), net</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">499,710</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">754,542</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">582,085</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">756,268</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 81919 456 456 82375 1726 357507 577866 142203 176676 499710 754542 582085 756268 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">December 30,</p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">December 31,</p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred Tax Assets:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Net operating loss carryforwards</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">132,632</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Stock compensation</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">209,609</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">209,092</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Credit carryforwards</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">865,928</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,253,956</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Inventory</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">84,955</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">80,628</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Accrued liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,071</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Depreciation</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">143,081</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">179,481</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Capitalized R&amp;D, net</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">263,421</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">205,878</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Other</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,732</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,698</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net deferred tax assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,569,726</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,069,436</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 0 132632 209609 209092 865928 1253956 84955 80628 0 5071 143081 179481 263421 205878 2732 2698 1569726 2069436 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Gross deferred tax balance at beginning of year</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,069,436</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,823,978</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred tax benefit (provision)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(499,710</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(754,542</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at end of year, net</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,569,726</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,069,436</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 2069436 2823978 -499710 -754542 1569726 2069436 0.21 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Tax at statutory rate</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">416,663</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">578,214</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">State tax, net of federal benefit</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">142,562</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">177,036</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Other</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,860</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,018</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">582,085</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">756,268</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 416663 578214 142562 177036 22860 1018 582085 756268 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">10</em></span></i><span style="text-decoration: underline; ">) Retirement Savings Plan</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company sponsors a Retirement Savings Plan (the ‘Plan’) under the provisions of Section <i><em style="font: inherit;">401</em></i> of the Internal Revenue Code. Employees, as defined in the Plan, are eligible to participate in the Plan after <i><em style="font: inherit;">30</em></i> days of employment. Under the terms of the Plan, the Company <i><em style="font: inherit;"> may </em></i>match employee contributions under such method as described in the Plan. During <i><em style="font: inherit;">2023</em></i> the Company elected to match <em style="font: inherit;">1%</em> of each of the <i><em style="font: inherit;">first</em></i> 4% of employee contributions paid proportionally each pay period amounting to $232 thousand.  In <i><em style="font: inherit;">2022</em></i> the Company elected to match ½% of each of the <i><em style="font: inherit;">first</em></i> 4% of employee contributions paid proportionally each pay period amounting to $94 thousand<i>.</i></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">  </p> 0.04 232000 0.04 94000 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">11</em></span></i><span style="text-decoration: underline; ">) Concentrations of Credit Risk, Significant Customers and Geographic Information</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Financial instruments which subject the Company to concentrations of credit risk consist principally of cash, cash equivalents and trade accounts receivable. The Company maintains cash deposits in a sweep account, whereby funds are automatically moved in increments of <em style="font: inherit;">$250,000</em> to various FDIC insured financial institutions on a nightly basis.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company extends credit to customers who consist principally of microelectronics systems companies in the United States, Europe and Asia. The Company generally does <i><em style="font: inherit;">not</em></i> require collateral or other security as a condition of sale rather relying on credit approval, balance limitation and monitoring procedures to control credit risk of trade accounts receivable. The Company also maintains a credit insurance policy covering most of its non-US customers to further mitigate credit risk. Management conducts on-going credit evaluations of its customers, and historically the Company has <i><em style="font: inherit;">not</em></i> experienced any significant credit-related losses with respect to its trade accounts receivable.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Revenues from significant customers as a percentage of total revenues in <i><em style="font: inherit;">2023</em></i> and <i><em style="font: inherit;">2022</em></i> were as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Percent of Total Revenues</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><span style="text-decoration: underline; ">Significant Customer</span></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">A</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">B</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">C</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">As of <i><em style="font: inherit;"> December 30, 2023, </em></i>the Company had trade accounts receivable due from these <span style="-sec-ix-hidden:c108496345">three</span> customers that accounted for 50% of total trade accounts receivable as of that date. To further mitigate the potential for credit losses the Company has acquired a credit insurance policy covering most of our sales to non-US accounts.  Management believes that any credit risks have been properly provided for in the accompanying financial statements.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The Company’s revenue was derived from the following countries in <i><em style="font: inherit;">2023</em></i> and <i><em style="font: inherit;">2022:</em></i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Percent of Total Revenues</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><span style="text-decoration: underline; ">Country</span></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">United States of America</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">56</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Germany</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Other</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">26</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Many of the Company’s customers based in the United States conduct design, purchasing and payable functions in the United States, but manufacture overseas.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">All of the Company’s long-lived assets and operations are located in the United States.</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">  </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Percent of Total Revenues</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><span style="text-decoration: underline; ">Significant Customer</span></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">A</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">33</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">B</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">C</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> </tbody></table> 0.33 0.21 0.18 0.15 0.09 0.17 0.50 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Percent of Total Revenues</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><span style="text-decoration: underline; ">Country</span></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">United States of America</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">56</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Germany</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">18</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Other</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">26</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">42</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> </tbody></table> 0.56 0.42 0.18 0.16 0.26 0.42 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">12</em></span></i><span style="text-decoration: underline; ">) Net Income Per Share </span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The following reconciles the basic and diluted net income per share calculations.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">Dec. 30,</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">Dec. 31,</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Basic EPS Computation:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Numerator:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Net income</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,370,296</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,131,400</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Denominator:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Weighted average</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Common shares</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,495,709</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,424,381</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Basic EPS</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.09</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.15</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Diluted EPS Computation:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Numerator:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Net income</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,370,296</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,131,400</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Denominator:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Weighted average</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Common shares</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,495,709</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,424,381</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Dilutive effect of stock options</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">133,102</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">251,265</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Total shares</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">14,628,811</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">14,675,646</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Diluted net income per share</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.09</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.15</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">  </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">Dec. 30,</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">Dec. 31,</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">2022</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Basic EPS Computation:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Numerator:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Net income</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,370,296</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,131,400</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Denominator:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Weighted average</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Common shares</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,495,709</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,424,381</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Basic EPS</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.09</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.15</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Diluted EPS Computation:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Numerator:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Net income</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,370,296</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,131,400</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Denominator:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Weighted average</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Common shares</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,495,709</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,424,381</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Dilutive effect of stock options</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">133,102</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">251,265</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Total shares</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">14,628,811</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">14,675,646</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Diluted net income per share</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.09</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.15</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> </tbody></table> 1370296 2131400 14495709 14424381 0.09 0.15 1370296 2131400 14495709 14424381 133102 251265 14628811 14675646 0.09 0.15 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline; ">(</span><i><span style="text-decoration: underline; "><em style="font: inherit;">13</em></span></i><span style="text-decoration: underline; ">) Commitments and Contingencies</span></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">We are subject to contingencies, including legal proceedings and claims arising in the normal course of business that cover a wide range of matters including, among others, contract and employment claims; workers compensation claims; product liability; warranty and modification; and adjustment or replacement of units sold.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Direct costs associated with the estimated resolution of contingencies are accrued at the earliest date at which it is deemed probable that a liability has been incurred and the amount of such liability can be reasonably estimated. While it is impossible to ascertain the ultimate legal and financial liability with respect to contingent liabilities, including lawsuits, we believe that the aggregate amount of such liabilities, if any, in excess of amounts provided or covered by insurance, will <i><em style="font: inherit;">not</em></i> have a material adverse effect on the consolidated financial position or results of operations. It is possible, however, that future results of operations for any particular future period could be materially affected by changes in our assumptions or strategies related to these contingencies or changes out of our control.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Notwithstanding the above, the Company has received a letter from an attorney representing a former European sales representative alleging that under European law the representative is entitled to compensation as a result of his termination. The Company completely disagrees with the claims. Should this result in litigation the Company will defend itself to the fullest extent of the law and estimates any losses incurred to be immaterial.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">    </p>