0001376474-23-000411.txt : 20230815 0001376474-23-000411.hdr.sgml : 20230815 20230815064607 ACCESSION NUMBER: 0001376474-23-000411 CONFORMED SUBMISSION TYPE: 10-K PUBLIC DOCUMENT COUNT: 105 CONFORMED PERIOD OF REPORT: 20230531 FILED AS OF DATE: 20230815 DATE AS OF CHANGE: 20230815 FILER: COMPANY DATA: COMPANY CONFORMED NAME: TAYLOR DEVICES INC CENTRAL INDEX KEY: 0000096536 STANDARD INDUSTRIAL CLASSIFICATION: GENERAL INDUSTRIAL MACHINERY & EQUIPMENT, NEC [3569] IRS NUMBER: 160797789 STATE OF INCORPORATION: NY FISCAL YEAR END: 0531 FILING VALUES: FORM TYPE: 10-K SEC ACT: 1934 Act SEC FILE NUMBER: 000-03498 FILM NUMBER: 231173178 BUSINESS ADDRESS: STREET 1: 90 TAYLOR DR CITY: NORTH TONAWANDA STATE: NY ZIP: 14120 BUSINESS PHONE: 7166940800 MAIL ADDRESS: STREET 1: 90 TAYLOR DR CITY: N TONAWANDA STATE: NY ZIP: 14120 10-K 1 tayd-20230531.htm TAYLOR DEVICES INC - FORM 10-K SEC FILING TAYLOR DEVICES INC - Form 10-K SEC filing
0000096536 --05-31 false 2023 FY 0000096536 2022-06-01 2023-05-31 0000096536 2023-05-31 0000096536 2022-11-30 0000096536 2023-08-15 0000096536 2022-05-31 0000096536 2021-06-01 2022-05-31 0000096536 us-gaap:CommonStockMember 2022-05-31 0000096536 us-gaap:CommonStockMember 2021-05-31 0000096536 us-gaap:CommonStockMember 2022-06-01 2023-05-31 0000096536 us-gaap:CommonStockMember 2021-06-01 2022-05-31 0000096536 us-gaap:CommonStockMember 2023-05-31 0000096536 us-gaap:AdditionalPaidInCapitalMember 2022-05-31 0000096536 us-gaap:AdditionalPaidInCapitalMember 2021-05-31 0000096536 us-gaap:AdditionalPaidInCapitalMember 2022-06-01 2023-05-31 0000096536 us-gaap:AdditionalPaidInCapitalMember 2021-06-01 2022-05-31 0000096536 us-gaap:AdditionalPaidInCapitalMember 2023-05-31 0000096536 us-gaap:RetainedEarningsMember 2022-05-31 0000096536 us-gaap:RetainedEarningsMember 2021-05-31 0000096536 us-gaap:RetainedEarningsMember 2022-06-01 2023-05-31 0000096536 us-gaap:RetainedEarningsMember 2021-06-01 2022-05-31 0000096536 us-gaap:RetainedEarningsMember 2023-05-31 0000096536 us-gaap:TreasuryStockCommonMember 2022-05-31 0000096536 us-gaap:TreasuryStockCommonMember 2021-05-31 0000096536 us-gaap:TreasuryStockCommonMember 2022-06-01 2023-05-31 0000096536 us-gaap:TreasuryStockCommonMember 2021-06-01 2022-05-31 0000096536 us-gaap:TreasuryStockCommonMember 2023-05-31 0000096536 2021-05-31 0000096536 fil:CustomersMember 2023-05-31 0000096536 fil:CustomersMember 2022-05-31 0000096536 fil:CustomersRetentionMember 2023-05-31 0000096536 fil:CustomersRetentionMember 2022-05-31 0000096536 us-gaap:PublicUtilitiesInventoryRawMaterialsMember 2023-05-31 0000096536 us-gaap:PublicUtilitiesInventoryRawMaterialsMember 2022-05-31 0000096536 fil:WorkInProcessMember 2023-05-31 0000096536 fil:WorkInProcessMember 2022-05-31 0000096536 fil:FinishedGoodsMember 2023-05-31 0000096536 fil:FinishedGoodsMember 2022-05-31 0000096536 us-gaap:LandMember 2023-05-31 0000096536 us-gaap:LandMember 2022-05-31 0000096536 us-gaap:BuildingImprovementsMember 2023-05-31 0000096536 us-gaap:BuildingImprovementsMember 2022-05-31 0000096536 us-gaap:MachineryAndEquipmentMember 2023-05-31 0000096536 us-gaap:MachineryAndEquipmentMember 2022-05-31 0000096536 us-gaap:FurnitureAndFixturesMember 2023-05-31 0000096536 us-gaap:FurnitureAndFixturesMember 2022-05-31 0000096536 us-gaap:VehiclesMember 2023-05-31 0000096536 us-gaap:VehiclesMember 2022-05-31 0000096536 us-gaap:LandImprovementsMember 2023-05-31 0000096536 us-gaap:LandImprovementsMember 2022-05-31 0000096536 fil:CustomerDepositsMember 2023-05-31 0000096536 fil:CustomerDepositsMember 2022-05-31 0000096536 fil:PersonnelCostsMember 2023-05-31 0000096536 fil:PersonnelCostsMember 2022-05-31 0000096536 fil:OtherMember 2023-05-31 0000096536 fil:OtherMember 2022-05-31 0000096536 fil:StructuralMember 2022-06-01 2023-05-31 0000096536 fil:StructuralMember 2021-06-01 2022-05-31 0000096536 fil:AerospaceDefenseMember 2022-06-01 2023-05-31 0000096536 fil:AerospaceDefenseMember 2021-06-01 2022-05-31 0000096536 fil:IndustrialMember 2022-06-01 2023-05-31 0000096536 fil:IndustrialMember 2021-06-01 2022-05-31 0000096536 fil:N8019001Member 2022-06-01 2023-05-31 0000096536 fil:N8019001Member 2023-05-31 0000096536 fil:N90110001Member 2022-06-01 2023-05-31 0000096536 fil:N90110001Member 2023-05-31 0000096536 fil:N100111001Member 2022-06-01 2023-05-31 0000096536 fil:N100111001Member 2023-05-31 0000096536 fil:N110112001Member 2022-06-01 2023-05-31 0000096536 fil:N110112001Member 2023-05-31 0000096536 fil:N120113001Member 2022-06-01 2023-05-31 0000096536 fil:N120113001Member 2023-05-31 0000096536 fil:N130114001Member 2022-06-01 2023-05-31 0000096536 fil:N130114001Member 2023-05-31 0000096536 fil:N160117001Member 2022-06-01 2023-05-31 0000096536 fil:N160117001Member 2023-05-31 0000096536 fil:N190120001Member 2022-06-01 2023-05-31 0000096536 fil:N190120001Member 2023-05-31 0000096536 fil:N80120001Member 2022-06-01 2023-05-31 0000096536 fil:N80120001Member 2023-05-31 0000096536 fil:N701800Member 2022-05-31 0000096536 fil:N701800Member 2021-06-01 2022-05-31 0000096536 fil:N8019001Member 2022-05-31 0000096536 fil:N8019001Member 2021-06-01 2022-05-31 0000096536 fil:N90110001Member 2022-05-31 0000096536 fil:N90110001Member 2021-06-01 2022-05-31 0000096536 fil:N100111001Member 2022-05-31 0000096536 fil:N100111001Member 2021-06-01 2022-05-31 0000096536 fil:N110112001Member 2022-05-31 0000096536 fil:N110112001Member 2021-06-01 2022-05-31 0000096536 fil:N120113001Member 2022-05-31 0000096536 fil:N120113001Member 2021-06-01 2022-05-31 0000096536 fil:N130114001Member 2022-05-31 0000096536 fil:N130114001Member 2021-06-01 2022-05-31 0000096536 fil:N160117001Member 2022-05-31 0000096536 fil:N160117001Member 2021-06-01 2022-05-31 0000096536 fil:N190120001Member 2022-05-31 0000096536 fil:N190120001Member 2021-06-01 2022-05-31 0000096536 fil:N7012000Member 2022-05-31 0000096536 fil:N7012000Member 2021-06-01 2022-05-31 xbrli:pure iso4217:USD xbrli:shares iso4217:USD xbrli:shares

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

Washington, D.C. 20549

F O R M 10-K

 

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

 

For the fiscal year ended May 31, 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 000-3498

 

TAYLOR DEVICES INC

(Exact name of registrant as specified in its charter)

 

New York

16-0797789

(State or other jurisdiction of

incorporation or organization)

(I.R.S. Employer

Identification No.)

 

90 Taylor Drive, North Tonawanda, New York

14120

(Address of principal executive offices)

(Zip Code)

 

Registrant's telephone number, including area code   (716) 694-0800

 

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

 

Title of each class

 

Trading Symbol

 

Name of each exchange on which registered

None

None

None

 

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

 

Common Stock ($.025 par value)

(Title of class)

 

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

     Yes     No

 

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

Yes     No


 

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

 

Large accelerated filer

Accelerated filer

Non-accelerated Filer

Smaller reporting company

 

Emerging growth company

 

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

 

Indicate by check mark whether the registrant 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.     

 

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 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 on November 30, 2022 is $46,934,000.

 

The number of shares outstanding of each of the registrant's classes of common stock as of August 15, 2023: 3,521,377.


2


TAYLOR DEVICES, INC.

 

DOCUMENTS INCORPORATED BY REFERENCE

 

Documents

Form 10-K Reference

 

 

Proxy Statement

Part III, Items 10-14

 

 

FORM 10-K INDEX

PART I

 

 

PAGE

 

Item 1.

Business.

4

 

Item 1A.

Risk Factors.

6

 

Item 1B.

Unresolved Staff Comments.

6

 

Item 2.

Properties.

6

 

Item 3.

Legal Proceedings.

6

 

Item 4.

Mine Safety Disclosures.

7

PART II

 

 

 

 

Item 5.

Market For Registrant's Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities.

8

 

Item 6.

Selected Financial Data.

9

 

Item 7.

Management's Discussion and Analysis of Financial Condition and Results of Operations.

9

 

Item 7A.

Quantitative and Qualitative Disclosures About Market Risk.

18

 

Item 8.

Financial Statements and Supplementary Data.

18

 

Item 9.

Changes in and Disagreements With Accountants on Accounting and Financial Disclosure.

18

 

Item 9A.

Controls and Procedures.

18

 

Item 9B.

Other Information.

18

PART III

 

 

 

 

Item 10.

Directors, Executive Officers and Corporate Governance.

18

 

Item 11.

Executive Compensation.

18

 

Item 12.

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

18

 

Item 13.

Certain Relationships and Related Transactions, and Director Independence.

18

 

Item 14.

Principal Accounting Fees and Services.

18

PART IV

 

 

 

 

Item 15.

Exhibits and Financial Statement Schedules

19

 

 

 

 

 

Item 16.

Form 10-K Summary

22

 

 

 

SIGNATURES

23


3


 

PART I

 

Item 1.  Business.

 

The Company was incorporated in the State of New York on July 22, 1955 and is engaged in the design, development, manufacture and marketing of shock absorption, rate control, and energy storage devices for use in various types of machinery, equipment and structures.  In addition to manufacturing and selling existing product lines, the Company continues to develop new and advanced technology products.  

 

Principal Products

 

The Company manufactures and sells a group of very similar products that have many different applications for customers.  These similar products are included in one of eight categories; namely, Seismic Dampers, Fluidicshoks®, Crane and Industrial Buffers, Self-Adjusting Shock Absorbers, Liquid Die Springs, Vibration Dampers, Machined Springs and Custom Actuators.  Custom derivations of all of these products are designed and manufactured for many aerospace and defense applications.  The following is a summary of the capabilities and applications for these products.

 

Seismic Dampers are designed to mitigate the effects of earthquakes on structures and represent a substantial part of the business of the Company.  Fluidicshoks® are small, extremely compact shock absorbers with up to 19,200 inch-pound capacities, produced in 12 standard sizes for primary use in the defense, aerospace and commercial industry.  Crane and industrial buffers are larger versions of the Fluidicshoks® with up to 10,890,000 inch-pound capacities, produced in more than 50 standard sizes for industrial applications on cranes and crane trolleys, truck docks, ladle and ingot cars, ore trolleys and train car stops.  Self-adjusting shock absorbers, which include versions of Fluidicshoks® and crane and industrial buffers, automatically adjust to different impact conditions, and are designed for high cycle application primarily in heavy industry.  Liquid die springs are used as component parts of machinery and equipment used in the manufacture of tools and dies.  Vibration dampers are used primarily by the aerospace and defense industries to control the response of electronics and optical systems subjected to air, ship, or spacecraft vibration.  Machined springs are precisely controlled mechanical springs manufactured from a variety of materials.  These are used primarily for aerospace applications that require custom features that are not possible with conventional wound coil springs.  Custom actuators are typically of the gas-charged type, using high pressure, that have custom features not available from other suppliers.  These actuators are used for special aerospace and defense applications.

 

Distribution

 

The Company does not rely on sales representatives in the United States but uses the services of several representatives throughout the rest of the world. Specialized technical sales in custom marketing activities outside the U.S.A. are serviced by these sales representatives, under the direction and with the assistance of the Company's President and in-house technical sales staff.  Sales representatives typically have non-exclusive agreements with the Company, which, in most instances, provide for payment of commissions on sales at 5% to 10% of the product's net aggregate selling price.  A limited number of distributors also have non-exclusive agreements with the Company to purchase the Company's products for resale purposes.

 

Competition

 

The Company faces competition on mature aerospace and defense programs which may use more conventional products manufactured under less stringent government specifications. Two foreign companies and two U.S. companies are the Company's main competitors in the production of crane buffers.

 

The Company competes directly against two other firms supplying structural damping devices for use in the United States. For structural applications outside of the USA, the Company competes directly with several other firms particularly in Japan and Taiwan.  The Company competes with numerous other firms that supply alternative seismic protection technologies.

 

Raw Materials and Supplies

 

The principal raw materials and supplies used by the Company in the manufacture of its products are provided by numerous U.S. and foreign suppliers.  The loss of any one of these would not materially affect the Company's operations.


4


 

Dependence Upon Major Customers

 

The Company is not dependent on any one or a few major customers.  Sales to five customers approximated 30% (7%, 6%, 6%, 6% and 5%, respectively) of net sales for 2023.  The loss of any or all of these customers, unless the business is replaced by the Company, could result in an adverse effect on the results for the Company.

 

Patents, Trademarks and Licenses

 

The Company holds 6 patents expiring at different times until the year 2035.

 

Terms of Sale

 

The Company does not carry significant inventory for rapid delivery to customers, and goods are not normally sold with return rights such as are available for consignment sales.  The Company had no inventory out on consignment and there were no consignment sales for the years ended May 31, 2023 and 2022.  No extended payment terms are offered.  During the year ended May 31, 2023, delivery time after receipt of orders averaged 8 to 10 weeks for the Company's standard products.  Due to the volatility of structural and aerospace/defense programs, progress payments are usually required for larger projects using custom designed components of the Company.

 

Need for Government Approval of Principal Products or Services

 

Contracts between the Company and the federal government or its independent contractors are subject to termination at the election of the federal government.  Contracts are generally entered into on a fixed price basis.  If the federal government should limit defense spending, these contracts could be reduced or terminated, which management believes would have a materially adverse effect on the Company.

 

Research and Development

 

To accommodate growth and to maintain its presence in current markets, the Company engages in product research and development activities in connection with the design of its products.  Occasionally, research and development for products in the aerospace and defense sectors is funded by customers or the federal government.  The Company also engages in research testing of its products.  For the fiscal years ended May 31, 2023 and 2022, the Company expended $1,097,000 and $999,000, respectively, on product research.  For the years ended May 31, 2023 and 2022, defense sponsored research and development totaled $581,000 and $334,000, respectively.

 

Government Regulation

 

Compliance with federal, state, and local laws and regulations which have been enacted or adopted regulating the discharge of materials into the environment has had no material effect on the Company, and the Company believes that it is in substantial compliance with such provisions.

 

The Company is subject to the Occupational Safety and Health Act ("OSHA") and the rules and regulations promulgated thereunder, which establish strict standards for the protection of employees, and impose fines for violations of such standards.  The Company believes that it is in substantial compliance with OSHA provisions and does not anticipate any material corrective expenditures in the near future.  The Company currently incurs only moderate costs with respect to disposal of hazardous waste and compliance with OSHA regulations.

 

The Company is also subject to regulations relating to production of products for the federal government.  These regulations allow for frequent governmental audits of the Company's operations and fairly extensive testing of Company products.  The Company believes that it is in substantial compliance with these regulations and does not anticipate corrective expenditures in the future.

 

Employees

 

Exclusive of Company sales representatives and distributors, as of May 31, 2023, the Company had 125 employees, including three executive officers.  The Company has good relations with its employees.


5


 

Item 1A.  Risk Factors.

 

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

 

Item 1B.  Unresolved Staff Comments.

 

Not applicable.

 

Item 2.  Properties.

 

The Company's production facilities occupy approximately six acres on Tonawanda Island in North Tonawanda, New York and are comprised of four interconnected buildings and two adjacent buildings.  The production facilities consist of a small parts plant (approximately 4,400 square feet), a large parts plant (approximately 13,500 square feet), and include a facility of approximately 7,000 square feet comprised of a test facility, storage area, pump area and the Company's general offices.  One adjacent building is a 27,000 square foot seismic assembly and test facility. This building contains overhead traveling cranes to allow dampers to be built up to 45 ft. in length. It is also the site of three long bed damper test machines where seismic dampers Taylor Devices manufactures will be tested at maximum force to satisfy customer specifications.  Another adjacent building (approximately 2,000 square feet) is used as a training facility.  These facilities total more than 54,000 square feet.  Adjacent to these facilities, the Company has a remote test facility used for shock testing.  This state-of-the-art test facility is 1,200 square feet.  The Company owns two additional industrial buildings on nine acres of land in the City of North Tonawanda located 1.4 miles from the Company’s headquarters on Tonawanda Island.  Total area of the two buildings is 46,000 square feet.  One building includes a machine shop containing custom-built machinery for boring, deep-hole drilling and turning of parts.  Another is used for painting and packaging parts and completed units.

 

The Company's real properties are subject to a negative pledge agreement with its lender, M&T Bank.  The Company has agreed with the lender that, for so long as the credit facilities with the lender are outstanding, the Company will not sell, lease or mortgage any of its real properties.  Additional information regarding the Company's agreement with M&T Bank is contained in Item 7, Management's Discussion and Analysis of Financial Condition and Results of Operations, at "Capital Resources, Line of Credit and Long-Term Debt."

 

The Company believes it carries adequate insurance coverage on its facilities and their contents.

 

Item 3. Legal Proceedings.

 

Taylor Devices Inc. (the “Company”) has been named as a Third-Party Defendant in an action captioned Board of Managers of the 432 Park Condominium, et al. v. 56th and Park (NY) Owner LLC, et al.  Index No. 655617/2021 (S.Ct. N.Y. Co.) (the “Action”).

The Action was filed on or about September 23, 2021.  In an amended Complaint dated April 29, 2022, the Board of Managers of 432 Park Condominium (the “Owner”), a condominium association for a high-rise condominium building (the “Building”) located at 432 Park Avenue in New York, N.Y., has asserted a claim against the condominium sponsor, 56th and Park (NY) Owner LLC (the “Sponsor”).  The Owner alleges “over 1500 identified construction and design defects to the common elements of” residential and commercial units at the Building, based upon a report generated by a consultant (SBI Consultants Inc.) retained by the Owner.  The alleged defects include, but are not limited to, allegedly-excessive noise and vibration, water leaks and elevator failures. The SBI report allegedly identified defects in the Building’s: (a) structural/envelope system; (b) mechanical/electrical & plumbing systems; (c) architectural/interiors; and (d) elevators/vertical systems.

On March 14, 2022, the Sponsor filed a Third-Party Complaint against LendLease Construction (US) LMB (“LendLease”), as well as the architects of record on the project (SLCE Architects), the lead structural engineer (Cantor ESA) and the head mechanical engineer (Flack + Kurtz) involved in the Building’s design. As to LendLease, the Third-Party Complaint alleges breach of a Construction Management Contract between LendLease and Sponsor and negligence arising from purported failure to perform under the contract.


6


 

On March 22, 2023, LendLease initiated a Third-Party action against various entities with whom LendLease had contracted for the supply of materials and services in connection with construction of the Building.  The Third-Party defendants include the suppliers of products and services relating to the automatic sprinkler system, structural steel, mechanical systems, electrical systems, sheet metal, component assembly, roofing, the building exterior, plumbing, concrete, curtain walls, custom machine work and elevators.  The Third-Party Complaint also names the Company as a Third-Party Defendant, based upon a contract between the Company and LendLease to supply 16 Viscous Damping Devices (“VDDs”) that were incorporated into a Tuned Mass Damper (“TMD”) system designed by another company to limit accelerations of the Building during wind events.  On July 5, 2023, the Company timely filed and served an Answer to LendLease’s Third-Party Complaint.

Additional third-party actions have been filed by parties named as defendants in the Third-Party Complaint.  Presently, seven third-party actions are pending.

The Progress of the Matter to Date.  The matter, and all of the related third-party actions, are pending in the Commercial Division of the Supreme Court, New York County before Justice Melissa A. Crane.  Justice Crane has appointed Hon. Andrew J. Peck, a retired justice of the Supreme Court, as Special Master to hear and determine disputes regarding all or any part of any discovery issue.  

On June 13, 2023, Special Master Peck issued an Amended Final Scheduling Order.  Among the directives in the Amended Final Scheduling Order is a requirement that:  (a) recently-added third-party defendants (including the Company) respond to discovery demands by August 30, 2023 and complete document productions by October 11, 2023; (b) all parties complete fact depositions and fact discovery by March 15, 2024; and (c) all parties complete expert discovery by August 28, 2024.

Management Response. Management of the Company vigorously disputes the allegations in the Third-Party Complaint.

Based upon the information currently available, there is a credible argument that: (a) the Company met the contractual requirements of the 2013 Purchase Order for Viscous Damping Devices (VDDs) that were incorporated into the Tuned Mass Damper (TMD) system; and (b) the VDDs that were delivered were successfully tested to the applicable specification and met the technical requirements of that specification.

The Owner has not itemized the damages it seeks to recover from Sponsor, but the Amended Complaint contains an ad damnum clause demanding $125 million plus punitive damages.  Sponsor has not itemized the damages it seeks to recover from LendLease or the other third-party defendants, but the claim for relief in the Third-Party Complaint includes a demand for full indemnification of any amounts the Sponsor is required to pay plaintiff.  In turn, LendLease does not itemize the damages it seeks to recover from the several Third-Party defendants (including the Company), but its demand for relief in the Third-Party Complaint includes a demand for full indemnification of any amounts LendLease is required to pay to Sponsor.  The Company anticipates that the pending actions would provide opportunities for Sponsor, LendLease and the Company to allocate some or all of any liability to one or more co-defendants or third parties.  In view of the limited discovery to date, it is not practical to quantify likely damages to the Company in the event of an unfavorable outcome on liability.

Item 4. Mine Safety Disclosures.

 

Not applicable.


7


 

PART II

 

Item 5.  Market for Registrant's Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities.

 

Market Information

 

The Company's Common Stock trades on the NASDAQ Capital Market of the National Association of Securities Dealers Automated Quotation ("NASDAQ") stock market under the symbol TAYD.  The high and low sales information noted below for the quarters of fiscal year 2023 and fiscal year 2022 were obtained from NASDAQ.

 

 

 

 

Fiscal 2023

 

Fiscal 2022

 

 

High

 

Low

 

High

 

Low

 

First Quarter

$10.25

 

$  8.13

 

$12.25

 

$11.21

 

Second Quarter

$14.00

 

$  9.66

 

$12.00

 

$10.93

 

Third Quarter

$16.98

 

$10.50

 

$11.00

 

$  9.88

 

Fourth Quarter

$23.79

 

$15.30

 

$10.24

 

$  8.75

 

Holders

 

As of May 31, 2023, the number of issued and outstanding shares of Common Stock was 3,520,442 and the number of record holders of the Company's Common Stock was 406.  A substantial number of shares of the Company's Common Stock are held in street name.  The Company believes that the total number of beneficial owners of its Common Stock is less than 2,100.

 

Dividends

 

No cash or stock dividends have been declared during the last two fiscal years.  The Company plans to retain cash in the foreseeable future to fund working capital needs.

 

Rights Plan

 

As of September 25, 2018, the Company's Board of Directors adopted a shareholder rights plan designed to deter coercive or unfair takeover tactics and prevent an acquirer from gaining control of the Company without offering a fair price to shareholders.  Under the plan, certain rights ("Rights") were distributed as a dividend on each share of Common Stock (one Right for each share of Common Stock) held as of the close of business on October 2, 2018.  Each whole Right entitles the holder, under certain defined conditions, to buy one two-thousandths (1/2000) of a newly issued share of the Company's Series A Junior Participating Preferred Stock ("Series A Preferred Stock") at a purchase price of $5.00 per unit of one two-thousandths of a share.  Rights attach to and trade with the shares of Common Stock, without being evidenced by a separate certificate.  No separate Rights certificates will be issued unless and until the Rights detach from Common Stock and become exercisable for shares of the Series A Preferred Stock.

 

The Rights become exercisable to purchase shares of Preferred Stock (or, in certain circumstances, Common Stock) only if (i) a person acquired 15% or more of the Company's Common Stock, or (ii) a person commenced a tender or exchange offer for 10% or more of the Company's Common Stock, or (iii) the Board of Directors determined that the beneficial owner of at least 10% of the Company's Common Stock intended to cause the Company to take certain actions adverse to it and its shareholders or that such ownership would have a material adverse effect on the Company.  The Rights Plan will expire on October 5, 2028.  

 

Issuer Purchases of Equity Securities

 

A share repurchase agreement with a major broker-dealer, under which the Company repurchased shares of its common stock on the open market, has been terminated by the Company.  No shares have been purchased since August 2011.


8


 

Equity Compensation Plan Information

 

The following table sets forth information regarding equity compensation plans of the Company as of May 31, 2023.

 

 

 

Equity Compensation Plan Information

 

 

 

 

 

 

Plan Category

 

 

 

 

Number of securities to be issued upon exercise of outstanding options, warrants, and rights

(a)

 

 

 

Weighted-average exercise price of outstanding options, warrants and rights

(b)

 

 

Number of securities remaining available

for future issuance under equity compensation plans (excluding securities reflected in column (a))

(c)

Equity compensation plans approved by security holders:

 

 

 

 

 

 

 

2012 Stock Option Plan

2015 Stock Option Plan

2018 Stock Option Plan

2022 Stock Option Plan

 

 

40,500

84,000

153,250

55,250

 

 

$12.28

$12.74

$10.85

$18.07

 

 

-

-

-

201,000

 

Equity compensation plans not approved by security holders:

 

 

 

 

 

 

 

 

2004 Employee Stock Purchase Plan    (1)

 

 

-

 

 

-

 

 

216,365

Total

 

 

333,000

 

 

 

417,365

 

 

 

 

 

 

 

(1)

The Company's 2004 Employee Stock Purchase Plan (the "Employee Plan") permits eligible employees to purchase shares of the Company's common stock at fair market value through payroll deductions and without brokers' fees.  Such purchases are without any contribution on the part of the Company.  As of May 31, 2023, 216,365 shares were available for issuance.  

 

Item 6.  Selected Financial Data.

 

The Company qualifies as a smaller reporting company, as defined by 17 CFR §229.10(f)(1) and is not required to provide the information required by this Item.

 

Item 7.  Management's Discussion and Analysis of Financial Condition and Results of Operations.

 

Cautionary Statement

 

The Private Securities Litigation Reform Act of 1995 provides a "safe harbor" for forward-looking statements.  Information in this Item 7, "Management's Discussion and Analysis of Financial Condition and Results of Operations" and elsewhere in this 10-K that does not consist of historical facts are "forward-looking statements."  Statements accompanied or qualified by, or containing, words such as "may," "will," "should," "believes," "expects," "intends," "plans," "projects," "estimates," "predicts," "potential," "outlook," "forecast," "anticipates," "presume," "assume" and "optimistic" constitute forward-looking statements and, as such, are not a guarantee of future performance.  The statements involve factors, risks and uncertainties, the impact or occurrence of which can cause actual results to differ materially from the expected results described in such statements.  Risks and uncertainties can include, among others, fluctuations in general business cycles and changing economic conditions; variations in timing and amount of customer orders; changing product demand and industry capacity; increased competition and pricing pressures; advances in technology that can reduce the demand for the Company's products, as well as other factors, many or all of which may be beyond the Company's control.  Consequently, investors should not place undue reliance on forward-looking statements as predictive of future results.  The Company disclaims any obligation to release publicly any updates or revisions to the forward-looking statements herein to reflect any change in the Company's expectations with regard thereto, or any changes in events, conditions or circumstances on which any such statement is based.


9


 

Application of Critical Accounting Policies and Estimates

 

The Company's consolidated financial statements and accompanying notes are prepared in accordance with U.S. generally accepted accounting principles.  The preparation of the Company's financial statements requires management to make estimates, assumptions and judgments that affect the amounts reported.  These estimates, assumptions and judgments are affected by management's application of accounting policies, which are discussed in Note 1, "Summary of Significant Accounting Policies", and elsewhere in the accompanying consolidated financial statements. As discussed below, our financial position or results of operations may be materially affected when reported under different conditions or when using different assumptions in the application of such policies.  In the event estimates or assumptions prove to be different from actual amounts, adjustments are made in subsequent periods to reflect more current information.  Management believes the following critical accounting policies affect the more significant judgments and estimates used in the preparation of the Company's financial statements.

 

Accounts Receivable

 

Our ability to collect outstanding receivables from our customers is critical to our operating performance and cash flows.  Accounts receivable are stated at an amount management expects to collect from outstanding balances.  Management provides for probable uncollectible accounts through a charge to earnings and a credit to a valuation allowance based on its assessment of the current status of individual accounts after considering the age of each receivable and communications with the customers involved.  Balances that are collected, for which a credit to a valuation allowance had previously been recorded, result in a current-period reversal of the earlier transaction charging earnings and crediting a valuation allowance.   Balances that are still outstanding after management has used reasonable collection efforts are written off through a charge to the valuation allowance and a credit to accounts receivable in the current period.  The actual amount of accounts written off over the five year period ended May 31, 2023 equaled less than 0.3% of sales for that period.  The balance of the valuation allowance has increased to $29,000 at May 31, 2023 from $16,000 at May 31, 2022.  Management does not expect the valuation allowance to materially change in the next twelve months for the current accounts receivable balance.

 

Inventory

 

Inventory is stated at the lower of average cost or net realizable value. Average cost approximates first-in, first-out cost.

 

Maintenance and other inventory represent stock that is estimated to have a product life-cycle in excess of twelve-months.  This stock represents certain items the Company is required to maintain for service of products sold, and items that are generally subject to spontaneous ordering.

 

This inventory is particularly sensitive to technical obsolescence in the near term due to its use in industries characterized by the continuous introduction of new product lines, rapid technological advances, and product obsolescence.  Therefore, management of the Company has recorded an allowance for potential inventory obsolescence.  Based on certain assumptions and judgments made from the information available at that time, we determine the amount in the inventory allowance.  If these estimates and related assumptions or the market changes, we may be required to record additional reserves.  Historically, actual results have not varied materially from the Company's estimates.  There was $322,000 and $772,000 of inventory disposed of during the years ended May 31, 2023 and 2022.  The provision for potential inventory obsolescence was $295,000 and zero for the years ended May 31, 2023 and 2022.  

 

Revenue Recognition

 

Revenue is recognized when, or as, the Company transfers control of promised products or services to a customer in an amount that reflects the consideration to which the Company expects to be entitled in exchange for transferring those products or services.


10


 

A performance obligation is a promise in a contract to transfer a distinct good or service to the customer and is the unit of account. A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. The majority of our contracts have a single performance obligation as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts which are, therefore, not distinct. Promised goods or services that are immaterial in the context of the contract are not separately assessed as performance obligations.  

For contracts with customers in which the Company satisfies a promise to the customer to provide a product that has no alternative use to the Company and the Company has enforceable rights to payment for progress completed to date inclusive of profit, the Company satisfies the performance obligation and recognizes revenue over time (generally less than one year), using costs incurred to date relative to total estimated costs at completion to measure progress toward satisfying our performance obligations.  Incurred cost represents work performed, which corresponds with, and thereby best depicts, the transfer of control to the customer.  Contract costs include labor, material and overhead.  Total estimated costs for each of the contracts are estimated based on a combination of historical costs of manufacturing similar products and estimates or quotes from vendors for supplying parts or services towards the completion of the manufacturing process.  Adjustments to cost and profit estimates are made periodically due to changes in job performance, job conditions and estimated profitability, including those arising from final contract settlements.  These changes may result in revisions to costs and income and are recognized in the period in which the revisions are determined.  Any losses expected to be incurred on contracts in progress are charged to operations in the period such losses are determined.   If total costs calculated upon completion of the manufacturing process in the current period for a contract are more than the estimated total costs at completion used to calculate revenue in a prior period, then the profits in the current period will be lower than if the estimated costs used in the prior period calculation were equal to the actual total costs upon completion.  Historically, actual results have not varied materially from the Company's estimates.  Other sales to customers are recognized upon shipment to the customer based on contract prices and terms.  In the year ended May 31, 2023, 61% of revenue was recorded for contracts in which revenue was recognized over time while 39% was recognized at a point in time.  In the year ended May 31, 2022, 60% of revenue was recorded for contracts in which revenue was recognized over time while 40% was recognized at a point in time.

For financial statement presentation purposes, the Company nets progress billings against the total costs incurred and estimated earnings on uncompleted contracts.  The asset, "costs and estimated earnings in excess of billings," represents revenues recognized in excess of amounts billed.  The liability, "billings in excess of costs and estimated earnings," represents billings in excess of revenues recognized.

 

Income Taxes

 

The provision for income taxes provides for the tax effects of transactions reported in the financial statements regardless of when such taxes are payable.  Deferred tax assets and liabilities are recognized for the expected future tax consequences of temporary differences between the tax and financial statement basis of assets and liabilities.  The deferred tax assets relate principally to asset valuation allowances such as inventory obsolescence reserves and bad debt reserves and also to liabilities including warranty reserves, accrued vacation, accrued commissions and others.  The deferred tax liabilities relate primarily to differences between financial statement and tax depreciation.  Deferred taxes are based on tax laws currently enacted with tax rates expected to be in effect when the taxes are actually paid or recovered.  

 

Realization of the deferred tax assets is dependent on generating sufficient taxable income at the time temporary differences become deductible.  The Company provides a valuation allowance to the extent that deferred tax assets may not be realized.  A valuation allowance has not been recorded against the deferred tax assets since management believes it is more likely than not that the deferred tax assets are recoverable.  The Company considers future taxable income and potential tax planning strategies in assessing the need for a potential valuation allowance.  In future years the Company will need to generate approximately $7.5 million of taxable income in order to realize our deferred tax assets recorded as of May 31, 2023 of $1,583,000.  This deferred tax asset balance is 81% ($707,000) more than at the end of the prior year.  The amount of the deferred tax assets considered realizable however, could be reduced in the near term if estimates of future taxable income are reduced.  If actual results differ from estimated results or if the Company adjusts these assumptions, the Company may need to adjust its deferred tax assets or liabilities, which could impact its effective tax rate.  

 

The Company's practice is to recognize interest related to income tax matters in interest income / expense and to recognize penalties in selling, general and administrative expenses.

 

The Company and its subsidiary file consolidated Federal and State income tax returns.  As of May 31, 2023, the Company had State investment tax credit carryforwards of approximately $424,000 expiring through May 2028.


11


 

Results of Operations

 

A summary of the period-to-period changes in the principal items included in the consolidated statements of income is shown below:

 

Summary comparison of the years ended May 31, 2023 and 2022

 

 

 

Increase /

 

 

 

(Decrease)

 

Sales, net

 

$9,332,000 

 

Cost of goods sold

 

$2,893,000 

 

Research and development costs

 

$98,000 

 

Selling, general and administrative expenses

 

$2,005,000 

 

Income before provision for income taxes

 

$4,949,000 

 

Provision for income taxes

 

$901,000 

 

Net income

 

$4,048,000 

 

 

For the year ended May 31, 2023 (All figures being discussed are for the year ended May 31, 2023 as compared to the year ended May 31, 2022.)

 

Year ended May 31

Change

 

2023

2022

Amount

 

Percent

Net Revenue

$40,199,000 

$30,867,000 

$9,332,000 

 

30%

Cost of sales

24,133,000 

21,240,000 

2,893,000 

 

14%

Gross profit

$16,066,000 

$9,627,000 

$6,439,000 

 

67%

… as a percentage of net revenues

40%

31%

 

 

 

 

The Company's consolidated results of operations showed a 30% increase in net revenues and an increase in net income of 181%. Revenues recorded in the current period for long-term projects (“Project(s)”) were 33% more than the level recorded in the prior year.  We had 52 Projects in process during the current period compared with 45 during the same period last year.  Revenues recorded in the current period for other-than long-term projects (non-projects) were 26% more than the level recorded in the prior year.  The number of Projects in-process fluctuates from period to period.  The changes from the prior period to the current period are not necessarily representative of future results.

 

Sales of the Company's products are made to three general groups of customers: industrial, structural and aerospace / defense.  The Company saw a 27% increase from last year’s level in sales to structural customers who were seeking seismic / wind protection for either construction of new buildings and bridges or retrofitting existing buildings and bridges along with a 25% increase in sales to customers in aerospace / defense and an 85% increase in sales to customers using our products in industrial applications.  The increase in sales to structural customers is primarily from domestic customers.  

 

A breakdown of sales to these three general groups of customers, as a percentage of total net revenue for fiscal years ended May 31, 2023 and 2022 is as follows:

 

 

Year ended May 31

 

2023

2022

Industrial

10%

 7%

Structural

51%

53%

Aerospace / Defense

39%

40%


12


 

Total sales within the USA increased 39% from last year.  Total sales to Asia increased 2% from the prior year.  Net revenue by geographic region, as a percentage of total net revenue for fiscal years ended May 31, 2023 and 2022 is as follows:

 

 

Year ended May 31

 

2023

2022

USA

81%

76%

Asia

11%

14%

Other

 8%

10%

 

The gross profit as a percentage of net revenue of 40% in the current period is nine percentage points greater than the same period of the prior year (31%). The Company has been able to increase sales prices to recover more of the increased costs for materials and labor that were incurred over the past year. Management continues to work with suppliers to obtain more visibility of conditions affecting their respective markets. These actions combined with benefits from the Company’s continuous improvement initiatives and increased volume have helped to improve the gross margin as a percentage of revenue over the prior year.

 

At May 31, 2022, we had 135 open sales orders in our backlog with a total sales value of $23.7 million.  At May 31, 2023, we had 134 open sales orders in our backlog with a total sales value of $32.5 million.  $18.1 million of the current backlog is on Projects already in progress.  $7.6 million of the $23.7 million sales order backlog at May 31, 2022 was in progress at that date.  81% of the sales value in the backlog is for aerospace / defense customers compared to 41% at the end of fiscal 2022.  As a percentage of the total sales order backlog, orders from structural customers accounted for 15% at May 31, 2023 and 50% at May 31, 2022.  The Company expects to recognize revenue for the majority of the backlog during the fiscal year ending May 31, 2024, with the remainder during fiscal year ending May 31, 2025.

 

The Company's backlog, revenues, commission expense, gross margins, gross profits, and net income fluctuate from period to period.  Total sales in the current period and the changes in the current period compared to the prior period, are not necessarily representative of future results.

 

Selling, General and Administrative Expenses

 

Research and Development Costs

 

 

Years ended May 31

Change

 

2023

2022

Amount

 

Percent

R & D

 $ 1,097,000

$ 999,000

$   98,000

 

  10%

  … as a percentage of net revenues

2.7%

3.2%

 

 

 

 

Research and development costs increased 10% from the prior year.

 

Selling, General and Administrative Expenses

 

 

Years ended May 31

Change

 

2023

2022

Amount

 

Percent

S G & A

$ 8,160,000

$ 6,155,000

$ 2,005,000

 

33%

  … as a percentage of net revenues

20%

20%

 

 

 

 

Selling, general and administrative expenses increased 33% from the prior year, primarily from increased personnel costs.

 

Operating income of $6,809,000 for the year ended May 31, 2023, showed significant improvement from the $2,473,000 operating income in the prior year.

 

The Company's effective tax rate (ETR) is calculated based upon current assumptions relating to the year's operating results and various tax related items.  The ETR for the fiscal year ended May 31, 2023 is 16%, compared to the ETR for the prior year of 12%.  


13


 

A reconciliation of provision for income taxes at the statutory rate to income tax provision at the Company's effective rate is as follows:

 

 

2023

 

2022

 

Computed tax provision at the expected statutory rate

$1,575,000  

 

$538,000  

 

Tax effect of permanent differences:

 

 

 

 

Research tax credits

(284,000) 

 

(275,000) 

 

Foreign-derived intangible income deduction

(67,000) 

 

(12,000) 

 

Other permanent differences

1,000  

 

3,000  

 

Other

(7,000) 

 

63,000  

 

 

$1,218,000  

 

$317,000  

 

 

The foreign-derived intangible income deduction is a tax deduction provided to corporations that sell goods or services to foreign customers.  It became available through Public Law 115-97, known as the Tax Cuts and Jobs Act.

 

Stock Options

 

The Company has stock option plans which provide for the granting of nonqualified or incentive stock options to officers, key employees and non-employee directors.  Options granted under the plans are exercisable over a ten-year term.  Options not exercised by the end of the term expire.  

 

The Company measures compensation cost arising from the grant of share-based payments to employees at fair value and recognizes such cost in income over the period during which the employee is required to provide service in exchange for the award.  The Company recognized $417,000 and $201,000 of compensation cost for the years ended May 31, 2023 and 2022.    

 

The fair value of each stock option grant has been determined using the Black-Scholes model.  The model considers assumptions related to exercise price, expected volatility, risk-free interest rate, and the weighted average expected term of the stock option grants.  The Company used a weighted average expected term.  Expected volatility assumptions used in the model were based on volatility of the Company's stock price for the thirty-month period immediately preceding the granting of the options.  The Company issued stock options in October 2022 and April 2023.  The risk-free interest rate is derived from the U.S. treasury yield.  

 

The following assumptions were used in the Black-Scholes model in estimating the fair market value of the Company's stock option grants:

 

 

October 2022

 

April 2023

Risk-free interest rate:

 

1.625%

 

3.25%

Expected life of the options:

 

4.1 years

 

4.2 years

Expected share price volatility:

 

30%

 

36%

Expected dividends:

 

zero

 

zero

These assumptions resulted in estimated fair-market value per stock option:

 

$3.06

 

$6.72

 

 

The ultimate value of the options will depend on the future price of the Company's common stock, which cannot be forecast with reasonable accuracy.  A summary of changes in the stock options outstanding during the year ended May 31, 2023 is presented below.

 

 

 

 

 

Weighted-

 

 

Number of

 

Average

 

 

Options

 

Exercise Price

Options outstanding and exercisable at May 31, 2022:

 

283,000 

 

$11.43 

Options granted:

 

85,000 

 

$15.75 

Less: Options exercised:

 

30,500 

 

$9.57 

Less: Options expired:

 

4,500 

 

- 

Options outstanding and exercisable at May 31, 2023:

 

333,000 

 

$12.70 

Closing value per share on NASDAQ at May 31, 2023:

 

 

 

$18.55 


14


 

Capital Resources, Line of Credit and Long-Term Debt

 

The Company's primary liquidity is dependent upon its working capital needs.  These are primarily short-term investments, inventory, accounts receivable, costs and estimated earnings in excess of billings, accounts payable, accrued expenses and billings in excess of costs and estimated earnings.  The Company's primary source of liquidity has been operations.  

 

Capital expenditures for the year ended May 31, 2023 were $3,359,000 compared to $1,392,000 in the prior year.  Current year capital expenditures included new manufacturing machinery, testing equipment, upgrades to technology equipment and assembly / test facility improvements.  The Company has commitments to make capital expenditures of approximately $107,000 as of May 31, 2023.  These capital expenditures will be primarily for new manufacturing and testing equipment.

 

The Company has a $10,000,000 bank demand line of credit, with interest payable at the Company's option of 30, 60 or 90 day LIBOR rate plus 2.25%. Interest payable will change from LIBOR rate plus 2.25% to SOFR rate plus 2.365% effective July 1, 2023. There is no outstanding balance at May 31, 2023 or May 31, 2022.  The line is secured by a negative pledge of the Company's real and personal property.  This line of credit is subject to the usual terms and conditions applied by the bank and is subject to renewal annually.  

 

The bank is not committed to make loans under this line of credit and no commitment fee is charged.

 

Inventory and Maintenance Inventory

 

May 31, 2023

May 31, 2022

Increase /(Decrease)

Raw materials

$674,000 

 

$489,000 

 

$185,000  

 

38%

Work-in-process

5,005,000 

 

5,166,000 

 

(161,000) 

 

-3%

Finished goods

262,000 

 

200,000 

 

62,000  

 

31%

Inventory

5,941,000 

 86%

5,855,000 

 84%

86,000  

 

1%

Maintenance and other inventory

1,003,000 

 14%

1,107,000 

 16%

(104,000) 

 

-9%

Total

$6,944,000 

100%

$6,962,000 

100%

$(18,000) 

 

0%

 

 

 

 

 

 

 

 

Inventory turnover

3.5

 

3.1

 

 

 

 

 

Inventory, at $5,941,000 as of May 31, 2023, is one percent higher than at the prior year-end.  Of this, approximately 84% is work in process, 4% is finished goods, and 12% is raw materials.  All of the current inventory is expected to be consumed or sold within twelve months.  The level of inventory will fluctuate from time to time due to the stage of completion of the non-project sales orders in progress at the time.

 

The Company disposed of approximately $322,000 and $772,000 of obsolete inventory during the years ended May 31, 2023 and 2022, respectively.  

 

Accounts Receivable, Costs and Estimated Earnings in Excess of Billings (“CIEB”) and Billings in Excess of Costs and Estimated Earnings (“BIEC”)

 

 

 

May 31, 2023

May 31, 2022

Increase /(Decrease)

Accounts receivable

5,554,000

 

4,467,000

 

1,087,000

 

24%

CIEB

4,124,000

 

3,336,000

 

788,000

 

24%

Less: BIEC

1,992,000

 

1,123,000

 

869,000

 

77%

Net

$  7,686,000

 

$  6,680,000

 

$ 1,106,000

 

15%

 

 

 

 

 

 

 

 

Number of an average day’s sales outstanding in accounts receivable (DSO)

47

 

42

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


15


 

The Company combines the totals of accounts receivable, the asset CIEB, and the liability BIEC, to determine how much cash the Company will eventually realize from revenue recorded to date.  As the accounts receivable figure rises in relation to the other two figures, the Company can anticipate increased cash receipts within the ensuing 30-60 days.  

 

Accounts receivable of $5,554,000 as of May 31, 2023 includes approximately $24,000 of amounts retained by customers on long-term construction projects.  The Company expects to collect all of these amounts, including the retained amounts, during the next twelve months.  The number of an average day's sales outstanding in accounts receivable (DSO) was 47 days at May 31, 2023 and 42 days at May 31, 2022.  The Company expects to collect the net accounts receivable balance, including the retainage, during the next twelve months.

 

The status of the projects in-progress at the end of the current and prior fiscal years have changed in the factors affecting the year-end balances in the asset CIEB, and the liability BIEC:

 

 

2023

2022

Number of projects in progress at year-end

22

19

Aggregate percent complete at year-end

33%

47%

Average total value of projects in progress at year-end

$1,285,000

$795,000

Percentage of total value invoiced to customer

29%

35%

 

 

There are 3 more projects in-process at the end of the current fiscal year as compared with the prior year end and the average value of those projects has increased by 62% between those two dates.  

 

As noted above, CIEB represents revenues recognized in excess of amounts billed.  Whenever possible, the Company negotiates a provision in sales contracts to allow the Company to bill, and collect from the customer, payments in advance of shipments.  Unfortunately, provisions such as this are often not possible.  The $4,124,000 balance in this account at May 31, 2023 is a 24% increase from the prior year-end.  This increase reflects the higher aggregate level of the percentage of completion of these Projects as of the current year end as compared with the Projects in process at the prior year end.  Generally, if progress billings are permitted under the terms of a project sales agreement, then the more complete the project is, the more progress billings will be permitted.  The Company expects to bill the entire amount during the next twelve months.  46% of the CIEB balance as of the end of the last fiscal quarter, February 28, 2023, was billed to those customers in the current fiscal quarter ended May 31, 2023.  The remainder will be billed as the projects progress, in accordance with the terms specified in the various contracts.

 

The year-end balances in the CIEB account are comprised of the following components:

 

 

May 31, 2023

 

May 31, 2022

Costs

$  3,006,000

 

$  3,250,000

Estimated earnings

2,648,000

 

2,642,000

Less: Billings to customers

1,530,000

 

2,556,000

CIEB

$  4,124,000

 

$  3,336,000

Number of projects in progress

12

 

11

 

As noted above, BIEC represents billings to customers in excess of revenues recognized.  The $1,992,000 balance in this account at May 31, 2023 is in comparison to a $1,123,000 balance at the end of the prior year.  The balance in this account fluctuates in the same manner and for the same reasons as the account "costs and estimated earnings in excess of billings," discussed above.  Final delivery of product under these contracts is expected to occur during the next twelve months.


16


 

The year-end balances in this account are comprised of the following components:

 

 

May 31, 2023

 

May 31, 2022

Billings to customers

$6,538,000 

 

$2,711,000 

Less:  Costs

2,343,000 

 

1,019,000 

Less: Estimated earnings

2,203,000 

 

569,000 

BIEC

$1,992,000 

 

$1,123,000 

Number of projects in progress

10 

 

8 

 

 

Accounts payable, at $1,718,000 as of May 31, 2023, is 20% more than the prior year-end.  This increase is normal fluctuation of this account and is not considered to be unusual.  The Company expects the current accounts payable amount to be paid during the next twelve months.   

 

Accrued expenses of $4,078,000 increased 19% from the prior year level of $3,414,000.  This increase is due to increases in accrued incentive compensation resulting from increased earnings and sales order bookings, offset by a reduction in customer prepayments.

 

Management believes that the Company's cash on hand, cash flows from operations, and borrowing capacity under the bank line of credit will be sufficient to fund ongoing operations and capital improvements for the next twelve months.  


17


 

Item 7A. Quantitative and Qualitative Disclosures About Market Risk.

 

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

 

Item 8. Financial Statements and Supplementary Data.

 

The financial statements and supplementary data required pursuant to this Item 8 are included in this Form 10-K as a separate section commencing on page 26 and are incorporated herein by reference.

 

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

 

There have been no disagreements between the Company and its accountants as to matters which require disclosure.

 

Item 9A. Controls and Procedures.

 

(a) Evaluation of disclosure controls and procedures.   

 

The Company's principal executive officer and principal financial officer have evaluated the Company's disclosure controls and procedures as of May 31, 2023 and have concluded that, as of the evaluation date, the disclosure controls and procedures were effective to ensure that information required to be disclosed in the reports that the Company files or submits under the Exchange Act is recorded, processed, summarized and reported, within the time periods specified in the Commission's rules and forms and that information required to be disclosed in the reports the Company files or submits under the Exchange Act is accumulated and communicated to our management, including our chief executive officer and chief financial officer, to allow timely decisions regarding required disclosure. 

 

(b)Management's report on internal control over financial reporting. 

 

The Company's management, with the participation of the Company's principal executive officer and principal financial officer, is responsible for establishing and maintaining adequate internal control over financial reporting.  The Company's management has assessed the effectiveness of the Company's internal control over financial reporting as of May 31, 2023.  In making this assessment, management used the criteria set forth by the Committee of Sponsoring Organizations of the Treadway Commission (COSO) in Internal Control -- Integrated Framework, updated in 2013.  Based on this assessment management has concluded that, as of May 31, 2023, the Company's internal control over financial reporting is effective based on those criteria. 

 

(c)Changes in internal control over financial reporting. 

 

There have been no changes in the Company's internal controls over financial reporting that occurred during the fiscal year ended May 31, 2023 that have materially affected, or are reasonably likely to materially affect, the Company's control over financial reporting. 

 

 

Item 9B. Other Information.

 

None.

 

PART III

 

The information required by Items 10, 11, 12, 13 and 14 of this part will be presented in the Company's Proxy Statement to be issued in connection with the Annual Meeting of Shareholders to be held on October 20, 2023, which information is hereby incorporated by reference into this Annual Report.  The proxy materials, including the Proxy Statement and form of proxy, will be filed within 120 days after the Company's fiscal year end.


18


 

PART IV

 

Item 15. Exhibits and Financial Statement Schedules.

 

DOCUMENTS FILED AS PART OF THIS REPORT:

 

Index to Financial Statements:

 

 

 

(i)

Report of Independent Registered Public Accounting Firm

 

 

 

(ii)

Consolidated Balance Sheets as of May 31, 2023 and 2022

 

 

 

(iii)

Consolidated Statements of Income for the years ended May 31, 2023 and 2022

 

 

(iv)

Consolidated Statements of Stockholders' Equity for the years ended May 31, 2023 and 2022

 

 

 

(v)

Consolidated Statements of Cash Flows for the years ended May 31, 2023 and 2022

 

 

 

(vi)

Notes to Consolidated Financial Statements - May 31, 2023 and 2022

EXHIBITS:

 

3

Articles of incorporation and by-laws

 

 

 

(i)

Restated Certificate of Incorporation incorporated by reference to Exhibit (3)(i) of Annual Report on Form 10-K, dated August 24, 1983.

 

 

 

(ii)

Amendment to Certificate of Incorporation incorporated by reference to Exhibit (3)(iv) to Form 8 [Amendment to Application or Report], dated September 24, 1993.

 

 

 

(iii)

Amendment to Certificate of Incorporation eliminating and re-designating the Series A Junior Preferred Stock and creating 5,000 Series 2008 Junior Participating Preferred Stock, at $.05 par value, as filed by the Secretary of State of the State of New York on September 16, 2008, and incorporated by reference to Exhibit (3)(i) of Form 8-K, dated as of September 15, 2008 and filed September 18, 2008.

 

 

 

(iv)

Certificate of Change incorporated by reference to Exhibit (3)(i) to Quarterly Report on Form 10-QSB for the period ending November 30, 2002.

 

 

 

(v)

By-laws – filed on January 6, 2023 with Form 10-Q for the period ending November 30, 2022, and incorporated herein by reference.

 

 

4

Instruments defining rights of security holders, including indentures

 

 

 

(i)

Rights Agreement by and between registrant and Computershare Trust Company, N.A., dated as of September 25, 2018 and letter to shareholders (including Summary of Rights), dated October 5, 2018, attached as Exhibits 4 and 20, respectively, to Registration Statement on Form 8-A 12G, filed with the Securities and Exchange Commission on October 5, 2018.

 

 

 

(ii)

Description of registrant’s securities incorporated by reference to Exhibit 4(vi) to Annual Report on Form 10-K for the fiscal year ended May 31, 2019, filed August 2, 2019.


19


 

 

 

10

Material Contracts

 

 

 

(i)

2012 Taylor Devices, Inc. Stock Option Plan attached as Appendix C to Definitive Proxy Statement, filed with the Securities and Exchange Commission on September 21, 2012.

 

 

 

(ii)

2015 Taylor Devices, Inc. Stock Option Plan attached as Appendix B to Definitive Proxy Statement, filed with the Securities and Exchange Commission on April 8, 2016.

 

 

 

(iii)

2018 Taylor Devices, Inc. Stock Option Plan attached as Appendix B to Definitive Proxy Statement, filed with the Securities and Exchange Commission on September 27, 2018.

 

 

 

(iv)

2022 Taylor Devices, Inc. Stock Option Plan attached as Appendix A to Definitive Proxy Statement, filed with the Securities and Exchange Commission on September 6, 2022.

 

 

 

(v)

The 2004 Taylor Devices, Inc. Employee Stock Purchase Plan, incorporated by reference to Exhibit 4.1 to Registration Statement on Form S-8, File No. 333-114085, filed with the Securities and Exchange Commission on March 31, 2004.

 

 

 

(vi)

Post-Effective Amendment No. 1 to Registration Statement on Form S-8, File No. 333-114085, for the 2004 Taylor Devices, Inc. Employee Stock Purchase Plan, filed with the Securities and Exchange Commission on August 24, 2006.

 

 

 

(vii)

Form of Indemnification Agreement between registrant and directors and executive officers, attached as Appendix A to Definitive Proxy Statement, filed with the Securities and Exchange Commission on September 27, 2007.

 

 

 

(viii)

Management Bonus Policy dated as of March 4, 2011 between the Registrant and executive officers, incorporated by reference to Exhibit 10(i) to Quarterly Report on Form 10-Q for the period ending February 28, 2011.

 

 

 

(ix)

Negative Pledge Agreement dated August 30, 2017 by the Registrant in favor of M&T Bank, incorporated by reference to Exhibit 10(xiv) to Quarterly Report on Form 10-Q for the period ending August 31, 2017.

 

 

 

(x)

Employment Agreement dated as of June 14, 2018 between the Registrant and Alan R. Klembczyk, incorporated by reference to Exhibit 10(i) to Current Report on Form 8-K filed June 19, 2018.

 

 

 

(xi)

Employment Agreement dated as of August 9, 2021 between the Registrant and Timothy J. Sopko, incorporated by reference to Exhibit 10 to Current Report on Form 8-K filed August 13, 2021.

 


20


 

 

11

Statement regarding computation of per share earnings

 

 

 

 

 

REG. 228.601(A)(11)  Statement regarding computation of per share earnings

 

 

 

 

 

Weighted average of common stock/equivalents outstanding - fiscal year ended May 31, 2023

 

 

 

 

 

 

 

Weighted average common stock outstanding

3,506,474   

 

 

 

Common shares issuable under stock option plans using treasury stock method

45,020   

 

 

 

Weighted average common stock outstanding assuming dilution

3,551,494   

 

 

 

 

 

 

 

Net income fiscal year ended May 31, 2023

(1)

$ 6,287,358   

 

 

 

Weighted average common stock

(2)

3,506,474   

 

 

 

Basic income per common share        (1) divided by (2)

$ 1.79   

 

 

 

 

 

 

 

Net income fiscal year ended May 31, 2023

(3)

$ 6,287,358   

 

 

 

Weighted average common stock outstanding assuming dilution

(4)

3,551,494   

 

 

 

Diluted income per common share     (3) divided by (4)

$ 1.77   

 

 

 

 

 

Weighted average of common stock/equivalents outstanding - fiscal year ended May 31, 2022

 

 

 

 

 

 

 

Weighted average common stock outstanding

3,497,345   

 

 

 

Common shares issuable under stock option plans using treasury stock method

2,208   

 

 

 

Weighted average common stock outstanding assuming dilution

3,499,553   

 

 

 

 

 

 

 

Net income fiscal year ended May 31, 2022

(1)

$ 2,239,423   

 

 

 

Weighted average common stock

(2)

3,497,345   

 

 

 

Basic income per common share        (1) divided by (2)

$ 0.64   

 

 

 

 

 

 

 

Net income fiscal year ended May 31, 2022

(3)

$ 2,239,423   

 

 

 

Weighted average common stock outstanding assuming dilution

(4)

3,499,553   

 

 

 

Diluted income per common share     (3) divided by (4)

$ 0.64   

 

 

 

 

 

21

Subsidiaries of the registrant

 

 

Tayco Realty Corporation is a New York corporation organized on September 8, 1977, owned by the Company.

 

23

The Consent of Independent Registered Public Accounting Firm precedes the Consolidated Financial Statements.

 

31

Officer Certifications

 

 

(i)

Rule 13a-14(a) Certification of Chief Executive Officer.

 

 

(ii)

Rule 13a-14(a) Certification of Chief Financial Officer.


21


 

 

32

Officer Certifications

 

 

(i)

Section 1350 Certification of Chief Executive Officer.

 

 

(ii)

Section 1350 Certification of Chief Financial Officer.

 

101

Interactive data files pursuant to Rule 405 of Regulation S-T:  (i) Consolidated Balance Sheets, (ii) Consolidated Statements of Income, (iii) Consolidated Statements of Stockholders’ Equity, (iv) Consolidated Statements of Cash Flows, and (v) Notes to Consolidated Financial Statements.

 

 

101.SCH

XBRL Taxonomy Extension Schema Document

 

 

101.CAL

XBRL Taxonomy Extension Calculation Linkbase Document

 

 

101.DEF

XBRL Taxonomy Extension Definition Linkbase Document

 

 

101.LAB

XBRL Taxonomy Extension Label Linkbase Document

 

 

101.PRE

XBRL Taxonomy Extension Presentation Linkbase Document

 

 

104

Cover Page Interactive Data File – the cover page XBRL tags are embedded within the Inline XBRL document and are contained within Exhibit 101

 

 

Item 16. Form 10-K Summary.

 

None.


22


 

 

 

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.

 

 

TAYLOR DEVICES, INC.

 

(Registrant)

 

 

 

 

 

By:

/s/Timothy J. Sopko

Date:

August 15, 2023

 

Timothy J. Sopko

 

 

 

Chief Executive Officer

 

 

 

(Principal Executive Officer)

 

 

 

 

 

 

and 

 

 

 

 

By:

/s/Paul Heary

Date:

August 15, 2023

 

Paul Heary

 

 

 

Chief Financial Officer

 

 

 

 

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

 

 

 

 

By:

/s/John Burgess

By:   

/s/Robert M. Carey

 

John Burgess, Director

 

Robert M. Carey, Director

 

August 15, 2023

 

August 15, 2023

 

 

 

 

 

By:

/s/F. Eric Armenat

By:   

/s/Alan R. Klembczyk

 

F. Eric Armenat, Director

 

Alan R. Klembczyk, President and Director

 

August 15, 2023

 

August 15, 2023


23


 

 

 

[Lumsden & McCormick, LLP Letterhead]

 

 

 

 

 

 

CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM

 

 

 

 

To The Board of Directors of

Taylor Devices, Inc.

 

 

Gentlemen:

 

 

We hereby consent to the incorporation by reference in this Annual Report on Form 10-K (Commission File Number 0-3498) of Taylor Devices, Inc. of our report dated August 15, 2023 and any reference thereto in the Annual Report to Shareholders for the fiscal year ended May 31, 2023.

 

We also consent to such incorporation by reference in Registration Statement Nos. 333-114085, 333-184809, 333-210660, 333-232121, and 333-268120 of Taylor Devices, Inc. on Form S-8 of our report dated August 15, 2023.

 

 

/s/Lumsden & McCormick, LLP

Lumsden & McCormick, LLP

Buffalo, New York

August 15, 2023


24


 

 

 

 

 

 

 

TAYLOR DEVICES, INC. AND SUBSIDIARY

 

CONSOLIDATED FINANCIAL STATEMENTS

 

May 31, 2023


25


[Lumsden & McCormick, LLP Letterhead]

 

 

 

 

 

REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM

 

 

 

The Board of Directors and Stockholders

Taylor Devices, Inc.

 

 

Opinion on the Financial Statements

 

We have audited the accompanying consolidated balance sheets of Taylor Devices, Inc. and Subsidiary (the Company) as of May 31, 2023 and 2022, and the related consolidated statements of income, stockholders' equity, and cash flows for the years then ended, and the related notes to the consolidated financial statements (collectively referred to as the consolidated financial statements).  In our opinion, the consolidated financial statements present fairly, in all material respects, the financial condition of the Company as of May 31, 2023 and 2022, and the results of its operations and its cash flows for the years then ended in accordance with accounting principles generally accepted in the United States of America.

 

Basis for Opinion

 

These consolidated financial statements are the responsibility of the Company’s management.  Our responsibility is to express an opinion on the Company’s consolidated 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 consolidated 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 consolidated 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 consolidated financial statements.  Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall financial statement presentation.  We believe that our audits provide a reasonable basis for our opinion.

 

Critical Audit Matters

 

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


26


Cost Estimates for Long-Term Contracts and Related Revenue Recognition

 

Description of the Matter

 

As more fully described in Note 1 to the consolidated financial statements, the Company recognizes revenue over time for long-term contracts as goods are produced.  The Company uses costs incurred as the method for determining progress, and revenue is recognized based on costs incurred to date plus an estimate of margin at completion.  The process of estimating margin at completion involves estimating the costs to complete production of goods and comparing those costs to the estimated final revenue amount.  Long-term contracts are inherently uncertain in that revenue is fixed while the estimates of costs required to complete these contracts are subject to significant variability.  Due to the technical performance requirements in many of these contracts, changes to cost estimates could occur, resulting in higher or lower margins when the contracts are completed.  

 

Given the inherent uncertainty and significant judgments necessary to estimate future costs at completion, auditing these estimates involved a focused audit effort and a high degree of auditor judgment.

 

How We Addressed the Matter in Our Audit

 

Our auditing procedures related to the cost estimates for long-term contracts and related revenue recognition included the following, among others:

·We evaluated the appropriateness and consistency of management’s methods used to develop its estimates. 

·We evaluated the reasonableness of judgments made and significant assumptions used by management relating to key estimates. 

·We selected a sample of executed contracts to understand the contract, perform an independent assessment of the appropriate timing of revenue recognition, and test the mathematical accuracy of revenue recognized based on costs incurred to date relative to total estimated costs at completion. 

·We performed inquiries of the Company’s project managers and others directly involved with the contracts to evaluate project status and project challenges which may affect total estimated costs to complete.  We also observed the project work site when key estimates related to tangible or physical progress of the project. 

·We tested the accuracy and completeness of the data used in developing key estimates, including material, labor, overhead, and sub-contractor costs. 

·We performed retrospective reviews of prior year long-term contracts, comparing actual performance to estimated performance and the related financial statement impact, when evaluating the thoroughness and precision of management’s estimation process in previous years. 

 

Valuation of Inventory

 

Description of the Matter

 

As of May 31, 2023, the Company’s inventory balance was $5.9 million, net of a $68,000 allowance for obsolescence, its maintenance and other inventory balance was $1.0 million, net of an approximate $1.2 million allowance for obsolescence.  As discussed in Note 5, maintenance and other inventory represents certain items that are estimated to have a product life-cycle in excess of twelve months the Company is required to maintain for service of products sold and items that are generally subject to spontaneous ordering.  The Company evaluates its inventory for obsolescence on an ongoing basis by considering historical usage as well as requirements for future orders.  

 

Given the inherent uncertainty and significant judgments necessary to estimate potential inventory obsolescence, auditing management’s estimates involved a high degree of auditor judgment.


27


How We Addressed the Matter in Our Audit

 

Our auditing procedures related to valuation of inventory included the following, among others:

·We evaluated the appropriateness and consistency of management’s methods used to develop its estimates. 

·We evaluated the reasonableness of judgments made and significant assumptions used by management relating to key estimates. 

·We inquired of management relative to write-offs of inventory during the year. 

·We tested the completeness and accuracy of management’s schedule of inventory. 

·We developed an independent expectation of the obsolescence reserve based on our knowledge of the Company’s inventory, including analysis of slow-moving items and historical usage and compared it to actual. 

·We examined management’s lower of cost or net realizable value analysis and performed procedures to test its completeness and accuracy. 

·We selected a sample of material purchases made during the year to ensure they were included in inventory at the proper value. 

·During our physical inventory observation, we toured the Company’s warehouses and examined inventory on hand for any indications of obsolescence. 

 

/s/Lumsden & McCormick, LLP

Lumsden & McCormick, LLP

PCOAB ID: 130

 

We have served as the Company’s auditor since 1998.

 

Buffalo, New York

August 15, 2023


28


 

TAYLOR DEVICES, INC. AND SUBSIDIARY

 

 

 

 

 

 

Consolidated Balance Sheets

 

 

 

 

 

 

May 31,

2023

2022

 

Assets

 

 

Current assets:

 

 

 

Cash and cash equivalents

$3,575,219  

$22,517,038  

 

Short-term investments

24,514,757  

1,097,450  

 

Accounts and other receivables, net (Note 2)

5,553,504  

4,466,686  

 

Inventory (Note 3)

5,941,304  

5,854,935  

 

Prepaid expenses

439,607  

468,489  

 

Prepaid income taxes

228,947  

235,947  

 

Costs and estimated earnings in excess of billings (Note 4)

4,124,182  

3,336,474  

 

 

Total current assets

44,377,520  

37,977,019  

 

 

 

 

Maintenance and other inventory, net (Note 5)

1,003,140  

1,107,309  

Property and equipment, net (Note 6)

11,721,784  

9,854,759  

Cash value of life insurance, net

210,120  

205,359  

Deferred income taxes (Note 10)

568,615  

74,615  

$57,881,179  

$49,219,061  

Liabilities and Stockholders' Equity

 

 

Current liabilities:

 

 

 

Accounts payable

$1,717,657  

$1,426,830  

 

Accrued expenses (Note 8)

4,078,322  

3,414,314  

 

Billings in excess of costs and estimated earnings (Note 4)

1,992,470  

1,122,763  

 

 

Total current liabilities

7,788,449  

5,963,907  

 

 

 

 

 

 

Stockholders' Equity:

 

 

 

Common stock, $0.025 par value, authorized 8,000,000 shares, issued 4,088,193 and 4,056,771 shares

102,127  

101,342  

 

Paid-in capital

10,947,089  

10,227,916  

 

Retained earnings

42,128,256  

35,840,898  

 

 

53,177,472  

46,170,156  

 

Treasury stock – 567,751 and 558,834 shares at cost

(3,084,742) 

(2,915,002) 

 

 

Total stockholders' equity

50,092,730  

43,255,154  

 

 

$57,881,179  

$49,219,061  

 

 

 

 

See notes to consolidated financial statements.

 

 


29


 

TAYLOR DEVICES, INC. AND SUBSIDIARY

 

 

 

 

 

 

 

Consolidated Statements of Income

 

 

 

 

 

 

For the years ended May 31,

2023

 

2022

 

 

 

 

 

Sales, net (Note 9)

$40,199,354  

 

$30,866,582 

 

 

 

 

Cost of goods sold

24,133,312  

 

21,239,886 

 

 

 

 

    Gross profit

16,066,042  

 

9,626,696 

Research and development costs

1,096,807  

 

999,184 

Selling, general and administrative expenses

8,160,169  

 

6,154,735 

 

 

 

 

    Operating income

6,809,066  

 

2,472,777 

 

 

 

 

Other income (expense)

 

 

 

  Interest, net

698,864  

 

4,543 

  Miscellaneous

(2,572) 

 

79,103 

Total other income, net

696,292  

 

83,646 

 

 

 

 

    Income before provision for income taxes

7,505,358  

 

2,556,423 

 

 

 

 

Provision for income taxes (Note 10)

1,218,000  

 

317,000 

 

 

 

 

    Net income

$6,287,358  

 

$2,239,423 

 

 

 

 

Basic earnings per common share (Note 11)

$1.79  

 

$0.64 

Diluted earnings per common share (Note 11)

$1.77  

 

$0.64 

 

 

 

 

See notes to consolidated financial statements.

 

 

 


30


 

TAYLOR DEVICES, INC. AND SUBSIDIARY

 

 

 

 

 

 

Consolidated Statements of Stockholders’ Equity

 

 

 

 

 

 

For the years ended May 31,

2023

2022

Common Stock

 

 

 

Beginning of period

$101,342  

$101,305  

 

Issuance of shares for employee stock purchase plan

22  

37  

 

Issuance of shares for employee stock option plan

763  

-  

 

End of period

102,127  

101,342  

 

 

 

 

Paid-in Capital

 

 

 

Beginning of period

10,227,916  

10,010,430  

 

Issuance of shares for employee stock purchase plan

10,854  

16,208  

 

Issuance of shares for employee stock option plan

291,066  

-  

 

Stock options issued for services

417,253  

201,278  

 

End of period

 

10,947,089  

10,227,916  

 

 

 

 

Retained Earnings

 

 

 

Beginning of period

35,840,898  

33,601,475  

 

Net income

6,287,358  

2,239,423  

 

End of period

42,128,256  

35,840,898  

 

 

 

Treasury Stock

 

 

 

Beginning of period

(2,915,002) 

(2,915,002) 

 

Issuance of shares for employee stock option plan

(169,740) 

-  

 

End of period

(3,084,742) 

(2,915,002) 

 

 

 

 

 Total stockholders' equity

$50,092,730  

$43,255,154  

 

 

See notes to consolidated financial statements


31


 

 

 

TAYLOR DEVICES, INC. AND SUBSIDIARY

 

 

 

 

 

 

 

 

 

Consolidated Statements of Cash Flows

 

 

 

 

 

 

 

 

 

For the years ended May 31,

2023

2022

 

 

 

 

 

 

 

Operating activities:

 

 

 

Net income

$6,287,358 

$2,239,423 

 

Adjustments to reconcile net income to net cash flows from operating activities:

 

 

 

Depreciation

1,472,455  

1,347,442  

 

 

Stock options issued for services

417,253  

201,278  

 

 

Bad debt expense

23,360  

-  

 

 

(Gain) loss on disposal of property and equipment

20,015  

(1,530) 

 

 

Provision for inventory obsolescence

295,014  

-  

 

 

Deferred income taxes

(494,000) 

115,500  

 

 

Changes in other current assets and liabilities:

 

 

 

 

 

Accounts and other receivables

(1,110,178) 

(346,122) 

 

 

 

Inventory

(277,214) 

486,191  

 

 

 

Prepaid expenses

28,882  

54,258  

 

 

 

Prepaid income taxes

7,000  

218,831  

 

 

 

Costs and estimated earnings in excess of billings

(787,708) 

(1,836,870) 

 

 

 

Accounts payable

290,827  

(360,495) 

 

 

 

Accrued expenses

664,008  

1,429,841  

 

 

 

Billings in excess of costs and estimated earnings

869,707  

(239,222) 

 

 

 

 

Net operating activities

7,706,779  

3,308,525  

 

 

 

 

 

 

 

Investing activities:

 

 

 

Acquisition of property and equipment

(3,359,495) 

(1,391,577) 

 

Proceeds from disposal of property and equipment

-  

7,500  

 

Increase in short-term investments

(23,417,307) 

(438) 

 

Increase in cash value of life insurance

(4,761) 

(4,821) 

 

 

 

 

Net investing activities

(26,781,563) 

(1,389,336) 

 

 

 

 

 

 

 

Financing activities:

 

 

 

Proceeds from issuance of common stock

302,705  

16,245  

 

Acquisition of treasury stock

(169,740) 

-  

 

     Net financing activities

132,965  

16,245  

 

 

 

 

 

 

 

 

 

 

 

Net change in cash and cash equivalents

(18,941,819) 

1,935,434  

 

 

 

 

 

 

 

Cash and cash equivalents - beginning

22,517,038  

20,581,604  

 

 

 

 

Cash and cash equivalents - ending

$3,575,219  

$22,517,038  

 

 

 

 

 

 

 

See notes to consolidated financial statements.

 

 


32


 

 

TAYLOR DEVICES, INC. AND SUBSIDIARY

 

Notes to Consolidated Financial Statements

 

 

1.  Summary of Significant Accounting Policies:

 

Nature of Operations:

 

Taylor Devices, Inc. (the Company) manufactures and sells a single group of very similar products that have many different applications for customers.  These similar products are included in one of eight categories; namely, Seismic Dampers, Fluidicshoks®, Crane and Industrial Buffers, Self-Adjusting Shock Absorbers, Liquid Die Springs, Vibration Dampers, Machined Springs and Custom Actuators for use in various types of machinery, equipment and structures, primarily to customers which are located throughout the United States and several foreign countries.  The products are manufactured at the Company's sole operating facility in the United States where all of the Company's long-lived assets reside. Management does not track or otherwise account for sales broken down by these categories.

 

81% of the Company's 2023 revenue was generated from sales to customers in the United States and 11% was from sales to customers in Asia.  Remaining sales were to customers in other countries in North America, Europe, Australia, and South America.

 

76% of the Company's 2022 revenue was generated from sales to customers in the United States and 14% was from sales to customers in Asia.  Remaining sales were to customers in other countries in North America, Europe, Australia, and South America.

 

Principles of Consolidation:

 

The accompanying consolidated financial statements include the accounts of the Company and its wholly owned subsidiary, Tayco Realty Corporation (Realty).  All inter-company transactions and balances have been eliminated in consolidation.

 

Subsequent Events:

 

The Company has evaluated events and transactions for potential recognition or disclosure in the financial statements through the date the financial statements were issued.

 

Use of Estimates:

 

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 amounts reported in the financial statements and accompanying notes.  Actual results could differ from those estimates.

 

Cash and Cash Equivalents:

 

The Company includes all highly liquid investments in money market funds in cash and cash equivalents on the accompanying balance sheets.

 

Cash and cash equivalents in financial institutions may exceed insured limits at various times during the year and subject the Company to concentrations of credit risk.


33


 

Short-term Investments:

 

At times, the Company invests excess funds in liquid interest earning instruments. Short-term investments at May 31, 2023 and May 31, 2022 include “available for sale” money market funds, US treasury securities and corporate bonds stated at fair value, which approximates cost. The short-term investments (20) mature on various dates during the period June 2023 to November 2026. Unrealized holding gains and losses would be presented as a separate component of accumulated other comprehensive income, net of deferred income taxes. Realized gains and losses on the sale of investments are determined using the specific identification method.

 

The short-term investments are valued using pricing models maximizing the use of observable inputs for similar securities. This includes basing value on yields currently available on comparable securities of issuers with similar credit ratings.

 

Accounts and Other Receivables:

 

Accounts and other receivables are stated at an amount management expects to collect from outstanding balances.  Management provides for probable uncollectible accounts through a charge to earnings and a credit to a valuation allowance based on its assessment of the current status of individual accounts.  Balances that are still outstanding after management has used reasonable collection efforts are written off through a charge to the valuation allowance and a credit to the receivable.

 

Inventory:

 

Inventory is stated at the lower of average cost or net realizable value. Average cost approximates first-in, first-out cost.

 

Property and Equipment:

 

Property and equipment is stated at cost net of accumulated depreciation.  Depreciation is provided primarily using the straight-line method for financial reporting purposes and accelerated methods for income tax reporting purposes.  Maintenance and repairs are charged to operations as incurred; significant improvements are capitalized.

 

Cash Value of Life Insurance:

 

Cash value of life insurance is stated at the surrender value of the contracts.

 

Revenue Recognition:

 

Revenue is recognized (generally at fixed prices) when, or as, the Company transfers control of promised products or services to a customer in an amount that reflects the consideration to which the Company expects to be entitled in exchange for transferring those products or services.

A performance obligation is a promise in a contract to transfer a distinct good or service to the customer, and is the unit of account. A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. The majority of our contracts have a single performance obligation as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts which are, therefore, not distinct. Promised goods or services that are immaterial in the context of the contract are not separately assessed as performance obligations.  

For contracts with customers in which the Company satisfies a promise to the customer to provide a product that has no alternative use to the Company and the Company has enforceable rights to payment for progress completed to date inclusive of profit, the Company satisfies the performance obligation and recognizes revenue over time (generally less than one year), using costs incurred to date relative to total estimated costs at completion to measure progress toward satisfying our performance obligations.  Incurred cost represents work performed, which corresponds with, and thereby best depicts, the transfer of control to the customer.  Contract costs include labor, material and overhead.  Adjustments to cost estimates are made periodically, and losses expected to be incurred on contracts in progress are charged to operations in the period such losses are determined.  Other sales to customers are recognized upon shipment to the customer based on contract prices and terms.  In the year ended May 31, 2023, 61% of revenue was recorded for contracts in which revenue was recognized over time while 39% was recognized at a point in time.  In the year ended May 31, 2022, 60% of revenue was recorded for contracts in which revenue was recognized over time while 40% was recognized at a point in time.


34


Progress payments are typically negotiated for longer term projects.  Payments are otherwise due once performance obligations are complete (generally at shipment and transfer of title).  For financial statement presentation purposes, the Company nets progress billings against the total costs incurred on uncompleted contracts.  The asset, “costs and estimated earnings in excess of billings,” represents revenues recognized in excess of amounts billed.  The liability, “billings in excess of costs and estimated earnings,” represents billings in excess of revenues recognized.

If applicable, the Company recognizes an asset for the incremental material costs of obtaining a contract with a customer if the Company expects the benefit of those costs to be longer than one year and the costs are expected to be recovered.  As of May 31, 2023 and 2022, the Company does not have material incremental costs on any open contracts with an original expected duration of greater than one year, and therefore such costs are expensed as incurred.  These incremental costs include, but are not limited to, sales commissions incurred to obtain a contract with a customer.

 

Shipping and Handling Costs:

 

Shipping and handling costs on incoming inventory items are classified as a component of cost of goods sold, while shipping and handling costs on outgoing shipments to customers are classified as a component of selling, general and administrative expenses.  The amounts of these costs classified as a component of selling, general and administrative expenses were $366,763 and $238,536 for the years ended May 31, 2023 and 2022.  Shipping and handling activities that occur after the customer has obtained control of the product are considered fulfillment activities, not performance obligations.

 

Income Taxes:

 

The provision for income taxes provides for the tax effects of transactions reported in the financial statements regardless of when such taxes are payable.  Deferred tax assets and liabilities are recognized for the expected future tax consequences of temporary differences between the tax and financial statement basis of assets and liabilities.  Deferred taxes are based on tax laws currently enacted with tax rates expected to be in effect when the taxes are actually paid or recovered.

 

The Company's practice is to recognize interest related to income tax matters in interest income / expense and to recognize penalties in selling, general and administrative expenses.  The Company did not have any accrued interest or penalties included in its consolidated balance sheets at May 31, 2023 and 2022.  The Company recorded no interest expense or penalties in its consolidated statements of income during the years ended May 31, 2023 and 2022.

 

The Company believes it is no longer subject to examination by federal and state taxing authorities for years prior to May 31, 2020.

 

Sales Taxes:

 

Certain jurisdictions impose a sales tax on Company sales to nonexempt customers.  The Company collects these taxes from customers and remits the entire amount as required by the applicable law.  The Company excludes from revenues and expenses the tax collected and remitted.

 

Stock-Based Compensation:

 

The Company measures compensation cost arising from the grant of share-based payments to employees at fair value and recognizes such cost in income over the period during which the employee is required to provide service in exchange for the award. The stock-based compensation expense for the years ended May 31, 2023 and 2022 was $417,253 and $201,278.

 


35


 

New Accounting Standards:

 

Any recently issued Accounting Standards Codification (ASC) guidance has either been implemented or is not significant to the Company.

 

Reclassifications:

 

The 2022 financial statements have been reclassified to conform with the presentation adopted for 2023.

 

2.  Accounts and Other Receivables:

 

2023

 

2022

Customers

$5,558,990 

 

$4,292,300 

Customers – retention

23,980 

 

190,492 

5,582,970 

 

4,482,792 

Less allowance for doubtful accounts

29,466 

 

16,106 

$5,553,504 

 

$4,466,686 

 

Retention receivable from customers represents amounts invoiced to customers where payments have been partially withheld pending completion of the project.  All amounts are expected to be collected within the next fiscal year.

 

3.  Inventory:

 

2023

 

2022

Raw materials

$673,453 

 

$488,393 

Work-in-process

5,005,416 

 

5,166,271 

Finished goods

330,435 

 

300,271 

6,009,304 

 

5,954,935 

Less allowance for obsolescence

68,000 

 

100,000 

$5,941,304 

 

$5,854,935 

 

4.  Costs and Estimated Earnings on Uncompleted Contracts:

 

2023

 

2022

Costs incurred on uncompleted contracts

$ 5,349,111

 

$ 4,268,608

Estimated earnings

4,850,889

 

3,211,392

10,200,000

 

7,480,000

Less billings to date

8,068,288

 

5,266,289

$ 2,131,712

 

$ 2,213,711

 

Amounts are included in the accompanying balance sheets under the following captions:

 

2023

 

2022

Costs and estimated earnings in excess of billings

$ 4,124,182

 

$ 3,336,474

Billings in excess of costs and estimated earnings

1,992,470

 

1,122,763

$ 2,131,712

 

$ 2,213,711


36


 

The following summarizes the status of Projects in progress as of May 31, 2023 and 2022:

 

2023

2022

Number of Projects in progress

22

19

Aggregate percent complete

33%

47%

Aggregate amount remaining

$18,061,484

$7,627,234

Percentage of total value invoiced to customer

29%

35%

 

The Company expects to recognize the majority of remaining revenue on all open projects during the May 31, 2024 fiscal year.

 

Revenue recognized during the years ended May 31, 2023 and 2022 for amounts included in billings in excess of costs and estimated earnings as of the beginning of the year amounted to $1,123,000, and $1,362,000.

 

5.  Maintenance and Other Inventory:

 

2023

 

2022

Maintenance and other inventory

$ 2,236,106

 

$ 2,334,889

Less allowance for obsolescence

1,232,966

 

1,227,580

$ 1,003,140

 

$ 1,107,309

 

Maintenance and other inventory represent stock that is estimated to have a product life-cycle in excess of twelve-months.  This stock represents certain items the Company is required to maintain for service of products sold, and items that are generally subject to spontaneous ordering.  This inventory is particularly sensitive to technical obsolescence in the near term due to its use in industries characterized by the continuous introduction of new product lines, rapid technological advances and product obsolescence.  Therefore, management of the Company has recorded an allowance for potential inventory obsolescence.  $322,000 and $772,000 of inventory was disposed of during the years ended May 31, 2023 and 2022.  The provision for potential inventory obsolescence was $295,000 and zero for the years ended May 31, 2023 and 2022.  The Company continues to rework slow-moving inventory, where applicable, to convert it to product to be used on customer orders.

 

6.  Property and Equipment:

 

2023

 

2022

Land

$195,220 

 

$195,220 

Buildings and improvements

10,033,399 

 

9,821,812 

Machinery and equipment

15,278,928 

 

12,824,696 

Office furniture and equipment

2,840,980 

 

2,744,400 

Autos and trucks

24,818 

 

24,818 

Land improvements

483,929 

 

483,929 

28,857,274 

 

26,094,875 

Less accumulated depreciation

17,135,490 

 

16,240,116 

$11,721,784 

 

$9,854,759 

 

Depreciation expense was $1,472,455 and $1,347,442 for the years ended May 31, 2023 and 2022.

 

The Company has commitments to make capital expenditures of approximately $107,000 as of May 31, 2023.


37


 

7.  Short-Term Borrowings:

 

The Company has available a $10,000,000 bank demand line of credit from a bank, with interest payable at the Company's option of 30, 60 or 90 day LIBOR rate plus 2.25%. Interest payable will change from LIBOR rate plus 2.25% to SOFR rate plus 2.365% effective July 1, 2023. The line is secured by a negative pledge of the Company's real and personal property.  This line of credit is subject to the usual terms and conditions applied by the bank and subject to renewal annually.

 

There is no amount outstanding under the line of credit at May 31, 2023 or May 31, 2022.  

 

The Company uses a cash management facility under which the bank draws against the available line of credit to cover checks presented for payment on a daily basis.  Outstanding checks under this arrangement totaled $13,873 and $193,478 as of May 31, 2023 and 2022.  These amounts are included in accounts payable.

 

8.  Accrued Expenses:

 

2023

 

2022

Customer deposits

$367,902 

 

$1,347,709 

Personnel costs

3,023,501 

 

1,587,271 

Other

686,919 

 

479,334 

$4,078,322 

 

$3,414,314 

 

9.  Sales:

 

The Company manufactures and sells a single group of very similar products that have many different applications for customers.  These similar products are included in one of eight categories; namely, Seismic Dampers, Fluidicshoks®, Crane and Industrial Buffers, Self-Adjusting Shock Absorbers, Liquid Die Springs, Vibration Dampers, Machined Springs and Custom Actuators.  Management does not track or otherwise account for sales broken down by these categories.  Sales of the Company's products are made to three general groups of customers: industrial, structural and aerospace / defense.  A breakdown of sales to these three general groups of customers is as follows:  

 

2023

 

2022

Structural

$ 20,642,326

 

$ 16,267,162

Aerospace / Defense

15,568,695

 

12,440,687

Industrial

3,988,333

 

2,158,733

$ 40,199,354

 

$ 30,866,582

 

Sales to a single customer approximated 15% of net sales for 2022.

 

10.  Income Taxes:

 

2023

 

2022

 

Current tax provision:

 

 

 

 

Federal

$ 1,710,000

 

$ 200,100

 

State

2,000

 

1,400

 

1,712,000

 

201,500

 

Deferred tax provision (benefit):

 

 

 

 

Federal

(494,000)

 

115,500

 

State

-

 

-

 

(494,000)

 

115,500

 

$ 1,218,000

 

$ 317,000

 


38


 

A reconciliation of provision for income taxes at the statutory rate to income tax provision at the Company's effective rate is as follows:

 

2023

 

2022

 

Computed tax provision at the expected statutory rate

$1,576,100   

 

$536,800   

 

State income tax - net of Federal tax benefit

(1,600 

 

1,100   

 

Tax effect of permanent differences:

 

 

 

 

Research tax credits

(283,600 

 

(275,400 

 

Foreign-derived intangible income deduction

(66,900 

 

(12,200 

 

Other permanent differences

900   

 

3,100   

 

Other

(6,900 

 

63,600   

 

$1,218,000   

 

$317,000   

 

Effective income tax rate

16.2% 

 

12.4% 

 

 

Significant components of the Company's deferred tax assets and liabilities consist of the following:

 

2023

 

2022

 

Deferred tax assets:

 

 

 

 

Allowance for doubtful receivables

$6,200  

 

$3,400  

 

Tax inventory adjustment

84,300  

 

92,200  

 

Allowance for obsolete inventory

273,200  

 

278,800  

 

Accrued vacation

136,600  

 

84,300  

 

Accrued commissions

9,800  

 

7,000  

 

Warranty reserve

62,700  

 

48,800  

 

R&D tax credit

-  

 

84,000  

 

R&D capitalization

678,500  

 

-  

 

Stock options issued for services

331,300  

 

277,600  

 

1,582,600  

 

876,100  

 

Deferred tax liabilities:

 

 

 

 

Excess tax depreciation

(1,013,985) 

 

(801,485) 

 

Net deferred tax assets

$568,615  

 

$74,615  

 

 

Realization of the deferred tax assets is dependent on generating sufficient taxable income at the time temporary differences become deductible.  The Company provides a valuation allowance to the extent that deferred tax assets may not be realized.  A valuation allowance has not been recorded against the deferred tax assets since management believes it is more likely than not that the deferred tax assets are recoverable.  The Company considers future taxable income and potential tax planning strategies in assessing the need for a potential valuation allowance.  The amount of the deferred tax assets considered realizable however, could be reduced in the near term if estimates of future taxable income are reduced.  The Company will need to generate approximately $7.5 million in taxable income in future years in order to realize the deferred tax assets recorded as of May 31, 2023 of $1,582,600.

 

The Company and its subsidiary file consolidated Federal and State income tax returns.  As of May 31, 2023, the Company had State investment tax credit carryforwards of approximately $424,000 expiring through May 2028.


39


 

11.  Earnings Per Common Share:

 

Basic earnings per common share is computed by dividing income available to common stockholders by the weighted-average common shares outstanding for the period.  Diluted earnings per common share reflects the weighted-average common shares outstanding and dilutive potential common shares, such as stock options.

 

A reconciliation of weighted-average common shares outstanding to weighted-average common shares outstanding assuming dilution is as follows:

 

2023

 

2022

Average common shares outstanding

3,506,474

 

3,497,345

Common shares issuable under stock option plans

45,020

 

2,208

Average common shares outstanding assuming dilution

3,551,494

 

3,499,553

 

12.  Related Party Transactions:

 

The Company had no material related party transactions for the years ended May 31, 2023 and 2022.

 

13.  Employee Stock Purchase Plan:

 

In March 2004, the Company reserved 295,000 shares of common stock for issuance pursuant to a non-qualified employee stock purchase plan.  Participation in the employee stock purchase plan is voluntary for all eligible employees of the Company.  Purchase of common shares can be made by employee contributions through payroll deductions.  At the end of each calendar quarter, the employee contributions will be applied to the purchase of common shares using a share value equal to the mean between the closing bid and ask prices of the stock on that date.  These shares are distributed to the employees at the end of each calendar quarter or upon withdrawal from the plan.  During the years ended May 31, 2023 and 2022, 922 ($8.65 to $19.96 price per share) and 1,496 ($9.90 to $11.83 price per share) common shares, respectively, were issued to employees. As of May 31, 2023, 216,365 shares were reserved for further issue.

 

14.  Stock Option Plans:

 

In 2022, the Company adopted a stock option plan which permits the Company to grant both incentive stock options and non-qualified stock options.  The incentive stock options qualify for preferential treatment under the Internal Revenue Code.  Under this plan, 260,000 shares of common stock have been reserved for grant to key employees and directors of the Company and 59,000 shares have been granted as of May 31, 2023. Under the plan, the option price may not be less than the fair market value of the stock at the time the options are granted. Options vest immediately and expire ten years from the date of grant.

 

Using the Black-Scholes option pricing model, the weighted average estimated fair value of each option granted under the plan was $4.91 during 2023 and $3.02 during 2022.  The pricing model uses the assumptions noted in the following table.  Expected volatility is based on the historical volatility of the Company's stock.  The risk-free interest rate for periods within the contractual life of the option is based on the U.S. Treasury yield curve in effect at the time of the grant.  The expected life of options granted is derived from previous history of stock exercises from the grant date and represents the period of time that options granted are expected to be outstanding.  The Company uses historical data to estimate option exercise and employee termination assumptions under the valuation model.  The Company has never paid dividends on its common stock and does not anticipate doing so in the foreseeable future.

 

2023

 

2022

Risk-free interest rate

2.45%

 

2.59%

Expected life in years

4.2

 

4.0

Expected volatility

33%

 

31%

Expected dividend yield

0%

 

0%

 


40


 

The following is a summary of stock option activity:

 

Shares

 

Weighted Average Exercise Price

Intrinsic Value

Outstanding - May 31, 2021

267,750

 

$11.60 

$271,426 

    Options granted

66,750

 

$10.69 

 

    Less: options expired

51,500

 

- 

 

Outstanding - May 31, 2022

283,000

 

$11.43 

$28,248 

    Options granted

85,000

 

$15.75 

 

    Less: options exercised

30,500

 

$9.57 

 

    Less: options expired

4,500

 

- 

 

Outstanding - May 31, 2023

333,000

 

$12.70 

$2,016,961 

 

We calculated intrinsic value for those options that had an exercise price lower than the market price of our common shares as of the balance sheet dates.  The aggregate intrinsic value of outstanding options as of the end of each fiscal year is calculated as the difference between the exercise price of the underlying options and the market price of our common shares for the options that were in-the-money at that date (279,500 at May 31, 2023 and 29,250 at May 31, 2022.)  The Company's closing stock price was $18.55 and $9.30 as of May 31, 2023 and 2022.  As of May 31, 2023, there are 201,000 options available for future grants under the 2022 stock option plan.  $291,829 was received from the exercise of share options during the fiscal year ended May 31, 2023.  No options were exercised in the fiscal year ended May 31, 2022.

 

The following table summarizes information about stock options outstanding at May 31, 2023:

 

Outstanding and Exercisable

Range of Exercise Prices

Number of Options

Weighted Average Remaining Years of Contractual Life

Weighted Average Exercise Price

$  8.01-$  9.00

13,000

0.9

$  8.87

$  9.01-$10.00

55,000

8.0

$  9.67

$10.01-$11.00

23,500

6.2

$10.16

$11.01-$12.00

140,000

7.5

$11.66

$12.01-$13.00

28,000

2.8

$12.39

$13.01-$14.00

10,000

3.9

$13.80

$16.01-$17.00

10,000

2.9

$16.40

$19.01-$20.00

53,500

8.6

$19.82

$  8.01-$20.00

333,000

6.8

$12.70

 

 

 

 

 

The following table summarizes information about stock options outstanding at May 31, 2022:

 

Outstanding and Exercisable

Range of Exercise Prices

Number of Options

Weighted Average Remaining Years of Contractual Life

Weighted Average Exercise Price

$  7.01-$  8.00

10,000

0.9

$  7.74

$  8.01-$  9.00

19,250

1.5

$  8.64

$  9.01-$10.00

55,000

9.0

$  9.67

$10.01-$11.00

26,500

7.3

$10.14

$11.01-$12.00

112,250

7.8

$11.72

$12.01-$13.00

28,750

3.9

$12.39

$13.01-$14.00

10,000

4.9

$13.80

$16.01-$17.00

10,000

3.9

$16.40

$19.01-$20.00

11,250

4.2

$19.26

$  7.01-$20.00

283,000

6.5

$11.43


41


 

15.  Preferred Stock:

 

The Company has 2,000,000 authorized but unissued shares of preferred stock which may be issued in series.  The shares of each series shall have such rights, preferences, and limitations as shall be fixed by the Board of Directors.

 

16.  Treasury Stock:

 

Treasury shares are 567,751 at May 31, 2023 and 558,834 at May 31, 2022.

 

17.  Retirement Plan:

 

The Company maintains a retirement plan for essentially all employees pursuant to Section 401(k) of the Internal Revenue Code.  The Company matches a percentage of employee voluntary salary deferrals subject to limitations.  The Company may also make discretionary contributions as determined annually by the Company's Board of Directors.  The amount expensed under the plan was $371,881 and $313,269 for the years ended May 31, 2023 and 2022.

 

18.  Fair Value of Financial Instruments:

 

The carrying amounts of cash and cash equivalents, accounts receivable, accounts payable, and accrued liabilities approximate fair value because of the short maturity of these instruments.

 

The fair values of short-term investments were determined as described in Note 1.

 

19.  Cash Flows Information:

 

2023

 

2022

 

 

 

 

 

 

 Interest paid

None

 

None

 

 

 

 

 

 

 Income taxes paid

$1,705,000

 

None

 

 

20.  Risks and Uncertainties:

 

On January 31, 2020, the United States Secretary of Health and Human Services (HHS) declared a public health emergency related to the global spread of coronavirus COVID-19, and a pandemic was declared by the World Health Organization in February 2020. Efforts to fight the widespread disease included limiting or closing many businesses and resulted in a severe disruption of operations for many organizations.  Financial markets also fluctuated significantly during this time. The extent of the impact of COVID-19 on the Company’s operational and financial performance was significant in fiscal 2021. The use of vaccinations world-wide have apparently slowed spread of the disease, the extent of the impact of COVID-19 on the Company’s operational and financial performance in fiscal 2022 and 2023 was minimal.  

 

21.  Legal Proceedings:

 

Taylor Devices Inc. (the “Company”) has been named as a Third-Party Defendant in an action captioned Board of Managers of the 432 Park Condominium, et al. v. 56th and Park (NY) Owner LLC, et al.  Index No. 655617/2021 (S.Ct. N.Y. Co.) (the “Action”).

The Action was filed on or about September 23, 2021.  In an amended Complaint dated April 29, 2022, the Board of Managers of 432 Park Condominium (the “Owner”), a condominium association for a high-rise condominium building (the “Building”) located at 432 Park Avenue in New York, N.Y., has asserted a claim against the condominium sponsor, 56th and Park (NY) Owner LLC (the “Sponsor”).  The Owner alleges “over 1500 identified construction and design defects to the common elements of” residential and commercial units at the Building, based upon a report generated by a consultant (SBI Consultants Inc.) retained by the Owner.  The alleged defects include, but are not limited to, allegedly-excessive noise and vibration, water leaks and elevator failures. The SBI report allegedly identified defects in the Building’s: (a) structural/envelope system; (b) mechanical/electrical & plumbing systems; (c) architectural/interiors; and (d) elevators/vertical systems.

On March 14, 2022, the Sponsor filed a Third-Party Complaint against LendLease Construction (US) LMB (“LendLease”), as well as the architects of record on the project (SLCE Architects), the lead structural engineer (Cantor ESA) and the head mechanical


42


engineer (Flack + Kurtz) involved in the Building’s design. As to LendLease, the Third-Party Complaint alleges breach of a Construction Management Contract between LendLease and Sponsor and negligence arising from purported failure to perform under the contract.

On March 22, 2023, LendLease initiated a Third-Party action against various entities with whom LendLease had contracted for the supply of materials and services in connection with construction of the Building.  The Third-Party defendants include the suppliers of products and services relating to the automatic sprinkler system, structural steel, mechanical systems, electrical systems, sheet metal, component assembly, roofing, the building exterior, plumbing, concrete, curtain walls, custom machine work and elevators.  The Third-Party Complaint also names the Company as a Third-Party Defendant, based upon a contract between the Company and LendLease to supply 16 Viscous Damping Devices (“VDDs”) that were incorporated into a Tuned Mass Damper (“TMD”) system designed by another company to limit accelerations of the Building during wind events.  On July 5, 2023, the Company timely filed and served an Answer to LendLease’s Third-Party Complaint.

Additional third-party actions have been filed by parties named as defendants in the Third-Party Complaint.  Presently, seven third-party actions are pending.

The Progress of the Matter to Date.  The matter, and all of the related third-party actions, are pending in the Commercial Division of the Supreme Court, New York County before Justice Melissa A. Crane.  Justice Crane has appointed Hon. Andrew J. Peck, a retired justice of the Supreme Court, as Special Master to hear and determine disputes regarding all or any part of any discovery issue.  

 

On June 13, 2023, Special Master Peck issued an Amended Final Scheduling Order.  Among the directives in the Amended Final Scheduling Order is a requirement that:  (a) recently-added third-party defendants (including the Company) respond to discovery demands by August 30, 2023 and complete document productions by October 11, 2023; (b) all parties complete fact depositions and fact discovery by March 15, 2024; and (c) all parties complete expert discovery by August 28, 2024.

 

Management Response. Management of the Company vigorously disputes the allegations in the Third-Party Complaint.

 

Based upon the information currently available, there is a credible argument that: (a) the Company met the contractual requirements of the 2013 Purchase Order for Viscous Damping Devices (VDDs) that were incorporated into the Tuned Mass Damper (TMD) system; and (b) the VDDs that were delivered were successfully tested to the applicable specification and met the technical requirements of that specification.

 

The Owner has not itemized the damages it seeks to recover from Sponsor, but the Amended Complaint contains an ad damnum clause demanding $125 million plus punitive damages.  Sponsor has not itemized the damages it seeks to recover from LendLease or the other third-party defendants, but the claim for relief in the Third-Party Complaint includes a demand for full indemnification of any amounts the Sponsor is required to pay plaintiff.  In turn, LendLease does not itemize the damages it seeks to recover from the several Third-Party defendants (including the Company), but its demand for relief in the Third-Party Complaint includes a demand for full indemnification of any amounts LendLease is required to pay to Sponsor.  The Company anticipates that the pending actions would provide opportunities for Sponsor, LendLease and the Company to allocate some or all of any liability to one or more co-defendants or third parties.  In view of the limited discovery to date, it is not practical to quantify likely damages to the Company in the event of an unfavorable outcome on liability.


43

 

EX-31.1 2 td_ex31z1.htm CERTIFICATION Certification

Exhibit 31(i)

 

 

CERTIFICATION OF CHIEF EXECUTIVE OFFICER

PURSUANT TO RULE 13a - 14(a) OF THE SECURITIES EXCHANGE ACT OF 1934,

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

 

I, Timothy J. Sopko, certify that:

 

1. I have reviewed this annual report on Form 10-K of Taylor Devices, Inc.;

 

2. Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;

 

3. Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;

 

4. The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:

 

(a) Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;

 

(b) Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;

 

(c) Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and

 

(d) Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

 

5. The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of registrant’s board of directors (or persons performing the equivalent functions):

 

(a) All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and

 

(b) Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.

 

Date: August 15, 2023

/s/ Timothy J. Sopko

 

Timothy J. Sopko

Chief Executive Officer

 

EX-31.2 3 td_ex31z2.htm CERTIFICATION Certification

Exhibit 31(ii)

 

 

CERTIFICATION OF CHIEF FINANCIAL OFFICER

PURSUANT TO RULE 13a - 14(a) OF THE SECURITIES EXCHANGE ACT OF 1934,

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

 

I, Paul Heary, certify that:

 

1. I have reviewed this annual report on Form 10-K of Taylor Devices, Inc.;

 

2. Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;

 

3. Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;

 

4. The registrant's other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:

 

(a) Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;

 

(b) Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;

 

(c) Evaluated the effectiveness of the registrant's disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and

 

(d) Disclosed in this report any change in the registrant's internal control over financial reporting that occurred during the registrant's most recent fiscal quarter (the registrant's fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant's internal control over financial reporting; and

 

5. The registrant's other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of registrant's board of directors (or persons performing the equivalent functions):

 

(a) All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information; and

 

(b) Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.

 

Date: August 15, 2023

/s/ Paul Heary

 

Paul Heary

Chief Financial Officer

 

EX-32.1 4 td_ex32z1.htm CERTIFICATION Certification

 

Exhibit 32(i)

 

 

 

 

 

CERTIFICATION OF CHIEF EXECUTIVE OFFICER

PURSUANT TO 18 U.S.C. SECTION 1350, AS ADOPTED PURSUANT TO SECTION 906

OF THE SARBANES-OXLEY ACT OF 2002

 

In connect with the quarterly report of Taylor Devices, Inc. ("the Company") on Form 10-K for the fiscal year ended May 31, 2023 to be filed with Securities and Exchange Commission on or about the date hereof (the
"Report"), I, Timothy J. Sopko, Chief Executive Officer of the Company, certify, pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, 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 as of the dates and for the periods covered by the Report.

 

It is not intended that this statement be deemed to be filed for purposes of the Securities Exchange Act of 1934.

 

 

 

Date: August 15, 2023

By:

/s/ Timothy J. Sopko

 

 

Timothy J. Sopko

Chief Executive Officer

 

 

EX-32.2 5 td_ex32z2.htm CERTIFICATION Certification

 

Exhibit 32(ii)

 

 

 

 

 

CERTIFICATION OF CHIEF FINANCIAL OFFICER

PURSUANT TO 18 U.S.C. SECTION 1350, AS ADOPTED PURSUANT TO SECTION 906

OF THE SARBANES-OXLEY ACT OF 2002

 

In connect with the quarterly report of Taylor Devices, Inc. (the "Company") on Form 10-K for the fiscal year ended May 31, 2023 to be filed with Securities and Exchange Commission on or about the date hereof (the "Report"), I, Paul Heary, Chief Financial Officer of the Company, certify, pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, 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 as of the dates and for the periods covered by the Report.

 

It is not intended that this statement be deemed to be filed for purposes of the Securities Exchange Act of 1934.

 

 

 

Date: August 15, 2023

By:

/s/ Paul Heary

 

 

Paul Heary

Chief Financial Officer

 

 

EX-101.CAL 6 tayd-20230531_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 7 tayd-20230531_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 8 tayd-20230531_lab.xml XBRL TAXONOMY EXTENSION LABELS LINKBASE DOCUMENT Loss Contingency, Inestimable Loss Loss Contingency, Lawsuit Filing Date Interest paid Number of Options Tax inventory adjustment Represents the monetary amount of Tax inventory adjustment, as of the indicated date. Aggregate percent complete Represents the percentage value of Aggregate percent complete, as of the indicated date. Schedule of Effective Income Tax Rate Reconciliation Policies Acquisition of property and equipment Acquisition of property and equipment Basic earnings per common share (Note 11) Gross profit Gross profit Common Stock, Shares, Outstanding Assets {1} Assets Entity Small Business $19.01-$20.00 Represents the $19.01-$20.00, during the indicated time period. Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Expirations in Period, Weighted Average Exercise Price Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number, Beginning Balance Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number, Beginning Balance Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number, Ending Balance Shares reserved for further issue Represents the Shares reserved for further issue (number of shares), as of the indicated date. Line of Credit Facility, Average Outstanding Amount Building Improvements Land {1} Land Provision for potential inventory obsolescence Represents the monetary amount of Provision for potential inventory obsolescence, during the indicated time period. Costs incurred on uncompleted contracts, Estimated earnings Represents the monetary amount of Costs incurred on uncompleted contracts, Estimated earnings, during the indicated time period. Schedule of Components of Income Tax Expense (Benefit) Schedule of Maintenance and Other Inventory Represents the textual narrative disclosure of Schedule of Maintenance and Other Inventory, during the indicated time period. Schedule of Inventory 3. Inventory: Stock options issued for services {1} Stock options issued for services Operating activities Statement [Line Items] Income before provision for income taxes Income before provision for income taxes Research and development costs Consolidated Statements of Income Treasury stock - 567,751 and 558,834 shares at cost Treasury stock - 567,751 and 558,834 shares at cost Paid-in capital Maintenance and other inventory, net (Note 5) Short-term investments Entity Public Float Phone Fax Number Description Document Transition Report Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Expirations in Period Fair Value by Liability Class Long-Lived Tangible Asset Work-in-process Represents the Work-in-process, during the indicated time period. Tables/Schedules Income Taxes: 19. Cash Flows Information: 12. Related Party Transactions: Notes Depreciation {1} Depreciation Issuance of shares for employee stock option plan Statement Other income (expense) Stockholders' Equity Assets Assets Cash value of life insurance, net ICFR Auditor Attestation Flag Loss Contingency, Name of Defendant $10.01-$11.00 Represents the $10.01-$11.00, during the indicated time period. Average common shares outstanding assuming dilution Average common shares outstanding assuming dilution Represents the Average common shares outstanding assuming dilution (number of shares), during the indicated time period. Net deferred tax assets Net deferred tax assets Warranty reserve Represents the monetary amount of Warranty reserve, as of the indicated date. Long-Term Line of Credit Maintenance and other inventory, Gross Represents the monetary amount of Maintenance and other inventory, Gross, as of the indicated date. Less allowance for doubtful accounts Schedule of Cash Flow, Supplemental Disclosures Schedule of Amounts are included in the accompanying balance sheets Represents the textual narrative disclosure of Schedule of Amounts are included in the accompanying balance sheets, during the indicated time period. Acquisition of treasury stock Acquisition of treasury stock Prepaid expenses {1} Prepaid expenses (Gain) loss on disposal of property and equipment (Gain) loss on disposal of property and equipment City Area Code Entity Address, State or Province Loss Contingency, Name of Plaintiff Expected dividend yield Percentage of total value invoiced to customer Represents the percentage value of Percentage of total value invoiced to customer, as of the indicated date. Costs incurred on uncompleted contracts Represents the monetary amount of Costs incurred on uncompleted contracts, during the indicated time period. Schedule of Costs incurred on uncompleted contracts and Estimated earnings Cash and Cash Equivalents: Stock options issued for services Costs and estimated earnings in excess of billings (Note 4) Prepaid expenses Auditor Firm ID Document Financial Statement Error Correction Entity Voluntary Filers Entity Address, City or Town Entity Registrant Name Loss Contingency, Parties Jointly and Severally Liable in Litigation Income taxes paid Weighted Average Remaining Years of Contractual Life $11.01-$12.00 Represents the $11.01-$12.00, during the indicated time period. Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price, Beginning Balance Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price, Beginning Balance Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price, Ending Balance Deferred tax liabilities R&D capitalization Represents the monetary amount of R&D capitalization, as of the indicated date. Less allowance for obsolescence Principles of Consolidation: 8. Accrued Expenses: 5. Maintenance and Other Inventory: 1. Summary of Significant Accounting Policies: Proceeds from issuance of common stock Proceeds from disposal of property and equipment Accrued expenses Accounts and other receivables Accounts and other receivables Provision for inventory obsolescence Provision for inventory obsolescence Additional Paid-in Capital Sales, net (Note 9) Total stockholders' equity Total stockholders' equity Equity, Attributable to Parent, Beginning Balance Equity, Attributable to Parent, Ending Balance Accrued expenses (Note 8) Property and equipment, net (Note 6) Property and equipment, net (Note 6) $ 8.01-$20.00 Represents the $ 8.01-$20.00, during the indicated time period. Common shares issuable under stock option plans Represents the Common shares issuable under stock option plans (number of shares), during the indicated time period. Computed tax provision at the expected statutory rate Federal Liability Class [Axis] Commitments to make capital expenditures Costs and estimated earnings in excess of billings {1} Costs and estimated earnings in excess of billings Represents the monetary amount of Costs and estimated earnings in excess of billings, during the indicated time period. Schedule of Earnings Per Common Share Disaggregation of Sales Revenue Stock-Based Compensation: Common Stock Total current liabilities Total current liabilities Accounts payable Entity File Number Document Annual Report Weighted Average Exercise Price $13.01-$14.00 Represents the $13.01-$14.00, during the indicated time period. Deferred Tax Assets, Gross Deferred Tax Assets, Gross R&D tax credit Represents the monetary amount of R&D tax credit, as of the indicated date. State {1} State Vehicles Maintenance and other inventory, Net Maintenance and other inventory, Net Represents the monetary amount of Maintenance and other inventory, Net, as of the indicated date. Inventory, Net Inventory, Net Finished goods Represents the Finished goods, during the indicated time period. Customer [Axis] Short-term Investments: 10. Income Taxes: Treasury Stock, Common Consolidated Statements of Stockholders' Equity Diluted earnings per common share (Note 11) Accounts and other receivables, net (Note 2) Accounts and other receivables, net (Note 2) Document Fiscal Period Focus Entity Common Stock, Shares Outstanding Entity Tax Identification Number Loss Contingency, Management's Assessment and Process $16.01-$17.00 Represents the $16.01-$17.00, during the indicated time period. Allowance for obsolete inventory Represents the monetary amount of Allowance for obsolete inventory, as of the indicated date. Allowance for doubtful receivables Represents the monetary amount of Allowance for doubtful receivables, as of the indicated date. Tax effect of permanent differences Federal {1} Federal Structural Represents the Structural, during the indicated time period. Land Improvements {1} Land Improvements Long-Lived Tangible Asset [Axis] Inventory disposed of Represents the monetary amount of Inventory disposed of, during the indicated time period. Inventory, Gross Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable Schedule of Stock Options Activity Reclassifications: 21. Legal Proceedings: Costs and estimated earnings in excess of billings Changes in other current assets and liabilities Current assets Amendment Flag Entity Well-known Seasoned Issuer Local Phone Number Loss Contingency, Allegations Pension and Other Postretirement Benefits Cost (Reversal of Cost) $12.01-$13.00 Represents the $12.01-$13.00, during the indicated time period. Exercise Price Range [Axis] State Industrial Represents the Industrial, during the indicated time period. Segments [Axis] Outstanding checks Represents the monetary amount of Outstanding checks, as of the indicated date. Costs incurred on uncompleted contracts, Gross Costs incurred on uncompleted contracts, Gross Represents the monetary amount of Costs incurred on uncompleted contracts, Gross, during the indicated time period. Inventory {1} Inventory 11. Earnings Per Common Share: 9. Sales: Accounts payable {1} Accounts payable Interest, net Common Stock, Shares Authorized Total current assets Total current assets Entity Interactive Data Current Entity Current Reporting Status $ 7.01-$20.00 Represents the $ 7.01-$20.00, during the indicated time period. Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross Expected volatility Accrued vacation Represents the monetary amount of Accrued vacation, as of the indicated date. Other Adjustments Represents the monetary amount of Other Adjustments, during the indicated time period. Aggregate amount remaining Represents the monetary amount of Aggregate amount remaining, as of the indicated date. Number of Projects in progress Represents the Number of Projects in progress, as of the indicated date. Raw Materials Schedule of Fair Value Assumptions Accounts and Other Receivables: 4. Costs and Estimated Earnings on Uncompleted Contracts: Net change in cash and cash equivalents Net change in cash and cash equivalents Retained Earnings Net income Net income Cost of goods sold Inventory (Note 3) Consolidated Balance Sheets Consolidated Balance Sheets - Parenthetical Auditor Location Document Type $ 7.01-$ 8.00 Represents the $ 7.01-$ 8.00, during the indicated time period. $ 9.01-$10.00 Represents the $ 9.01-$10.00, during the indicated time period. Exercise Price Range Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price Common shares issued to employees Represents the Common shares issued to employees (number of shares), during the indicated time period. Deferred tax provision (benefit) Current tax provision Costs incurred on uncompleted contracts, Billings to date Represents the monetary amount of Costs incurred on uncompleted contracts, Billings to date, during the indicated time period. Customers - retention Represents the Customers - retention, during the indicated time period. Shipping and Handling Costs: 13. Employee Stock Purchase Plan: Net financing activities Net financing activities Prepaid income taxes {1} Prepaid income taxes Equity Component Total other income, net Total other income, net Common Stock, Par or Stated Value Per Share Liabilities and Equity Liabilities and Equity Common Stock, Value Cash and cash equivalents Entity Address, Address Description Document Period End Date Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value Average common shares outstanding Represents the Average common shares outstanding (number of shares), during the indicated time period. Stock options issued for services {2} Stock options issued for services Represents the monetary amount of Stock options issued for services, as of the indicated date. Effective income tax rate Foreign-derived intangible income deduction Foreign-derived intangible income deduction State income tax - net of Federal tax benefit Current Federal, State and Local, Tax Expense (Benefit) Current Federal, State and Local, Tax Expense (Benefit) Other Represents the Other, during the indicated time period. Revenues Recognized For amounts included in billings in excess of costs and estimated earnings Represents the monetary amount of Revenues Recognized For amounts included in billings in excess of costs and estimated earnings, during the indicated time period. Accounts Receivable, before Allowance for Credit Loss, Current Revenue Recognition: Use of Estimates: Nature of Operations: Cash and cash equivalents - beginning Cash and cash equivalents - beginning Cash and cash equivalents - ending Increase in short-term investments Increase in short-term investments Investing activities Common Stock, Shares, Issued Auditor Name Entity Shell Company Expected life in years Segments Customer deposits Represents the Customer deposits, during the indicated time period. Furniture and Fixtures Costs incurred on uncompleted contracts, Net Costs incurred on uncompleted contracts, Net Represents the monetary amount of Costs incurred on uncompleted contracts, Net, during the indicated time period. Schedule of Property, Plant and Equipment Schdule of Status of Projects in progress Represents the textual narrative disclosure of Schdule of Status of Projects in progress, during the indicated time period. Subsequent Events: 18. Fair Value of Financial Instruments: 14. Stock Option Plans: 6. Property and Equipment: 2. Accounts and Other Receivables: Financing activities Net operating activities Net operating activities Billings in excess of costs and estimated earnings Miscellaneous Treasury Stock, Common, Shares Document Fiscal Year Focus Entity Emerging Growth Company Fiscal Year End Deferred tax assets Aerospace / Defense Represents the Aerospace / Defense, during the indicated time period. Personnel costs Represents the Personnel costs, during the indicated time period. Property, Plant and Equipment, Gross Inventory [Axis] Customer Schedule of Accrued Expenses New Accounting Standards: Cash Value of Life Insurance: 17. Retirement Plan: 16. Treasury Stock: 15. Preferred Stock: 7. Short-Term Borrowings: Adjustments to reconcile net income to net cash flows from operating activities Issuance of shares for employee stock purchase plan Equity Components [Axis] Prepaid income taxes Registrant CIK Details $ 8.01-$ 9.00 Represents the $ 8.01-$ 9.00, during the indicated time period. Accrued commissions Represents the monetary amount of Accrued commissions, as of the indicated date. Other permanent differences Less accumulated depreciation Machinery and Equipment Maintenance and other inventory, allowance for obsolescence Represents the monetary amount of Maintenance and other inventory, allowance for obsolescence, as of the indicated date. Customers Represents the Customers, during the indicated time period. Schedule of Deferred Tax Assets and Liabilities Accounts and Other Receivables Property and Equipment: Inventory: 20. Risks and Uncertainties: Consolidated Statements of Cash Flows Provision for income taxes (Note 10) Provision for income taxes (Note 10) Selling, general and administrative expenses Billings in excess of costs and estimated earnings (Note 4) Current liabilities Entity Filer Category Entity Address, Postal Zip Code Entity Address, Address Line One Entity Incorporation, State or Country Code Preferred stock authorized but unissued Represents the Preferred stock authorized but unissued (number of shares), during the indicated time period. Risk-free interest rate Excess tax depreciation Excess tax depreciation Represents the monetary amount of Excess tax depreciation, as of the indicated date. Research tax credits Research tax credits Deferred Federal, State and Local, Tax Expense (Benefit) Deferred Federal, State and Local, Tax Expense (Benefit) Billings in excess of costs and estimated earnings {1} Billings in excess of costs and estimated earnings Represents the monetary amount of Billings in excess of costs and estimated earnings, during the indicated time period. Sales Taxes: Net investing activities Net investing activities Increase in cash value of life insurance Increase in cash value of life insurance Inventory Inventory Deferred income taxes Bad debt expense Bad debt expense Operating income Operating income Retained earnings Liabilities and Stockholders' Equity Deferred income taxes (Note 10) EX-101.PRE 9 tayd-20230531_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT EX-101.SCH 10 tayd-20230531.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 000210 - Disclosure - 15. Preferred Stock link:presentationLink link:definitionLink link:calculationLink 000870 - Disclosure - 19. Cash Flows Information: Schedule of Cash Flow, Supplemental Disclosures (Details) link:presentationLink link:definitionLink link:calculationLink 000770 - Disclosure - 10. Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Details) link:presentationLink link:definitionLink link:calculationLink 000250 - Disclosure - 19. Cash Flows Information link:presentationLink link:definitionLink link:calculationLink 000630 - Disclosure - 3. Inventory: Schedule of Inventory (Details) link:presentationLink link:definitionLink link:calculationLink 000420 - Disclosure - 1. Summary of Significant Accounting Policies: Stock-Based Compensation (Policies) link:presentationLink link:definitionLink link:calculationLink 000660 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schdule of Status of Projects in progress (Details) link:presentationLink link:definitionLink link:calculationLink 000070 - Disclosure - 1. Summary of Significant Accounting Policies link:presentationLink link:definitionLink link:calculationLink 000450 - Disclosure - 2. Accounts and Other Receivables: Accounts and Other Receivables (Tables) link:presentationLink link:definitionLink link:calculationLink 000390 - Disclosure - 1. Summary of Significant Accounting Policies: Shipping and Handling Costs (Policies) link:presentationLink link:definitionLink link:calculationLink 000550 - Disclosure - 10. Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Tables) link:presentationLink link:definitionLink link:calculationLink 000230 - Disclosure - 17. Retirement Plan link:presentationLink link:definitionLink link:calculationLink 000540 - Disclosure - 10. Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Tables) link:presentationLink link:definitionLink link:calculationLink 000020 - Statement - Consolidated Balance Sheets link:presentationLink link:definitionLink link:calculationLink 000200 - Disclosure - 14. Stock Option Plans link:presentationLink link:definitionLink link:calculationLink 000300 - Disclosure - 1. Summary of Significant Accounting Policies: Subsequent Events (Policies) link:presentationLink link:definitionLink link:calculationLink 000600 - Disclosure - 14. Stock Option Plans: Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable (Tables) link:presentationLink link:definitionLink link:calculationLink 000340 - Disclosure - 1. Summary of Significant Accounting Policies: Accounts and Other Receivables (Policies) link:presentationLink link:definitionLink link:calculationLink 000760 - Disclosure - 10. Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Details) link:presentationLink link:definitionLink link:calculationLink 000710 - Disclosure - 6. Property and Equipment (Details) link:presentationLink link:definitionLink link:calculationLink 000330 - Disclosure - 1. Summary of Significant Accounting Policies: Short-term Investments (Policies) link:presentationLink link:definitionLink link:calculationLink 000680 - Disclosure - 5. Maintenance and Other Inventory: Schedule of Maintenance and Other Inventory (Details) link:presentationLink link:definitionLink link:calculationLink 000260 - Disclosure - 20. Risks and Uncertainties link:presentationLink link:definitionLink link:calculationLink 000670 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts (Details) link:presentationLink link:definitionLink link:calculationLink 000510 - Disclosure - 6. Property and Equipment: Schedule of Property, Plant and Equipment (Tables) link:presentationLink link:definitionLink link:calculationLink 000720 - Disclosure - 7. Short-Term Borrowings (Details) link:presentationLink link:definitionLink link:calculationLink 000080 - Disclosure - 2. Accounts and Other Receivables link:presentationLink link:definitionLink link:calculationLink 000170 - Disclosure - 11. Earnings Per Common Share link:presentationLink link:definitionLink link:calculationLink 000750 - Disclosure - 10. Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Details) link:presentationLink link:definitionLink link:calculationLink 000460 - Disclosure - 3. Inventory: Schedule of Inventory (Tables) link:presentationLink link:definitionLink link:calculationLink 000240 - Disclosure - 18. Fair Value of Financial Instruments link:presentationLink link:definitionLink link:calculationLink 000410 - Disclosure - 1. Summary of Significant Accounting Policies: Sales Taxes (Policies) link:presentationLink link:definitionLink link:calculationLink 000810 - Disclosure - 14. Stock Option Plans: Schedule of Fair Value Assumptions (Details) link:presentationLink link:definitionLink link:calculationLink 000090 - Disclosure - 3. Inventory link:presentationLink link:definitionLink link:calculationLink 000820 - Disclosure - 14. Stock Option Plans: Schedule of Stock Options Activity (Details) link:presentationLink link:definitionLink link:calculationLink 000860 - Disclosure - 17. Retirement Plan (Details) link:presentationLink link:definitionLink link:calculationLink 000320 - Disclosure - 1. Summary of Significant Accounting Policies: Cash and Cash Equivalents (Policies) link:presentationLink link:definitionLink link:calculationLink 000780 - Disclosure - 10. Income Taxes (Details) link:presentationLink link:definitionLink link:calculationLink 000220 - Disclosure - 16. Treasury Stock link:presentationLink link:definitionLink link:calculationLink 000690 - Disclosure - 5. Maintenance and Other Inventory (Details) link:presentationLink link:definitionLink link:calculationLink 000620 - Disclosure - 2. Accounts and Other Receivables: Accounts and Other Receivables (Details) link:presentationLink link:definitionLink link:calculationLink 000290 - Disclosure - 1. Summary of Significant Accounting Policies: Principles of Consolidation (Policies) link:presentationLink link:definitionLink link:calculationLink 000840 - Disclosure - 15. Preferred Stock (Details) link:presentationLink link:definitionLink link:calculationLink 000470 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Costs incurred on uncompleted contracts and Estimated earnings (Tables) link:presentationLink link:definitionLink link:calculationLink 000110 - Disclosure - 5. Maintenance and Other Inventory link:presentationLink link:definitionLink link:calculationLink 000650 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Amounts are included in the accompanying balance sheets (Details) link:presentationLink link:definitionLink link:calculationLink 000180 - Disclosure - 12. Related Party Transactions link:presentationLink link:definitionLink link:calculationLink 000350 - Disclosure - 1. Summary of Significant Accounting Policies: Inventory (Policies) link:presentationLink link:definitionLink link:calculationLink 000500 - Disclosure - 5. Maintenance and Other Inventory: Schedule of Maintenance and Other Inventory (Tables) link:presentationLink link:definitionLink link:calculationLink 000490 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schdule of Status of Projects in progress (Tables) link:presentationLink link:definitionLink link:calculationLink 000740 - Disclosure - 9. Sales: Disaggregation of Sales Revenue (Details) link:presentationLink link:definitionLink link:calculationLink 000160 - Disclosure - 10. Income Taxes link:presentationLink link:definitionLink link:calculationLink 000400 - Disclosure - 1. Summary of Significant Accounting Policies: Income Taxes (Policies) link:presentationLink link:definitionLink link:calculationLink 000010 - Document - Document and Entity Information link:presentationLink link:definitionLink link:calculationLink 000060 - Statement - Consolidated Statements of Cash Flows link:presentationLink link:definitionLink link:calculationLink 000610 - Disclosure - 19. Cash Flows Information: Schedule of Cash Flow, Supplemental Disclosures (Tables) link:presentationLink link:definitionLink link:calculationLink 000880 - Disclosure - 21. Legal Proceedings (Details) link:presentationLink link:definitionLink link:calculationLink 000100 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts link:presentationLink link:definitionLink link:calculationLink 000700 - Disclosure - 6. Property and Equipment: Schedule of Property, Plant and Equipment (Details) link:presentationLink link:definitionLink link:calculationLink 000030 - Statement - Consolidated Balance Sheets - Parenthetical link:presentationLink link:definitionLink link:calculationLink 000730 - Disclosure - 8. Accrued Expenses: Schedule of Accrued Expenses (Details) link:presentationLink link:definitionLink link:calculationLink 000830 - Disclosure - 14. Stock Option Plans: Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable (Details) link:presentationLink link:definitionLink link:calculationLink 000270 - Disclosure - 21. Legal Proceedings link:presentationLink link:definitionLink link:calculationLink 000150 - Disclosure - 9. Sales link:presentationLink link:definitionLink link:calculationLink 000440 - Disclosure - 1. Summary of Significant Accounting Policies: Reclassifications (Policies) link:presentationLink link:definitionLink link:calculationLink 000850 - Disclosure - 16. Treasury Stock (Details) link:presentationLink link:definitionLink link:calculationLink 000560 - Disclosure - 10. Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Tables) link:presentationLink link:definitionLink link:calculationLink 000050 - Statement - Consolidated Statements of Stockholders' Equity link:presentationLink link:definitionLink link:calculationLink 000580 - Disclosure - 14. Stock Option Plans: Schedule of Fair Value Assumptions (Tables) link:presentationLink link:definitionLink link:calculationLink 000190 - Disclosure - 13. Employee Stock Purchase Plan link:presentationLink link:definitionLink link:calculationLink 000280 - Disclosure - 1. Summary of Significant Accounting Policies: Nature of Operations (Policies) link:presentationLink link:definitionLink link:calculationLink 000800 - Disclosure - 13. Employee Stock Purchase Plan (Details) link:presentationLink link:definitionLink link:calculationLink 000130 - Disclosure - 7. Short-Term Borrowings link:presentationLink link:definitionLink link:calculationLink 000640 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Costs incurred on uncompleted contracts and Estimated earnings (Details) link:presentationLink link:definitionLink link:calculationLink 000530 - Disclosure - 9. Sales: Disaggregation of Sales Revenue (Tables) link:presentationLink link:definitionLink link:calculationLink 000360 - Disclosure - 1. Summary of Significant Accounting Policies: Property and Equipment (Policies) link:presentationLink link:definitionLink link:calculationLink 000040 - Statement - Consolidated Statements of Income link:presentationLink link:definitionLink link:calculationLink 000570 - Disclosure - 11. Earnings Per Common Share: Schedule of Earnings Per Common Share (Tables) link:presentationLink link:definitionLink link:calculationLink 000480 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Amounts are included in the accompanying balance sheets (Tables) link:presentationLink link:definitionLink link:calculationLink 000790 - Disclosure - 11. Earnings Per Common Share: Schedule of Earnings Per Common Share (Details) link:presentationLink link:definitionLink link:calculationLink 000120 - Disclosure - 6. Property and Equipment link:presentationLink link:definitionLink link:calculationLink 000590 - Disclosure - 14. Stock Option Plans: Schedule of Stock Options Activity (Tables) link:presentationLink link:definitionLink link:calculationLink 000380 - Disclosure - 1. Summary of Significant Accounting Policies: Revenue Recognition (Policies) link:presentationLink link:definitionLink link:calculationLink 000520 - Disclosure - 8. Accrued Expenses: Schedule of Accrued Expenses (Tables) link:presentationLink link:definitionLink link:calculationLink 000370 - Disclosure - 1. Summary of Significant Accounting Policies: Cash Value of Life Insurance (Policies) link:presentationLink link:definitionLink link:calculationLink 000310 - Disclosure - 1. Summary of Significant Accounting Policies: Use of Estimates (Policies) link:presentationLink link:definitionLink link:calculationLink 000140 - Disclosure - 8. Accrued Expenses link:presentationLink link:definitionLink link:calculationLink 000430 - Disclosure - 1. Summary of Significant Accounting Policies: New Accounting Standards (Policies) link:presentationLink link:definitionLink link:calculationLink XML 11 R1.htm IDEA: XBRL DOCUMENT v3.23.2
Document and Entity Information - USD ($)
12 Months Ended
May 31, 2023
Aug. 15, 2023
Nov. 30, 2022
Details      
Registrant CIK 0000096536    
Fiscal Year End --05-31    
Document Type 10-K    
Document Annual Report true    
Document Period End Date May 31, 2023    
Document Transition Report false    
Entity File Number 000-3498    
Entity Registrant Name TAYLOR DEVICES INC    
Entity Incorporation, State or Country Code NY    
Entity Tax Identification Number 16-0797789    
Entity Address, Address Line One 90 Taylor Drive    
Entity Address, City or Town North Tonawanda    
Entity Address, State or Province NY    
Entity Address, Postal Zip Code 14120    
Entity Address, Address Description Address of principal executive offices    
Phone Fax Number Description Registrant's telephone number, including area code    
City Area Code 716    
Local Phone Number 694-0800    
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 false    
Entity Shell Company false    
Entity Public Float     $ 46,934,000
Entity Common Stock, Shares Outstanding   3,521,377  
Amendment Flag false    
Document Fiscal Year Focus 2023    
Document Fiscal Period Focus FY    
Auditor Name Lumsden & McCormick, LLP    
Auditor Firm ID 130    
Auditor Location Buffalo, New York    
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.23.2
Consolidated Balance Sheets - USD ($)
May 31, 2023
May 31, 2022
Current assets    
Cash and cash equivalents $ 3,575,219 $ 22,517,038
Short-term investments 24,514,757 1,097,450
Accounts and other receivables, net (Note 2) [1] 5,553,504 4,466,686
Inventory (Note 3) [2] 5,941,304 5,854,935
Prepaid expenses 439,607 468,489
Prepaid income taxes 228,947 235,947
Costs and estimated earnings in excess of billings (Note 4) [3] 4,124,182 3,336,474
Total current assets 44,377,520 37,977,019
Maintenance and other inventory, net (Note 5) [4] 1,003,140 1,107,309
Property and equipment, net (Note 6) [5] 11,721,784 9,854,759
Cash value of life insurance, net 210,120 205,359
Deferred income taxes (Note 10) [6] 568,615 74,615
Assets 57,881,179 49,219,061
Current liabilities    
Accounts payable 1,717,657 1,426,830
Accrued expenses (Note 8) [7] 4,078,322 3,414,314
Billings in excess of costs and estimated earnings (Note 4) [3] 1,992,470 1,122,763
Total current liabilities 7,788,449 5,963,907
Stockholders' Equity    
Common Stock, Value 102,127 101,342
Paid-in capital 10,947,089 10,227,916
Retained earnings 42,128,256 35,840,898
Treasury stock - 567,751 and 558,834 shares at cost (3,084,742) (2,915,002)
Total stockholders' equity 50,092,730 43,255,154
Liabilities and Equity $ 57,881,179 $ 49,219,061
[1] Note 2
[2] Note 3
[3] Note 4Note 4
[4] Note 5
[5] Note 6
[6] Note 10Note 10
[7] Note 8
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.23.2
Consolidated Balance Sheets - Parenthetical - $ / shares
May 31, 2023
May 31, 2022
Consolidated Balance Sheets    
Common Stock, Par or Stated Value Per Share $ 0.025 $ 0.025
Common Stock, Shares Authorized 8,000,000 8,000,000
Common Stock, Shares, Issued 4,088,193 4,056,771
Common Stock, Shares, Outstanding 4,088,193 4,056,771
Treasury Stock, Common, Shares 567,751 558,834
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.23.2
Consolidated Statements of Income - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Consolidated Statements of Income    
Sales, net (Note 9) [1] $ 40,199,354 $ 30,866,582
Cost of goods sold 24,133,312 21,239,886
Gross profit 16,066,042 9,626,696
Research and development costs 1,096,807 999,184
Selling, general and administrative expenses 8,160,169 6,154,735
Operating income 6,809,066 2,472,777
Other income (expense)    
Interest, net 698,864 4,543
Miscellaneous (2,572) 79,103
Total other income, net 696,292 83,646
Income before provision for income taxes 7,505,358 2,556,423
Provision for income taxes (Note 10) [2] 1,218,000 317,000
Net income $ 6,287,358 $ 2,239,423
Basic earnings per common share (Note 11) [3] $ 1.79 $ 0.64
Diluted earnings per common share (Note 11) [3] $ 1.77 $ 0.64
[1] Note 9
[2] Note 10Note 10
[3] Note 11Note 11
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.23.2
Consolidated Statements of Stockholders' Equity - USD ($)
Total
Common Stock
Additional Paid-in Capital
Retained Earnings
Treasury Stock, Common
Equity, Attributable to Parent, Beginning Balance at May. 31, 2021   $ 101,305 $ 10,010,430 $ 33,601,475 $ (2,915,002)
Issuance of shares for employee stock purchase plan   37 16,208    
Issuance of shares for employee stock option plan   0 0   0
Equity, Attributable to Parent, Ending Balance at May. 31, 2022 $ 43,255,154 101,342 10,227,916 35,840,898 (2,915,002)
Stock options issued for services     201,278    
Net income 2,239,423     2,239,423  
Issuance of shares for employee stock purchase plan   22 10,854    
Issuance of shares for employee stock option plan   763 291,066   (169,740)
Equity, Attributable to Parent, Ending Balance at May. 31, 2023 50,092,730 $ 102,127 10,947,089 42,128,256 $ (3,084,742)
Stock options issued for services     $ 417,253    
Net income $ 6,287,358     $ 6,287,358  
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.23.2
Consolidated Statements of Cash Flows - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Operating activities    
Net income $ 6,287,358 $ 2,239,423
Adjustments to reconcile net income to net cash flows from operating activities    
Depreciation 1,472,455 1,347,442
Stock options issued for services 417,253 201,278
Bad debt expense 23,360 0
(Gain) loss on disposal of property and equipment 20,015 (1,530)
Provision for inventory obsolescence 295,014 0
Deferred income taxes (494,000) 115,500
Changes in other current assets and liabilities    
Accounts and other receivables (1,110,178) (346,122)
Inventory (277,214) 486,191
Prepaid expenses 28,882 54,258
Prepaid income taxes 7,000 218,831
Costs and estimated earnings in excess of billings (787,708) (1,836,870)
Accounts payable 290,827 (360,495)
Accrued expenses 664,008 1,429,841
Billings in excess of costs and estimated earnings 869,707 (239,222)
Net operating activities 7,706,779 3,308,525
Investing activities    
Acquisition of property and equipment (3,359,495) (1,391,577)
Proceeds from disposal of property and equipment 0 7,500
Increase in short-term investments (23,417,307) (438)
Increase in cash value of life insurance (4,761) (4,821)
Net investing activities (26,781,563) (1,389,336)
Financing activities    
Proceeds from issuance of common stock 302,705 16,245
Acquisition of treasury stock (169,740) 0
Net financing activities 132,965 16,245
Net change in cash and cash equivalents (18,941,819) 1,935,434
Cash and cash equivalents - beginning 22,517,038 20,581,604
Cash and cash equivalents - ending $ 3,575,219 $ 22,517,038
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies
12 Months Ended
May 31, 2023
Notes  
1. Summary of Significant Accounting Policies:

1.  Summary of Significant Accounting Policies:

 

Nature of Operations:

 

Taylor Devices, Inc. (the Company) manufactures and sells a single group of very similar products that have many different applications for customers.  These similar products are included in one of eight categories; namely, Seismic Dampers, Fluidicshoks®, Crane and Industrial Buffers, Self-Adjusting Shock Absorbers, Liquid Die Springs, Vibration Dampers, Machined Springs and Custom Actuators for use in various types of machinery, equipment and structures, primarily to customers which are located throughout the United States and several foreign countries.  The products are manufactured at the Company's sole operating facility in the United States where all of the Company's long-lived assets reside. Management does not track or otherwise account for sales broken down by these categories.

 

81% of the Company's 2023 revenue was generated from sales to customers in the United States and 11% was from sales to customers in Asia.  Remaining sales were to customers in other countries in North America, Europe, Australia, and South America.

 

76% of the Company's 2022 revenue was generated from sales to customers in the United States and 14% was from sales to customers in Asia.  Remaining sales were to customers in other countries in North America, Europe, Australia, and South America.

 

Principles of Consolidation:

 

The accompanying consolidated financial statements include the accounts of the Company and its wholly owned subsidiary, Tayco Realty Corporation (Realty).  All inter-company transactions and balances have been eliminated in consolidation.

 

Subsequent Events:

 

The Company has evaluated events and transactions for potential recognition or disclosure in the financial statements through the date the financial statements were issued.

 

Use of Estimates:

 

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 amounts reported in the financial statements and accompanying notes.  Actual results could differ from those estimates.

 

Cash and Cash Equivalents:

 

The Company includes all highly liquid investments in money market funds in cash and cash equivalents on the accompanying balance sheets.

 

Cash and cash equivalents in financial institutions may exceed insured limits at various times during the year and subject the Company to concentrations of credit risk.

 

Short-term Investments:

 

At times, the Company invests excess funds in liquid interest earning instruments. Short-term investments at May 31, 2023 and May 31, 2022 include “available for sale” money market funds, US treasury securities and corporate bonds stated at fair value, which approximates cost. The short-term investments (20) mature on various dates during the period June 2023 to November 2026. Unrealized holding gains and losses would be presented as a separate component of accumulated other comprehensive income, net of deferred income taxes. Realized gains and losses on the sale of investments are determined using the specific identification method.

 

The short-term investments are valued using pricing models maximizing the use of observable inputs for similar securities. This includes basing value on yields currently available on comparable securities of issuers with similar credit ratings.

 

Accounts and Other Receivables:

 

Accounts and other receivables are stated at an amount management expects to collect from outstanding balances.  Management provides for probable uncollectible accounts through a charge to earnings and a credit to a valuation allowance based on its assessment of the current status of individual accounts.  Balances that are still outstanding after management has used reasonable collection efforts are written off through a charge to the valuation allowance and a credit to the receivable.

 

Inventory:

 

Inventory is stated at the lower of average cost or net realizable value. Average cost approximates first-in, first-out cost.

 

Property and Equipment:

 

Property and equipment is stated at cost net of accumulated depreciation.  Depreciation is provided primarily using the straight-line method for financial reporting purposes and accelerated methods for income tax reporting purposes.  Maintenance and repairs are charged to operations as incurred; significant improvements are capitalized.

 

Cash Value of Life Insurance:

 

Cash value of life insurance is stated at the surrender value of the contracts.

 

Revenue Recognition:

 

Revenue is recognized (generally at fixed prices) when, or as, the Company transfers control of promised products or services to a customer in an amount that reflects the consideration to which the Company expects to be entitled in exchange for transferring those products or services.

A performance obligation is a promise in a contract to transfer a distinct good or service to the customer, and is the unit of account. A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. The majority of our contracts have a single performance obligation as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts which are, therefore, not distinct. Promised goods or services that are immaterial in the context of the contract are not separately assessed as performance obligations.  

For contracts with customers in which the Company satisfies a promise to the customer to provide a product that has no alternative use to the Company and the Company has enforceable rights to payment for progress completed to date inclusive of profit, the Company satisfies the performance obligation and recognizes revenue over time (generally less than one year), using costs incurred to date relative to total estimated costs at completion to measure progress toward satisfying our performance obligations.  Incurred cost represents work performed, which corresponds with, and thereby best depicts, the transfer of control to the customer.  Contract costs include labor, material and overhead.  Adjustments to cost estimates are made periodically, and losses expected to be incurred on contracts in progress are charged to operations in the period such losses are determined.  Other sales to customers are recognized upon shipment to the customer based on contract prices and terms.  In the year ended May 31, 2023, 61% of revenue was recorded for contracts in which revenue was recognized over time while 39% was recognized at a point in time.  In the year ended May 31, 2022, 60% of revenue was recorded for contracts in which revenue was recognized over time while 40% was recognized at a point in time.

Progress payments are typically negotiated for longer term projects.  Payments are otherwise due once performance obligations are complete (generally at shipment and transfer of title).  For financial statement presentation purposes, the Company nets progress billings against the total costs incurred on uncompleted contracts.  The asset, “costs and estimated earnings in excess of billings,” represents revenues recognized in excess of amounts billed.  The liability, “billings in excess of costs and estimated earnings,” represents billings in excess of revenues recognized.

If applicable, the Company recognizes an asset for the incremental material costs of obtaining a contract with a customer if the Company expects the benefit of those costs to be longer than one year and the costs are expected to be recovered.  As of May 31, 2023 and 2022, the Company does not have material incremental costs on any open contracts with an original expected duration of greater than one year, and therefore such costs are expensed as incurred.  These incremental costs include, but are not limited to, sales commissions incurred to obtain a contract with a customer.

 

Shipping and Handling Costs:

 

Shipping and handling costs on incoming inventory items are classified as a component of cost of goods sold, while shipping and handling costs on outgoing shipments to customers are classified as a component of selling, general and administrative expenses.  The amounts of these costs classified as a component of selling, general and administrative expenses were $366,763 and $238,536 for the years ended May 31, 2023 and 2022.  Shipping and handling activities that occur after the customer has obtained control of the product are considered fulfillment activities, not performance obligations.

 

Income Taxes:

 

The provision for income taxes provides for the tax effects of transactions reported in the financial statements regardless of when such taxes are payable.  Deferred tax assets and liabilities are recognized for the expected future tax consequences of temporary differences between the tax and financial statement basis of assets and liabilities.  Deferred taxes are based on tax laws currently enacted with tax rates expected to be in effect when the taxes are actually paid or recovered.

 

The Company's practice is to recognize interest related to income tax matters in interest income / expense and to recognize penalties in selling, general and administrative expenses.  The Company did not have any accrued interest or penalties included in its consolidated balance sheets at May 31, 2023 and 2022.  The Company recorded no interest expense or penalties in its consolidated statements of income during the years ended May 31, 2023 and 2022.

 

The Company believes it is no longer subject to examination by federal and state taxing authorities for years prior to May 31, 2020.

 

Sales Taxes:

 

Certain jurisdictions impose a sales tax on Company sales to nonexempt customers.  The Company collects these taxes from customers and remits the entire amount as required by the applicable law.  The Company excludes from revenues and expenses the tax collected and remitted.

 

Stock-Based Compensation:

 

The Company measures compensation cost arising from the grant of share-based payments to employees at fair value and recognizes such cost in income over the period during which the employee is required to provide service in exchange for the award. The stock-based compensation expense for the years ended May 31, 2023 and 2022 was $417,253 and $201,278.

 

 

New Accounting Standards:

 

Any recently issued Accounting Standards Codification (ASC) guidance has either been implemented or is not significant to the Company.

 

Reclassifications:

 

The 2022 financial statements have been reclassified to conform with the presentation adopted for 2023.

XML 18 R8.htm IDEA: XBRL DOCUMENT v3.23.2
2. Accounts and Other Receivables
12 Months Ended
May 31, 2023
Notes  
2. Accounts and Other Receivables:

2.  Accounts and Other Receivables:

 

2023

 

2022

Customers

$5,558,990 

 

$4,292,300 

Customers – retention

23,980 

 

190,492 

5,582,970 

 

4,482,792 

Less allowance for doubtful accounts

29,466 

 

16,106 

$5,553,504 

 

$4,466,686 

 

Retention receivable from customers represents amounts invoiced to customers where payments have been partially withheld pending completion of the project.  All amounts are expected to be collected within the next fiscal year.

XML 19 R9.htm IDEA: XBRL DOCUMENT v3.23.2
3. Inventory
12 Months Ended
May 31, 2023
Notes  
3. Inventory:

3.  Inventory:

 

2023

 

2022

Raw materials

$673,453 

 

$488,393 

Work-in-process

5,005,416 

 

5,166,271 

Finished goods

330,435 

 

300,271 

6,009,304 

 

5,954,935 

Less allowance for obsolescence

68,000 

 

100,000 

$5,941,304 

 

$5,854,935 

XML 20 R10.htm IDEA: XBRL DOCUMENT v3.23.2
4. Costs and Estimated Earnings on Uncompleted Contracts
12 Months Ended
May 31, 2023
Notes  
4. Costs and Estimated Earnings on Uncompleted Contracts:

4.  Costs and Estimated Earnings on Uncompleted Contracts:

 

2023

 

2022

Costs incurred on uncompleted contracts

$ 5,349,111

 

$ 4,268,608

Estimated earnings

4,850,889

 

3,211,392

10,200,000

 

7,480,000

Less billings to date

8,068,288

 

5,266,289

$ 2,131,712

 

$ 2,213,711

 

Amounts are included in the accompanying balance sheets under the following captions:

 

2023

 

2022

Costs and estimated earnings in excess of billings

$ 4,124,182

 

$ 3,336,474

Billings in excess of costs and estimated earnings

1,992,470

 

1,122,763

$ 2,131,712

 

$ 2,213,711

 

The following summarizes the status of Projects in progress as of May 31, 2023 and 2022:

 

2023

2022

Number of Projects in progress

22

19

Aggregate percent complete

33%

47%

Aggregate amount remaining

$18,061,484

$7,627,234

Percentage of total value invoiced to customer

29%

35%

 

The Company expects to recognize the majority of remaining revenue on all open projects during the May 31, 2024 fiscal year.

 

Revenue recognized during the years ended May 31, 2023 and 2022 for amounts included in billings in excess of costs and estimated earnings as of the beginning of the year amounted to $1,123,000, and $1,362,000.

XML 21 R11.htm IDEA: XBRL DOCUMENT v3.23.2
5. Maintenance and Other Inventory
12 Months Ended
May 31, 2023
Notes  
5. Maintenance and Other Inventory:

5.  Maintenance and Other Inventory:

 

2023

 

2022

Maintenance and other inventory

$ 2,236,106

 

$ 2,334,889

Less allowance for obsolescence

1,232,966

 

1,227,580

$ 1,003,140

 

$ 1,107,309

 

Maintenance and other inventory represent stock that is estimated to have a product life-cycle in excess of twelve-months.  This stock represents certain items the Company is required to maintain for service of products sold, and items that are generally subject to spontaneous ordering.  This inventory is particularly sensitive to technical obsolescence in the near term due to its use in industries characterized by the continuous introduction of new product lines, rapid technological advances and product obsolescence.  Therefore, management of the Company has recorded an allowance for potential inventory obsolescence.  $322,000 and $772,000 of inventory was disposed of during the years ended May 31, 2023 and 2022.  The provision for potential inventory obsolescence was $295,000 and zero for the years ended May 31, 2023 and 2022.  The Company continues to rework slow-moving inventory, where applicable, to convert it to product to be used on customer orders.

XML 22 R12.htm IDEA: XBRL DOCUMENT v3.23.2
6. Property and Equipment
12 Months Ended
May 31, 2023
Notes  
6. Property and Equipment:

6.  Property and Equipment:

 

2023

 

2022

Land

$195,220 

 

$195,220 

Buildings and improvements

10,033,399 

 

9,821,812 

Machinery and equipment

15,278,928 

 

12,824,696 

Office furniture and equipment

2,840,980 

 

2,744,400 

Autos and trucks

24,818 

 

24,818 

Land improvements

483,929 

 

483,929 

28,857,274 

 

26,094,875 

Less accumulated depreciation

17,135,490 

 

16,240,116 

$11,721,784 

 

$9,854,759 

 

Depreciation expense was $1,472,455 and $1,347,442 for the years ended May 31, 2023 and 2022.

 

The Company has commitments to make capital expenditures of approximately $107,000 as of May 31, 2023.

XML 23 R13.htm IDEA: XBRL DOCUMENT v3.23.2
7. Short-Term Borrowings
12 Months Ended
May 31, 2023
Notes  
7. Short-Term Borrowings:

7.  Short-Term Borrowings:

 

The Company has available a $10,000,000 bank demand line of credit from a bank, with interest payable at the Company's option of 30, 60 or 90 day LIBOR rate plus 2.25%. Interest payable will change from LIBOR rate plus 2.25% to SOFR rate plus 2.365% effective July 1, 2023. The line is secured by a negative pledge of the Company's real and personal property.  This line of credit is subject to the usual terms and conditions applied by the bank and subject to renewal annually.

 

There is no amount outstanding under the line of credit at May 31, 2023 or May 31, 2022.  

 

The Company uses a cash management facility under which the bank draws against the available line of credit to cover checks presented for payment on a daily basis.  Outstanding checks under this arrangement totaled $13,873 and $193,478 as of May 31, 2023 and 2022.  These amounts are included in accounts payable.

XML 24 R14.htm IDEA: XBRL DOCUMENT v3.23.2
8. Accrued Expenses
12 Months Ended
May 31, 2023
Notes  
8. Accrued Expenses:

8.  Accrued Expenses:

 

2023

 

2022

Customer deposits

$367,902 

 

$1,347,709 

Personnel costs

3,023,501 

 

1,587,271 

Other

686,919 

 

479,334 

$4,078,322 

 

$3,414,314 

XML 25 R15.htm IDEA: XBRL DOCUMENT v3.23.2
9. Sales
12 Months Ended
May 31, 2023
Notes  
9. Sales:

9.  Sales:

 

The Company manufactures and sells a single group of very similar products that have many different applications for customers.  These similar products are included in one of eight categories; namely, Seismic Dampers, Fluidicshoks®, Crane and Industrial Buffers, Self-Adjusting Shock Absorbers, Liquid Die Springs, Vibration Dampers, Machined Springs and Custom Actuators.  Management does not track or otherwise account for sales broken down by these categories.  Sales of the Company's products are made to three general groups of customers: industrial, structural and aerospace / defense.  A breakdown of sales to these three general groups of customers is as follows:  

 

2023

 

2022

Structural

$ 20,642,326

 

$ 16,267,162

Aerospace / Defense

15,568,695

 

12,440,687

Industrial

3,988,333

 

2,158,733

$ 40,199,354

 

$ 30,866,582

 

Sales to a single customer approximated 15% of net sales for 2022.

XML 26 R16.htm IDEA: XBRL DOCUMENT v3.23.2
10. Income Taxes
12 Months Ended
May 31, 2023
Notes  
10. Income Taxes:

10.  Income Taxes:

 

2023

 

2022

 

Current tax provision:

 

 

 

 

Federal

$ 1,710,000

 

$ 200,100

 

State

2,000

 

1,400

 

1,712,000

 

201,500

 

Deferred tax provision (benefit):

 

 

 

 

Federal

(494,000)

 

115,500

 

State

-

 

-

 

(494,000)

 

115,500

 

$ 1,218,000

 

$ 317,000

 

 

A reconciliation of provision for income taxes at the statutory rate to income tax provision at the Company's effective rate is as follows:

 

2023

 

2022

 

Computed tax provision at the expected statutory rate

$1,576,100   

 

$536,800   

 

State income tax - net of Federal tax benefit

(1,600)  

 

1,100   

 

Tax effect of permanent differences:

 

 

 

 

Research tax credits

(283,600)  

 

(275,400)  

 

Foreign-derived intangible income deduction

(66,900)  

 

(12,200)  

 

Other permanent differences

900   

 

3,100   

 

Other

(6,900)  

 

63,600   

 

$1,218,000   

 

$317,000   

 

Effective income tax rate

16.2% 

 

12.4% 

 

 

Significant components of the Company's deferred tax assets and liabilities consist of the following:

 

2023

 

2022

 

Deferred tax assets:

 

 

 

 

Allowance for doubtful receivables

$6,200  

 

$3,400  

 

Tax inventory adjustment

84,300  

 

92,200  

 

Allowance for obsolete inventory

273,200  

 

278,800  

 

Accrued vacation

136,600  

 

84,300  

 

Accrued commissions

9,800  

 

7,000  

 

Warranty reserve

62,700  

 

48,800  

 

R&D tax credit

 

 

84,000  

 

R&D capitalization

678,500  

 

 

 

Stock options issued for services

331,300  

 

277,600  

 

1,582,600  

 

876,100  

 

Deferred tax liabilities:

 

 

 

 

Excess tax depreciation

(1,013,985) 

 

(801,485) 

 

Net deferred tax assets

$568,615  

 

$74,615  

 

 

Realization of the deferred tax assets is dependent on generating sufficient taxable income at the time temporary differences become deductible.  The Company provides a valuation allowance to the extent that deferred tax assets may not be realized.  A valuation allowance has not been recorded against the deferred tax assets since management believes it is more likely than not that the deferred tax assets are recoverable.  The Company considers future taxable income and potential tax planning strategies in assessing the need for a potential valuation allowance.  The amount of the deferred tax assets considered realizable however, could be reduced in the near term if estimates of future taxable income are reduced.  The Company will need to generate approximately $7.5 million in taxable income in future years in order to realize the deferred tax assets recorded as of May 31, 2023 of $1,582,600.

 

The Company and its subsidiary file consolidated Federal and State income tax returns.  As of May 31, 2023, the Company had State investment tax credit carryforwards of approximately $424,000 expiring through May 2028.

XML 27 R17.htm IDEA: XBRL DOCUMENT v3.23.2
11. Earnings Per Common Share
12 Months Ended
May 31, 2023
Notes  
11. Earnings Per Common Share:

11.  Earnings Per Common Share:

 

Basic earnings per common share is computed by dividing income available to common stockholders by the weighted-average common shares outstanding for the period.  Diluted earnings per common share reflects the weighted-average common shares outstanding and dilutive potential common shares, such as stock options.

 

A reconciliation of weighted-average common shares outstanding to weighted-average common shares outstanding assuming dilution is as follows:

 

2023

 

2022

Average common shares outstanding

3,506,474

 

3,497,345

Common shares issuable under stock option plans

45,020

 

2,208

Average common shares outstanding assuming dilution

3,551,494

 

3,499,553

XML 28 R18.htm IDEA: XBRL DOCUMENT v3.23.2
12. Related Party Transactions
12 Months Ended
May 31, 2023
Notes  
12. Related Party Transactions:

12.  Related Party Transactions:

 

The Company had no material related party transactions for the years ended May 31, 2023 and 2022.

XML 29 R19.htm IDEA: XBRL DOCUMENT v3.23.2
13. Employee Stock Purchase Plan
12 Months Ended
May 31, 2023
Notes  
13. Employee Stock Purchase Plan:

13.  Employee Stock Purchase Plan:

 

In March 2004, the Company reserved 295,000 shares of common stock for issuance pursuant to a non-qualified employee stock purchase plan.  Participation in the employee stock purchase plan is voluntary for all eligible employees of the Company.  Purchase of common shares can be made by employee contributions through payroll deductions.  At the end of each calendar quarter, the employee contributions will be applied to the purchase of common shares using a share value equal to the mean between the closing bid and ask prices of the stock on that date.  These shares are distributed to the employees at the end of each calendar quarter or upon withdrawal from the plan.  During the years ended May 31, 2023 and 2022, 922 ($8.65 to $19.96 price per share) and 1,496 ($9.90 to $11.83 price per share) common shares, respectively, were issued to employees. As of May 31, 2023, 216,365 shares were reserved for further issue.

XML 30 R20.htm IDEA: XBRL DOCUMENT v3.23.2
14. Stock Option Plans
12 Months Ended
May 31, 2023
Notes  
14. Stock Option Plans:

14.  Stock Option Plans:

 

In 2022, the Company adopted a stock option plan which permits the Company to grant both incentive stock options and non-qualified stock options.  The incentive stock options qualify for preferential treatment under the Internal Revenue Code.  Under this plan, 260,000 shares of common stock have been reserved for grant to key employees and directors of the Company and 59,000 shares have been granted as of May 31, 2023. Under the plan, the option price may not be less than the fair market value of the stock at the time the options are granted. Options vest immediately and expire ten years from the date of grant.

 

Using the Black-Scholes option pricing model, the weighted average estimated fair value of each option granted under the plan was $4.91 during 2023 and $3.02 during 2022.  The pricing model uses the assumptions noted in the following table.  Expected volatility is based on the historical volatility of the Company's stock.  The risk-free interest rate for periods within the contractual life of the option is based on the U.S. Treasury yield curve in effect at the time of the grant.  The expected life of options granted is derived from previous history of stock exercises from the grant date and represents the period of time that options granted are expected to be outstanding.  The Company uses historical data to estimate option exercise and employee termination assumptions under the valuation model.  The Company has never paid dividends on its common stock and does not anticipate doing so in the foreseeable future.

 

2023

 

2022

Risk-free interest rate

2.45%

 

2.59%

Expected life in years

4.2

 

4.0

Expected volatility

33%

 

31%

Expected dividend yield

0%

 

0%

 

 

The following is a summary of stock option activity:

 

Shares

 

Weighted Average Exercise Price

Intrinsic Value

Outstanding - May 31, 2021

267,750

 

$11.60 

$271,426 

    Options granted

66,750

 

$10.69 

 

    Less: options expired

51,500

 

- 

 

Outstanding - May 31, 2022

283,000

 

$11.43 

$28,248 

    Options granted

85,000

 

$15.75 

 

    Less: options exercised

30,500

 

$9.57 

 

    Less: options expired

4,500

 

- 

 

Outstanding - May 31, 2023

333,000

 

$12.70 

$2,016,961 

 

We calculated intrinsic value for those options that had an exercise price lower than the market price of our common shares as of the balance sheet dates.  The aggregate intrinsic value of outstanding options as of the end of each fiscal year is calculated as the difference between the exercise price of the underlying options and the market price of our common shares for the options that were in-the-money at that date (279,500 at May 31, 2023 and 29,250 at May 31, 2022.)  The Company's closing stock price was $18.55 and $9.30 as of May 31, 2023 and 2022.  As of May 31, 2023, there are 201,000 options available for future grants under the 2022 stock option plan.  $291,829 was received from the exercise of share options during the fiscal year ended May 31, 2023.  No options were exercised in the fiscal year ended May 31, 2022.

 

The following table summarizes information about stock options outstanding at May 31, 2023:

 

Outstanding and Exercisable

Range of Exercise Prices

Number of Options

Weighted Average Remaining Years of Contractual Life

Weighted Average Exercise Price

$  8.01-$  9.00

13,000

0.9

$  8.87

$  9.01-$10.00

55,000

8.0

$  9.67

$10.01-$11.00

23,500

6.2

$10.16

$11.01-$12.00

140,000

7.5

$11.66

$12.01-$13.00

28,000

2.8

$12.39

$13.01-$14.00

10,000

3.9

$13.80

$16.01-$17.00

10,000

2.9

$16.40

$19.01-$20.00

53,500

8.6

$19.82

$  8.01-$20.00

333,000

6.8

$12.70

 

 

 

 

 

The following table summarizes information about stock options outstanding at May 31, 2022:

 

Outstanding and Exercisable

Range of Exercise Prices

Number of Options

Weighted Average Remaining Years of Contractual Life

Weighted Average Exercise Price

$  7.01-$  8.00

10,000

0.9

$  7.74

$  8.01-$  9.00

19,250

1.5

$  8.64

$  9.01-$10.00

55,000

9.0

$  9.67

$10.01-$11.00

26,500

7.3

$10.14

$11.01-$12.00

112,250

7.8

$11.72

$12.01-$13.00

28,750

3.9

$12.39

$13.01-$14.00

10,000

4.9

$13.80

$16.01-$17.00

10,000

3.9

$16.40

$19.01-$20.00

11,250

4.2

$19.26

$  7.01-$20.00

283,000

6.5

$11.43

XML 31 R21.htm IDEA: XBRL DOCUMENT v3.23.2
15. Preferred Stock
12 Months Ended
May 31, 2023
Notes  
15. Preferred Stock:

15.  Preferred Stock:

 

The Company has 2,000,000 authorized but unissued shares of preferred stock which may be issued in series.  The shares of each series shall have such rights, preferences, and limitations as shall be fixed by the Board of Directors.

XML 32 R22.htm IDEA: XBRL DOCUMENT v3.23.2
16. Treasury Stock
12 Months Ended
May 31, 2023
Notes  
16. Treasury Stock:

16.  Treasury Stock:

 

Treasury shares are 567,751 at May 31, 2023 and 558,834 at May 31, 2022.

XML 33 R23.htm IDEA: XBRL DOCUMENT v3.23.2
17. Retirement Plan
12 Months Ended
May 31, 2023
Notes  
17. Retirement Plan:

17.  Retirement Plan:

 

The Company maintains a retirement plan for essentially all employees pursuant to Section 401(k) of the Internal Revenue Code.  The Company matches a percentage of employee voluntary salary deferrals subject to limitations.  The Company may also make discretionary contributions as determined annually by the Company's Board of Directors.  The amount expensed under the plan was $371,881 and $313,269 for the years ended May 31, 2023 and 2022.

XML 34 R24.htm IDEA: XBRL DOCUMENT v3.23.2
18. Fair Value of Financial Instruments
12 Months Ended
May 31, 2023
Notes  
18. Fair Value of Financial Instruments:

18.  Fair Value of Financial Instruments:

 

The carrying amounts of cash and cash equivalents, accounts receivable, accounts payable, and accrued liabilities approximate fair value because of the short maturity of these instruments.

 

The fair values of short-term investments were determined as described in Note 1.

XML 35 R25.htm IDEA: XBRL DOCUMENT v3.23.2
19. Cash Flows Information
12 Months Ended
May 31, 2023
Notes  
19. Cash Flows Information:

19.  Cash Flows Information:

 

2023

 

2022

 

 

 

 

 

 

 Interest paid

None

 

None

 

 

 

 

 

 

 Income taxes paid

$1,705,000

 

None

 

XML 36 R26.htm IDEA: XBRL DOCUMENT v3.23.2
20. Risks and Uncertainties
12 Months Ended
May 31, 2023
Notes  
20. Risks and Uncertainties:

20.  Risks and Uncertainties:

 

On January 31, 2020, the United States Secretary of Health and Human Services (HHS) declared a public health emergency related to the global spread of coronavirus COVID-19, and a pandemic was declared by the World Health Organization in February 2020. Efforts to fight the widespread disease included limiting or closing many businesses and resulted in a severe disruption of operations for many organizations.  Financial markets also fluctuated significantly during this time. The extent of the impact of COVID-19 on the Company’s operational and financial performance was significant in fiscal 2021. The use of vaccinations world-wide have apparently slowed spread of the disease, the extent of the impact of COVID-19 on the Company’s operational and financial performance in fiscal 2022 and 2023 was minimal.  

XML 37 R27.htm IDEA: XBRL DOCUMENT v3.23.2
21. Legal Proceedings
12 Months Ended
May 31, 2023
Notes  
21. Legal Proceedings:

21.  Legal Proceedings:

 

Taylor Devices Inc. (the “Company”) has been named as a Third-Party Defendant in an action captioned Board of Managers of the 432 Park Condominium, et al. v. 56th and Park (NY) Owner LLC, et al.  Index No. 655617/2021 (S.Ct. N.Y. Co.) (the “Action”).

The Action was filed on or about September 23, 2021.  In an amended Complaint dated April 29, 2022, the Board of Managers of 432 Park Condominium (the “Owner”), a condominium association for a high-rise condominium building (the “Building”) located at 432 Park Avenue in New York, N.Y., has asserted a claim against the condominium sponsor, 56th and Park (NY) Owner LLC (the “Sponsor”).  The Owner alleges “over 1500 identified construction and design defects to the common elements of” residential and commercial units at the Building, based upon a report generated by a consultant (SBI Consultants Inc.) retained by the Owner.  The alleged defects include, but are not limited to, allegedly-excessive noise and vibration, water leaks and elevator failures. The SBI report allegedly identified defects in the Building’s: (a) structural/envelope system; (b) mechanical/electrical & plumbing systems; (c) architectural/interiors; and (d) elevators/vertical systems.

On March 14, 2022, the Sponsor filed a Third-Party Complaint against LendLease Construction (US) LMB (“LendLease”), as well as the architects of record on the project (SLCE Architects), the lead structural engineer (Cantor ESA) and the head mechanical

engineer (Flack + Kurtz) involved in the Building’s design. As to LendLease, the Third-Party Complaint alleges breach of a Construction Management Contract between LendLease and Sponsor and negligence arising from purported failure to perform under the contract.

On March 22, 2023, LendLease initiated a Third-Party action against various entities with whom LendLease had contracted for the supply of materials and services in connection with construction of the Building.  The Third-Party defendants include the suppliers of products and services relating to the automatic sprinkler system, structural steel, mechanical systems, electrical systems, sheet metal, component assembly, roofing, the building exterior, plumbing, concrete, curtain walls, custom machine work and elevators.  The Third-Party Complaint also names the Company as a Third-Party Defendant, based upon a contract between the Company and LendLease to supply 16 Viscous Damping Devices (“VDDs”) that were incorporated into a Tuned Mass Damper (“TMD”) system designed by another company to limit accelerations of the Building during wind events.  On July 5, 2023, the Company timely filed and served an Answer to LendLease’s Third-Party Complaint.

Additional third-party actions have been filed by parties named as defendants in the Third-Party Complaint.  Presently, seven third-party actions are pending.

The Progress of the Matter to Date.  The matter, and all of the related third-party actions, are pending in the Commercial Division of the Supreme Court, New York County before Justice Melissa A. Crane.  Justice Crane has appointed Hon. Andrew J. Peck, a retired justice of the Supreme Court, as Special Master to hear and determine disputes regarding all or any part of any discovery issue.  

 

On June 13, 2023, Special Master Peck issued an Amended Final Scheduling Order.  Among the directives in the Amended Final Scheduling Order is a requirement that:  (a) recently-added third-party defendants (including the Company) respond to discovery demands by August 30, 2023 and complete document productions by October 11, 2023; (b) all parties complete fact depositions and fact discovery by March 15, 2024; and (c) all parties complete expert discovery by August 28, 2024.

 

Management Response. Management of the Company vigorously disputes the allegations in the Third-Party Complaint.

 

Based upon the information currently available, there is a credible argument that: (a) the Company met the contractual requirements of the 2013 Purchase Order for Viscous Damping Devices (VDDs) that were incorporated into the Tuned Mass Damper (TMD) system; and (b) the VDDs that were delivered were successfully tested to the applicable specification and met the technical requirements of that specification.

 

The Owner has not itemized the damages it seeks to recover from Sponsor, but the Amended Complaint contains an ad damnum clause demanding $125 million plus punitive damages.  Sponsor has not itemized the damages it seeks to recover from LendLease or the other third-party defendants, but the claim for relief in the Third-Party Complaint includes a demand for full indemnification of any amounts the Sponsor is required to pay plaintiff.  In turn, LendLease does not itemize the damages it seeks to recover from the several Third-Party defendants (including the Company), but its demand for relief in the Third-Party Complaint includes a demand for full indemnification of any amounts LendLease is required to pay to Sponsor.  The Company anticipates that the pending actions would provide opportunities for Sponsor, LendLease and the Company to allocate some or all of any liability to one or more co-defendants or third parties.  In view of the limited discovery to date, it is not practical to quantify likely damages to the Company in the event of an unfavorable outcome on liability.

XML 38 R28.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Nature of Operations (Policies)
12 Months Ended
May 31, 2023
Policies  
Nature of Operations:

Nature of Operations:

 

Taylor Devices, Inc. (the Company) manufactures and sells a single group of very similar products that have many different applications for customers.  These similar products are included in one of eight categories; namely, Seismic Dampers, Fluidicshoks®, Crane and Industrial Buffers, Self-Adjusting Shock Absorbers, Liquid Die Springs, Vibration Dampers, Machined Springs and Custom Actuators for use in various types of machinery, equipment and structures, primarily to customers which are located throughout the United States and several foreign countries.  The products are manufactured at the Company's sole operating facility in the United States where all of the Company's long-lived assets reside. Management does not track or otherwise account for sales broken down by these categories.

 

81% of the Company's 2023 revenue was generated from sales to customers in the United States and 11% was from sales to customers in Asia.  Remaining sales were to customers in other countries in North America, Europe, Australia, and South America.

 

76% of the Company's 2022 revenue was generated from sales to customers in the United States and 14% was from sales to customers in Asia.  Remaining sales were to customers in other countries in North America, Europe, Australia, and South America.

XML 39 R29.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Principles of Consolidation (Policies)
12 Months Ended
May 31, 2023
Policies  
Principles of Consolidation:

Principles of Consolidation:

 

The accompanying consolidated financial statements include the accounts of the Company and its wholly owned subsidiary, Tayco Realty Corporation (Realty).  All inter-company transactions and balances have been eliminated in consolidation.

XML 40 R30.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Subsequent Events (Policies)
12 Months Ended
May 31, 2023
Policies  
Subsequent Events:

Subsequent Events:

 

The Company has evaluated events and transactions for potential recognition or disclosure in the financial statements through the date the financial statements were issued.

XML 41 R31.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Use of Estimates (Policies)
12 Months Ended
May 31, 2023
Policies  
Use of Estimates:

Use of Estimates:

 

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 amounts reported in the financial statements and accompanying notes.  Actual results could differ from those estimates.

XML 42 R32.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Cash and Cash Equivalents (Policies)
12 Months Ended
May 31, 2023
Policies  
Cash and Cash Equivalents:

Cash and Cash Equivalents:

 

The Company includes all highly liquid investments in money market funds in cash and cash equivalents on the accompanying balance sheets.

 

Cash and cash equivalents in financial institutions may exceed insured limits at various times during the year and subject the Company to concentrations of credit risk.

XML 43 R33.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Short-term Investments (Policies)
12 Months Ended
May 31, 2023
Policies  
Short-term Investments:

Short-term Investments:

 

At times, the Company invests excess funds in liquid interest earning instruments. Short-term investments at May 31, 2023 and May 31, 2022 include “available for sale” money market funds, US treasury securities and corporate bonds stated at fair value, which approximates cost. The short-term investments (20) mature on various dates during the period June 2023 to November 2026. Unrealized holding gains and losses would be presented as a separate component of accumulated other comprehensive income, net of deferred income taxes. Realized gains and losses on the sale of investments are determined using the specific identification method.

 

The short-term investments are valued using pricing models maximizing the use of observable inputs for similar securities. This includes basing value on yields currently available on comparable securities of issuers with similar credit ratings.

XML 44 R34.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Accounts and Other Receivables (Policies)
12 Months Ended
May 31, 2023
Policies  
Accounts and Other Receivables:

Accounts and Other Receivables:

 

Accounts and other receivables are stated at an amount management expects to collect from outstanding balances.  Management provides for probable uncollectible accounts through a charge to earnings and a credit to a valuation allowance based on its assessment of the current status of individual accounts.  Balances that are still outstanding after management has used reasonable collection efforts are written off through a charge to the valuation allowance and a credit to the receivable.

XML 45 R35.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Inventory (Policies)
12 Months Ended
May 31, 2023
Policies  
Inventory:

Inventory:

 

Inventory is stated at the lower of average cost or net realizable value. Average cost approximates first-in, first-out cost.

XML 46 R36.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Property and Equipment (Policies)
12 Months Ended
May 31, 2023
Policies  
Property and Equipment:

Property and Equipment:

 

Property and equipment is stated at cost net of accumulated depreciation.  Depreciation is provided primarily using the straight-line method for financial reporting purposes and accelerated methods for income tax reporting purposes.  Maintenance and repairs are charged to operations as incurred; significant improvements are capitalized.

XML 47 R37.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Cash Value of Life Insurance (Policies)
12 Months Ended
May 31, 2023
Policies  
Cash Value of Life Insurance:

Cash Value of Life Insurance:

 

Cash value of life insurance is stated at the surrender value of the contracts.

XML 48 R38.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Revenue Recognition (Policies)
12 Months Ended
May 31, 2023
Policies  
Revenue Recognition:

Revenue Recognition:

 

Revenue is recognized (generally at fixed prices) when, or as, the Company transfers control of promised products or services to a customer in an amount that reflects the consideration to which the Company expects to be entitled in exchange for transferring those products or services.

A performance obligation is a promise in a contract to transfer a distinct good or service to the customer, and is the unit of account. A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. The majority of our contracts have a single performance obligation as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts which are, therefore, not distinct. Promised goods or services that are immaterial in the context of the contract are not separately assessed as performance obligations.  

For contracts with customers in which the Company satisfies a promise to the customer to provide a product that has no alternative use to the Company and the Company has enforceable rights to payment for progress completed to date inclusive of profit, the Company satisfies the performance obligation and recognizes revenue over time (generally less than one year), using costs incurred to date relative to total estimated costs at completion to measure progress toward satisfying our performance obligations.  Incurred cost represents work performed, which corresponds with, and thereby best depicts, the transfer of control to the customer.  Contract costs include labor, material and overhead.  Adjustments to cost estimates are made periodically, and losses expected to be incurred on contracts in progress are charged to operations in the period such losses are determined.  Other sales to customers are recognized upon shipment to the customer based on contract prices and terms.  In the year ended May 31, 2023, 61% of revenue was recorded for contracts in which revenue was recognized over time while 39% was recognized at a point in time.  In the year ended May 31, 2022, 60% of revenue was recorded for contracts in which revenue was recognized over time while 40% was recognized at a point in time.

Progress payments are typically negotiated for longer term projects.  Payments are otherwise due once performance obligations are complete (generally at shipment and transfer of title).  For financial statement presentation purposes, the Company nets progress billings against the total costs incurred on uncompleted contracts.  The asset, “costs and estimated earnings in excess of billings,” represents revenues recognized in excess of amounts billed.  The liability, “billings in excess of costs and estimated earnings,” represents billings in excess of revenues recognized.

If applicable, the Company recognizes an asset for the incremental material costs of obtaining a contract with a customer if the Company expects the benefit of those costs to be longer than one year and the costs are expected to be recovered.  As of May 31, 2023 and 2022, the Company does not have material incremental costs on any open contracts with an original expected duration of greater than one year, and therefore such costs are expensed as incurred.  These incremental costs include, but are not limited to, sales commissions incurred to obtain a contract with a customer.

XML 49 R39.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Shipping and Handling Costs (Policies)
12 Months Ended
May 31, 2023
Policies  
Shipping and Handling Costs:

Shipping and Handling Costs:

 

Shipping and handling costs on incoming inventory items are classified as a component of cost of goods sold, while shipping and handling costs on outgoing shipments to customers are classified as a component of selling, general and administrative expenses.  The amounts of these costs classified as a component of selling, general and administrative expenses were $366,763 and $238,536 for the years ended May 31, 2023 and 2022.  Shipping and handling activities that occur after the customer has obtained control of the product are considered fulfillment activities, not performance obligations.

XML 50 R40.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Income Taxes (Policies)
12 Months Ended
May 31, 2023
Policies  
Income Taxes:

Income Taxes:

 

The provision for income taxes provides for the tax effects of transactions reported in the financial statements regardless of when such taxes are payable.  Deferred tax assets and liabilities are recognized for the expected future tax consequences of temporary differences between the tax and financial statement basis of assets and liabilities.  Deferred taxes are based on tax laws currently enacted with tax rates expected to be in effect when the taxes are actually paid or recovered.

 

The Company's practice is to recognize interest related to income tax matters in interest income / expense and to recognize penalties in selling, general and administrative expenses.  The Company did not have any accrued interest or penalties included in its consolidated balance sheets at May 31, 2023 and 2022.  The Company recorded no interest expense or penalties in its consolidated statements of income during the years ended May 31, 2023 and 2022.

 

The Company believes it is no longer subject to examination by federal and state taxing authorities for years prior to May 31, 2020.

XML 51 R41.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Sales Taxes (Policies)
12 Months Ended
May 31, 2023
Policies  
Sales Taxes:

Sales Taxes:

 

Certain jurisdictions impose a sales tax on Company sales to nonexempt customers.  The Company collects these taxes from customers and remits the entire amount as required by the applicable law.  The Company excludes from revenues and expenses the tax collected and remitted.

XML 52 R42.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Stock-Based Compensation (Policies)
12 Months Ended
May 31, 2023
Policies  
Stock-Based Compensation:

Stock-Based Compensation:

 

The Company measures compensation cost arising from the grant of share-based payments to employees at fair value and recognizes such cost in income over the period during which the employee is required to provide service in exchange for the award. The stock-based compensation expense for the years ended May 31, 2023 and 2022 was $417,253 and $201,278.

XML 53 R43.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: New Accounting Standards (Policies)
12 Months Ended
May 31, 2023
Policies  
New Accounting Standards:

New Accounting Standards:

 

Any recently issued Accounting Standards Codification (ASC) guidance has either been implemented or is not significant to the Company.

XML 54 R44.htm IDEA: XBRL DOCUMENT v3.23.2
1. Summary of Significant Accounting Policies: Reclassifications (Policies)
12 Months Ended
May 31, 2023
Policies  
Reclassifications:

Reclassifications:

 

The 2022 financial statements have been reclassified to conform with the presentation adopted for 2023.

XML 55 R45.htm IDEA: XBRL DOCUMENT v3.23.2
2. Accounts and Other Receivables: Accounts and Other Receivables (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Accounts and Other Receivables

 

2023

 

2022

Customers

$5,558,990 

 

$4,292,300 

Customers – retention

23,980 

 

190,492 

5,582,970 

 

4,482,792 

Less allowance for doubtful accounts

29,466 

 

16,106 

$5,553,504 

 

$4,466,686 

XML 56 R46.htm IDEA: XBRL DOCUMENT v3.23.2
3. Inventory: Schedule of Inventory (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Inventory

 

2023

 

2022

Raw materials

$673,453 

 

$488,393 

Work-in-process

5,005,416 

 

5,166,271 

Finished goods

330,435 

 

300,271 

6,009,304 

 

5,954,935 

Less allowance for obsolescence

68,000 

 

100,000 

$5,941,304 

 

$5,854,935 

XML 57 R47.htm IDEA: XBRL DOCUMENT v3.23.2
4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Costs incurred on uncompleted contracts and Estimated earnings (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Costs incurred on uncompleted contracts and Estimated earnings

 

2023

 

2022

Costs incurred on uncompleted contracts

$ 5,349,111

 

$ 4,268,608

Estimated earnings

4,850,889

 

3,211,392

10,200,000

 

7,480,000

Less billings to date

8,068,288

 

5,266,289

$ 2,131,712

 

$ 2,213,711

XML 58 R48.htm IDEA: XBRL DOCUMENT v3.23.2
4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Amounts are included in the accompanying balance sheets (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Amounts are included in the accompanying balance sheets

 

2023

 

2022

Costs and estimated earnings in excess of billings

$ 4,124,182

 

$ 3,336,474

Billings in excess of costs and estimated earnings

1,992,470

 

1,122,763

$ 2,131,712

 

$ 2,213,711

XML 59 R49.htm IDEA: XBRL DOCUMENT v3.23.2
4. Costs and Estimated Earnings on Uncompleted Contracts: Schdule of Status of Projects in progress (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schdule of Status of Projects in progress

 

2023

2022

Number of Projects in progress

22

19

Aggregate percent complete

33%

47%

Aggregate amount remaining

$18,061,484

$7,627,234

Percentage of total value invoiced to customer

29%

35%

XML 60 R50.htm IDEA: XBRL DOCUMENT v3.23.2
5. Maintenance and Other Inventory: Schedule of Maintenance and Other Inventory (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Maintenance and Other Inventory

 

2023

 

2022

Maintenance and other inventory

$ 2,236,106

 

$ 2,334,889

Less allowance for obsolescence

1,232,966

 

1,227,580

$ 1,003,140

 

$ 1,107,309

XML 61 R51.htm IDEA: XBRL DOCUMENT v3.23.2
6. Property and Equipment: Schedule of Property, Plant and Equipment (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Property, Plant and Equipment

 

2023

 

2022

Land

$195,220 

 

$195,220 

Buildings and improvements

10,033,399 

 

9,821,812 

Machinery and equipment

15,278,928 

 

12,824,696 

Office furniture and equipment

2,840,980 

 

2,744,400 

Autos and trucks

24,818 

 

24,818 

Land improvements

483,929 

 

483,929 

28,857,274 

 

26,094,875 

Less accumulated depreciation

17,135,490 

 

16,240,116 

$11,721,784 

 

$9,854,759 

XML 62 R52.htm IDEA: XBRL DOCUMENT v3.23.2
8. Accrued Expenses: Schedule of Accrued Expenses (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Accrued Expenses

 

2023

 

2022

Customer deposits

$367,902 

 

$1,347,709 

Personnel costs

3,023,501 

 

1,587,271 

Other

686,919 

 

479,334 

$4,078,322 

 

$3,414,314 

XML 63 R53.htm IDEA: XBRL DOCUMENT v3.23.2
9. Sales: Disaggregation of Sales Revenue (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Disaggregation of Sales Revenue

 

2023

 

2022

Structural

$ 20,642,326

 

$ 16,267,162

Aerospace / Defense

15,568,695

 

12,440,687

Industrial

3,988,333

 

2,158,733

$ 40,199,354

 

$ 30,866,582

 

XML 64 R54.htm IDEA: XBRL DOCUMENT v3.23.2
10. Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Components of Income Tax Expense (Benefit)

 

2023

 

2022

 

Current tax provision:

 

 

 

 

Federal

$ 1,710,000

 

$ 200,100

 

State

2,000

 

1,400

 

1,712,000

 

201,500

 

Deferred tax provision (benefit):

 

 

 

 

Federal

(494,000)

 

115,500

 

State

-

 

-

 

(494,000)

 

115,500

 

$ 1,218,000

 

$ 317,000

 

XML 65 R55.htm IDEA: XBRL DOCUMENT v3.23.2
10. Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Effective Income Tax Rate Reconciliation

 

A reconciliation of provision for income taxes at the statutory rate to income tax provision at the Company's effective rate is as follows:

 

2023

 

2022

 

Computed tax provision at the expected statutory rate

$1,576,100   

 

$536,800   

 

State income tax - net of Federal tax benefit

(1,600)  

 

1,100   

 

Tax effect of permanent differences:

 

 

 

 

Research tax credits

(283,600)  

 

(275,400)  

 

Foreign-derived intangible income deduction

(66,900)  

 

(12,200)  

 

Other permanent differences

900   

 

3,100   

 

Other

(6,900)  

 

63,600   

 

$1,218,000   

 

$317,000   

 

Effective income tax rate

16.2% 

 

12.4% 

 

XML 66 R56.htm IDEA: XBRL DOCUMENT v3.23.2
10. Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Deferred Tax Assets and Liabilities

 

2023

 

2022

 

Deferred tax assets:

 

 

 

 

Allowance for doubtful receivables

$6,200  

 

$3,400  

 

Tax inventory adjustment

84,300  

 

92,200  

 

Allowance for obsolete inventory

273,200  

 

278,800  

 

Accrued vacation

136,600  

 

84,300  

 

Accrued commissions

9,800  

 

7,000  

 

Warranty reserve

62,700  

 

48,800  

 

R&D tax credit

 

 

84,000  

 

R&D capitalization

678,500  

 

 

 

Stock options issued for services

331,300  

 

277,600  

 

1,582,600  

 

876,100  

 

Deferred tax liabilities:

 

 

 

 

Excess tax depreciation

(1,013,985) 

 

(801,485) 

 

Net deferred tax assets

$568,615  

 

$74,615  

 

XML 67 R57.htm IDEA: XBRL DOCUMENT v3.23.2
11. Earnings Per Common Share: Schedule of Earnings Per Common Share (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Earnings Per Common Share

 

2023

 

2022

Average common shares outstanding

3,506,474

 

3,497,345

Common shares issuable under stock option plans

45,020

 

2,208

Average common shares outstanding assuming dilution

3,551,494

 

3,499,553

XML 68 R58.htm IDEA: XBRL DOCUMENT v3.23.2
14. Stock Option Plans: Schedule of Fair Value Assumptions (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Fair Value Assumptions

 

2023

 

2022

Risk-free interest rate

2.45%

 

2.59%

Expected life in years

4.2

 

4.0

Expected volatility

33%

 

31%

Expected dividend yield

0%

 

0%

XML 69 R59.htm IDEA: XBRL DOCUMENT v3.23.2
14. Stock Option Plans: Schedule of Stock Options Activity (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Stock Options Activity

 

Shares

 

Weighted Average Exercise Price

Intrinsic Value

Outstanding - May 31, 2021

267,750

 

$11.60 

$271,426 

    Options granted

66,750

 

$10.69 

 

    Less: options expired

51,500

 

- 

 

Outstanding - May 31, 2022

283,000

 

$11.43 

$28,248 

    Options granted

85,000

 

$15.75 

 

    Less: options exercised

30,500

 

$9.57 

 

    Less: options expired

4,500

 

- 

 

Outstanding - May 31, 2023

333,000

 

$12.70 

$2,016,961 

XML 70 R60.htm IDEA: XBRL DOCUMENT v3.23.2
14. Stock Option Plans: Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable

The following table summarizes information about stock options outstanding at May 31, 2023:

 

Outstanding and Exercisable

Range of Exercise Prices

Number of Options

Weighted Average Remaining Years of Contractual Life

Weighted Average Exercise Price

$  8.01-$  9.00

13,000

0.9

$  8.87

$  9.01-$10.00

55,000

8.0

$  9.67

$10.01-$11.00

23,500

6.2

$10.16

$11.01-$12.00

140,000

7.5

$11.66

$12.01-$13.00

28,000

2.8

$12.39

$13.01-$14.00

10,000

3.9

$13.80

$16.01-$17.00

10,000

2.9

$16.40

$19.01-$20.00

53,500

8.6

$19.82

$  8.01-$20.00

333,000

6.8

$12.70

 

 

 

 

 

The following table summarizes information about stock options outstanding at May 31, 2022:

 

Outstanding and Exercisable

Range of Exercise Prices

Number of Options

Weighted Average Remaining Years of Contractual Life

Weighted Average Exercise Price

$  7.01-$  8.00

10,000

0.9

$  7.74

$  8.01-$  9.00

19,250

1.5

$  8.64

$  9.01-$10.00

55,000

9.0

$  9.67

$10.01-$11.00

26,500

7.3

$10.14

$11.01-$12.00

112,250

7.8

$11.72

$12.01-$13.00

28,750

3.9

$12.39

$13.01-$14.00

10,000

4.9

$13.80

$16.01-$17.00

10,000

3.9

$16.40

$19.01-$20.00

11,250

4.2

$19.26

$  7.01-$20.00

283,000

6.5

$11.43

XML 71 R61.htm IDEA: XBRL DOCUMENT v3.23.2
19. Cash Flows Information: Schedule of Cash Flow, Supplemental Disclosures (Tables)
12 Months Ended
May 31, 2023
Tables/Schedules  
Schedule of Cash Flow, Supplemental Disclosures

 

2023

 

2022

 

 

 

 

 

 

 Interest paid

None

 

None

 

 

 

 

 

 

 Income taxes paid

$1,705,000

 

None

 

XML 72 R62.htm IDEA: XBRL DOCUMENT v3.23.2
2. Accounts and Other Receivables: Accounts and Other Receivables (Details) - USD ($)
May 31, 2023
May 31, 2022
Accounts Receivable, before Allowance for Credit Loss, Current $ 5,582,970 $ 4,482,792
Less allowance for doubtful accounts 29,466 16,106
Accounts and other receivables, net (Note 2) [1] 5,553,504 4,466,686
Customers    
Accounts Receivable, before Allowance for Credit Loss, Current 5,558,990 4,292,300
Customers - retention    
Accounts Receivable, before Allowance for Credit Loss, Current $ 23,980 $ 190,492
[1] Note 2
XML 73 R63.htm IDEA: XBRL DOCUMENT v3.23.2
3. Inventory: Schedule of Inventory (Details) - USD ($)
May 31, 2023
May 31, 2022
Inventory, Gross $ 6,009,304 $ 5,954,935
Less allowance for obsolescence 68,000 100,000
Inventory, Net 5,941,304 5,854,935
Raw Materials    
Inventory, Gross 673,453 488,393
Work-in-process    
Inventory, Gross 5,005,416 5,166,271
Finished goods    
Inventory, Gross $ 330,435 $ 300,271
XML 74 R64.htm IDEA: XBRL DOCUMENT v3.23.2
4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Costs incurred on uncompleted contracts and Estimated earnings (Details) - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Costs incurred on uncompleted contracts $ 5,349,111 $ 4,268,608
Costs incurred on uncompleted contracts, Estimated earnings 4,850,889 3,211,392
Costs incurred on uncompleted contracts, Gross 10,200,000 7,480,000
Costs incurred on uncompleted contracts, Billings to date 8,068,288 5,266,289
Costs incurred on uncompleted contracts, Net $ 2,131,712 $ 2,213,711
XML 75 R65.htm IDEA: XBRL DOCUMENT v3.23.2
4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Amounts are included in the accompanying balance sheets (Details) - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Costs and estimated earnings in excess of billings $ 4,124,182 $ 3,336,474
Billings in excess of costs and estimated earnings 1,992,470 1,122,763
Costs incurred on uncompleted contracts, Net $ 2,131,712 $ 2,213,711
XML 76 R66.htm IDEA: XBRL DOCUMENT v3.23.2
4. Costs and Estimated Earnings on Uncompleted Contracts: Schdule of Status of Projects in progress (Details)
May 31, 2023
USD ($)
May 31, 2022
USD ($)
Details    
Number of Projects in progress 22 19
Aggregate percent complete 33.00% 47.00%
Aggregate amount remaining $ 18,061,484 $ 7,627,234
Percentage of total value invoiced to customer 29.00% 35.00%
XML 77 R67.htm IDEA: XBRL DOCUMENT v3.23.2
4. Costs and Estimated Earnings on Uncompleted Contracts (Details) - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Revenues Recognized For amounts included in billings in excess of costs and estimated earnings $ 1,123,000 $ 1,362,000
XML 78 R68.htm IDEA: XBRL DOCUMENT v3.23.2
5. Maintenance and Other Inventory: Schedule of Maintenance and Other Inventory (Details) - USD ($)
May 31, 2023
May 31, 2022
Details    
Maintenance and other inventory, Gross $ 2,236,106 $ 2,334,889
Maintenance and other inventory, allowance for obsolescence 1,232,966 1,227,580
Maintenance and other inventory, Net $ 1,003,140 $ 1,107,309
XML 79 R69.htm IDEA: XBRL DOCUMENT v3.23.2
5. Maintenance and Other Inventory (Details) - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Inventory disposed of $ 322,000 $ 772,000
Provision for potential inventory obsolescence $ 295,000 $ 0
XML 80 R70.htm IDEA: XBRL DOCUMENT v3.23.2
6. Property and Equipment: Schedule of Property, Plant and Equipment (Details) - USD ($)
May 31, 2023
May 31, 2022
Property, Plant and Equipment, Gross $ 28,857,274 $ 26,094,875
Less accumulated depreciation 17,135,490 16,240,116
Property and equipment, net (Note 6) [1] 11,721,784 9,854,759
Land    
Property, Plant and Equipment, Gross 195,220 195,220
Building Improvements    
Property, Plant and Equipment, Gross 10,033,399 9,821,812
Machinery and Equipment    
Property, Plant and Equipment, Gross 15,278,928 12,824,696
Furniture and Fixtures    
Property, Plant and Equipment, Gross 2,840,980 2,744,400
Vehicles    
Property, Plant and Equipment, Gross 24,818 24,818
Land Improvements    
Property, Plant and Equipment, Gross $ 483,929 $ 483,929
[1] Note 6
XML 81 R71.htm IDEA: XBRL DOCUMENT v3.23.2
6. Property and Equipment (Details) - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Depreciation $ 1,472,455 $ 1,347,442
Commitments to make capital expenditures $ 107,000  
XML 82 R72.htm IDEA: XBRL DOCUMENT v3.23.2
7. Short-Term Borrowings (Details) - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Long-Term Line of Credit $ 10,000,000  
Line of Credit Facility, Average Outstanding Amount 0 $ 0
Outstanding checks $ 13,873 $ 193,478
XML 83 R73.htm IDEA: XBRL DOCUMENT v3.23.2
8. Accrued Expenses: Schedule of Accrued Expenses (Details) - USD ($)
May 31, 2023
May 31, 2022
Accrued expenses (Note 8) [1] $ 4,078,322 $ 3,414,314
Customer deposits    
Accrued expenses (Note 8) 367,902 1,347,709
Personnel costs    
Accrued expenses (Note 8) 3,023,501 1,587,271
Other    
Accrued expenses (Note 8) $ 686,919 $ 479,334
[1] Note 8
XML 84 R74.htm IDEA: XBRL DOCUMENT v3.23.2
9. Sales: Disaggregation of Sales Revenue (Details) - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Sales, net (Note 9) [1] $ 40,199,354 $ 30,866,582
Structural    
Sales, net (Note 9) 20,642,326 16,267,162
Aerospace / Defense    
Sales, net (Note 9) 15,568,695 12,440,687
Industrial    
Sales, net (Note 9) $ 3,988,333 $ 2,158,733
[1] Note 9
XML 85 R75.htm IDEA: XBRL DOCUMENT v3.23.2
10. Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Details) - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Current tax provision    
Federal $ 1,710,000 $ 200,100
State 2,000 1,400
Current Federal, State and Local, Tax Expense (Benefit) 1,712,000 201,500
Deferred tax provision (benefit)    
Federal (494,000) 115,500
State 0 0
Deferred Federal, State and Local, Tax Expense (Benefit) (494,000) 115,500
Provision for income taxes (Note 10) [1] $ 1,218,000 $ 317,000
[1] Note 10Note 10
XML 86 R76.htm IDEA: XBRL DOCUMENT v3.23.2
10. Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Details) - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Computed tax provision at the expected statutory rate $ 1,576,100 $ 536,800
State income tax - net of Federal tax benefit (1,600) 1,100
Tax effect of permanent differences    
Research tax credits (283,600) (275,400)
Foreign-derived intangible income deduction (66,900) (12,200)
Other permanent differences 900 3,100
Other Adjustments (6,900) 63,600
Provision for income taxes (Note 10) [1] $ 1,218,000 $ 317,000
Effective income tax rate 16.20% 12.40%
[1] Note 10Note 10
XML 87 R77.htm IDEA: XBRL DOCUMENT v3.23.2
10. Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Details) - USD ($)
May 31, 2023
May 31, 2022
Deferred tax assets    
Allowance for doubtful receivables $ 6,200 $ 3,400
Tax inventory adjustment 84,300 92,200
Allowance for obsolete inventory 273,200 278,800
Accrued vacation 136,600 84,300
Accrued commissions 9,800 7,000
Warranty reserve 62,700 48,800
R&D tax credit 0 84,000
R&D capitalization 678,500 0
Stock options issued for services 331,300 277,600
Deferred Tax Assets, Gross 1,582,600 876,100
Deferred tax liabilities    
Excess tax depreciation (1,013,985) (801,485)
Net deferred tax assets $ 568,615 $ 74,615
XML 88 R78.htm IDEA: XBRL DOCUMENT v3.23.2
10. Income Taxes (Details) - USD ($)
May 31, 2023
May 31, 2022
Details    
Deferred Tax Assets, Gross $ 1,582,600 $ 876,100
XML 89 R79.htm IDEA: XBRL DOCUMENT v3.23.2
11. Earnings Per Common Share: Schedule of Earnings Per Common Share (Details) - shares
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Average common shares outstanding 3,506,474 3,497,345
Common shares issuable under stock option plans 45,020 2,208
Average common shares outstanding assuming dilution 3,551,494 3,499,553
XML 90 R80.htm IDEA: XBRL DOCUMENT v3.23.2
13. Employee Stock Purchase Plan (Details) - shares
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Common shares issued to employees 922 1,496
Shares reserved for further issue 216,365  
XML 91 R81.htm IDEA: XBRL DOCUMENT v3.23.2
14. Stock Option Plans: Schedule of Fair Value Assumptions (Details)
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Risk-free interest rate 2.45% 2.59%
Expected life in years 4 years 2 months 12 days 4 years
Expected volatility 33.00% 31.00%
Expected dividend yield 0.00% 0.00%
XML 92 R82.htm IDEA: XBRL DOCUMENT v3.23.2
14. Stock Option Plans: Schedule of Stock Options Activity (Details) - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number, Beginning Balance 283,000 267,750
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price, Beginning Balance $ 11.43 $ 11.60
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value $ 28,248 $ 271,426
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross 85,000 66,750
Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price $ 15.75 $ 10.69
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Expirations in Period 4,500 51,500
Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Expirations in Period, Weighted Average Exercise Price $ 0 $ 0
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number, Ending Balance 333,000 283,000
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price, Ending Balance $ 12.70 $ 11.43
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value $ 2,016,961 $ 28,248
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period 30,500  
Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price $ 9.57  
XML 93 R83.htm IDEA: XBRL DOCUMENT v3.23.2
14. Stock Option Plans: Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable (Details) - $ / shares
12 Months Ended
May 31, 2023
May 31, 2022
$ 8.01-$ 9.00    
Number of Options 13,000 19,250
Weighted Average Remaining Years of Contractual Life 10 months 24 days 1 year 6 months
Weighted Average Exercise Price $ 8.87 $ 8.64
$ 9.01-$10.00    
Number of Options 55,000 55,000
Weighted Average Remaining Years of Contractual Life 8 years 9 years
Weighted Average Exercise Price $ 9.67 $ 9.67
$10.01-$11.00    
Number of Options 23,500 26,500
Weighted Average Remaining Years of Contractual Life 6 years 2 months 12 days 7 years 3 months 18 days
Weighted Average Exercise Price $ 10.16 $ 10.14
$11.01-$12.00    
Number of Options 140,000 112,250
Weighted Average Remaining Years of Contractual Life 7 years 6 months 7 years 9 months 18 days
Weighted Average Exercise Price $ 11.66 $ 11.72
$12.01-$13.00    
Number of Options 28,000 28,750
Weighted Average Remaining Years of Contractual Life 2 years 9 months 18 days 3 years 10 months 24 days
Weighted Average Exercise Price $ 12.39 $ 12.39
$13.01-$14.00    
Number of Options 10,000 10,000
Weighted Average Remaining Years of Contractual Life 3 years 10 months 24 days 4 years 10 months 24 days
Weighted Average Exercise Price $ 13.80 $ 13.80
$16.01-$17.00    
Number of Options 10,000 10,000
Weighted Average Remaining Years of Contractual Life 2 years 10 months 24 days 3 years 10 months 24 days
Weighted Average Exercise Price $ 16.40 $ 16.40
$19.01-$20.00    
Number of Options 53,500 11,250
Weighted Average Remaining Years of Contractual Life 8 years 7 months 6 days 4 years 2 months 12 days
Weighted Average Exercise Price $ 19.82 $ 19.26
$ 8.01-$20.00    
Number of Options 333,000  
Weighted Average Remaining Years of Contractual Life 6 years 9 months 18 days  
Weighted Average Exercise Price $ 12.70  
$ 7.01-$ 8.00    
Number of Options   10,000
Weighted Average Remaining Years of Contractual Life   10 months 24 days
Weighted Average Exercise Price   $ 7.74
$ 7.01-$20.00    
Number of Options   283,000
Weighted Average Remaining Years of Contractual Life   6 years 6 months
Weighted Average Exercise Price   $ 11.43
XML 94 R84.htm IDEA: XBRL DOCUMENT v3.23.2
15. Preferred Stock (Details)
12 Months Ended
May 31, 2023
shares
Details  
Preferred stock authorized but unissued 2,000,000
XML 95 R85.htm IDEA: XBRL DOCUMENT v3.23.2
16. Treasury Stock (Details) - shares
May 31, 2023
May 31, 2022
Details    
Treasury Stock, Common, Shares 567,751 558,834
XML 96 R86.htm IDEA: XBRL DOCUMENT v3.23.2
17. Retirement Plan (Details) - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Pension and Other Postretirement Benefits Cost (Reversal of Cost) $ 371,881 $ 313,269
XML 97 R87.htm IDEA: XBRL DOCUMENT v3.23.2
19. Cash Flows Information: Schedule of Cash Flow, Supplemental Disclosures (Details) - USD ($)
12 Months Ended
May 31, 2023
May 31, 2022
Details    
Interest paid $ 0 $ 0
Income taxes paid $ 1,705,000 $ 0
XML 98 R88.htm IDEA: XBRL DOCUMENT v3.23.2
21. Legal Proceedings (Details)
12 Months Ended
May 31, 2023
Details  
Loss Contingency, Parties Jointly and Severally Liable in Litigation Taylor Devices Inc. (the “Company”) has been named as a Third-Party Defendant
Loss Contingency, Name of Plaintiff Board of Managers of the 432 Park Condominium, et al
Loss Contingency, Name of Defendant 56th and Park (NY) Owner LLC, et al
Loss Contingency, Lawsuit Filing Date September 23, 2021
Loss Contingency, Allegations The Owner alleges “over 1500 identified construction and design defects to the common elements of” residential and commercial units at the Building, based upon a report generated by a consultant (SBI Consultants Inc.) retained by the Owner
Loss Contingency, Management's Assessment and Process Management of the Company vigorously disputes the allegations in the Third-Party Complaint.
Loss Contingency, Inestimable Loss it is not practical to quantify likely damages to the Company in the event of an unfavorable outcome on liability
XML 99 tayd-20230531_htm.xml IDEA: XBRL DOCUMENT 0000096536 2022-06-01 2023-05-31 0000096536 2023-05-31 0000096536 2022-11-30 0000096536 2023-08-15 0000096536 2022-05-31 0000096536 2021-06-01 2022-05-31 0000096536 us-gaap:CommonStockMember 2022-05-31 0000096536 us-gaap:CommonStockMember 2021-05-31 0000096536 us-gaap:CommonStockMember 2022-06-01 2023-05-31 0000096536 us-gaap:CommonStockMember 2021-06-01 2022-05-31 0000096536 us-gaap:CommonStockMember 2023-05-31 0000096536 us-gaap:AdditionalPaidInCapitalMember 2022-05-31 0000096536 us-gaap:AdditionalPaidInCapitalMember 2021-05-31 0000096536 us-gaap:AdditionalPaidInCapitalMember 2022-06-01 2023-05-31 0000096536 us-gaap:AdditionalPaidInCapitalMember 2021-06-01 2022-05-31 0000096536 us-gaap:AdditionalPaidInCapitalMember 2023-05-31 0000096536 us-gaap:RetainedEarningsMember 2022-05-31 0000096536 us-gaap:RetainedEarningsMember 2021-05-31 0000096536 us-gaap:RetainedEarningsMember 2022-06-01 2023-05-31 0000096536 us-gaap:RetainedEarningsMember 2021-06-01 2022-05-31 0000096536 us-gaap:RetainedEarningsMember 2023-05-31 0000096536 us-gaap:TreasuryStockCommonMember 2022-05-31 0000096536 us-gaap:TreasuryStockCommonMember 2021-05-31 0000096536 us-gaap:TreasuryStockCommonMember 2022-06-01 2023-05-31 0000096536 us-gaap:TreasuryStockCommonMember 2021-06-01 2022-05-31 0000096536 us-gaap:TreasuryStockCommonMember 2023-05-31 0000096536 2021-05-31 0000096536 fil:CustomersMember 2023-05-31 0000096536 fil:CustomersMember 2022-05-31 0000096536 fil:CustomersRetentionMember 2023-05-31 0000096536 fil:CustomersRetentionMember 2022-05-31 0000096536 us-gaap:PublicUtilitiesInventoryRawMaterialsMember 2023-05-31 0000096536 us-gaap:PublicUtilitiesInventoryRawMaterialsMember 2022-05-31 0000096536 fil:WorkInProcessMember 2023-05-31 0000096536 fil:WorkInProcessMember 2022-05-31 0000096536 fil:FinishedGoodsMember 2023-05-31 0000096536 fil:FinishedGoodsMember 2022-05-31 0000096536 us-gaap:LandMember 2023-05-31 0000096536 us-gaap:LandMember 2022-05-31 0000096536 us-gaap:BuildingImprovementsMember 2023-05-31 0000096536 us-gaap:BuildingImprovementsMember 2022-05-31 0000096536 us-gaap:MachineryAndEquipmentMember 2023-05-31 0000096536 us-gaap:MachineryAndEquipmentMember 2022-05-31 0000096536 us-gaap:FurnitureAndFixturesMember 2023-05-31 0000096536 us-gaap:FurnitureAndFixturesMember 2022-05-31 0000096536 us-gaap:VehiclesMember 2023-05-31 0000096536 us-gaap:VehiclesMember 2022-05-31 0000096536 us-gaap:LandImprovementsMember 2023-05-31 0000096536 us-gaap:LandImprovementsMember 2022-05-31 0000096536 fil:CustomerDepositsMember 2023-05-31 0000096536 fil:CustomerDepositsMember 2022-05-31 0000096536 fil:PersonnelCostsMember 2023-05-31 0000096536 fil:PersonnelCostsMember 2022-05-31 0000096536 fil:OtherMember 2023-05-31 0000096536 fil:OtherMember 2022-05-31 0000096536 fil:StructuralMember 2022-06-01 2023-05-31 0000096536 fil:StructuralMember 2021-06-01 2022-05-31 0000096536 fil:AerospaceDefenseMember 2022-06-01 2023-05-31 0000096536 fil:AerospaceDefenseMember 2021-06-01 2022-05-31 0000096536 fil:IndustrialMember 2022-06-01 2023-05-31 0000096536 fil:IndustrialMember 2021-06-01 2022-05-31 0000096536 fil:N8019001Member 2022-06-01 2023-05-31 0000096536 fil:N8019001Member 2023-05-31 0000096536 fil:N90110001Member 2022-06-01 2023-05-31 0000096536 fil:N90110001Member 2023-05-31 0000096536 fil:N100111001Member 2022-06-01 2023-05-31 0000096536 fil:N100111001Member 2023-05-31 0000096536 fil:N110112001Member 2022-06-01 2023-05-31 0000096536 fil:N110112001Member 2023-05-31 0000096536 fil:N120113001Member 2022-06-01 2023-05-31 0000096536 fil:N120113001Member 2023-05-31 0000096536 fil:N130114001Member 2022-06-01 2023-05-31 0000096536 fil:N130114001Member 2023-05-31 0000096536 fil:N160117001Member 2022-06-01 2023-05-31 0000096536 fil:N160117001Member 2023-05-31 0000096536 fil:N190120001Member 2022-06-01 2023-05-31 0000096536 fil:N190120001Member 2023-05-31 0000096536 fil:N80120001Member 2022-06-01 2023-05-31 0000096536 fil:N80120001Member 2023-05-31 0000096536 fil:N701800Member 2022-05-31 0000096536 fil:N701800Member 2021-06-01 2022-05-31 0000096536 fil:N8019001Member 2022-05-31 0000096536 fil:N8019001Member 2021-06-01 2022-05-31 0000096536 fil:N90110001Member 2022-05-31 0000096536 fil:N90110001Member 2021-06-01 2022-05-31 0000096536 fil:N100111001Member 2022-05-31 0000096536 fil:N100111001Member 2021-06-01 2022-05-31 0000096536 fil:N110112001Member 2022-05-31 0000096536 fil:N110112001Member 2021-06-01 2022-05-31 0000096536 fil:N120113001Member 2022-05-31 0000096536 fil:N120113001Member 2021-06-01 2022-05-31 0000096536 fil:N130114001Member 2022-05-31 0000096536 fil:N130114001Member 2021-06-01 2022-05-31 0000096536 fil:N160117001Member 2022-05-31 0000096536 fil:N160117001Member 2021-06-01 2022-05-31 0000096536 fil:N190120001Member 2022-05-31 0000096536 fil:N190120001Member 2021-06-01 2022-05-31 0000096536 fil:N7012000Member 2022-05-31 0000096536 fil:N7012000Member 2021-06-01 2022-05-31 pure iso4217:USD shares iso4217:USD shares 0000096536 --05-31 false 2023 FY 10-K true 2023-05-31 false 000-3498 TAYLOR DEVICES INC NY 16-0797789 90 Taylor Drive North Tonawanda NY 14120 Address of principal executive offices Registrant's telephone number, including area code 716 694-0800 No No Yes Yes Non-accelerated Filer true false false false false 46934000 3521377 Lumsden &amp; McCormick, LLP 130 Buffalo, New York 3575219 22517038 24514757 1097450 5553504 4466686 5941304 5854935 439607 468489 228947 235947 4124182 3336474 44377520 37977019 1003140 1107309 11721784 9854759 210120 205359 568615 74615 57881179 49219061 1717657 1426830 4078322 3414314 1992470 1122763 7788449 5963907 0.025 0.025 8000000 8000000 4088193 4088193 4056771 4056771 102127 101342 10947089 10227916 42128256 35840898 567751 558834 3084742 2915002 50092730 43255154 57881179 49219061 40199354 30866582 24133312 21239886 16066042 9626696 1096807 999184 8160169 6154735 6809066 2472777 698864 4543 -2572 79103 696292 83646 7505358 2556423 1218000 317000 6287358 2239423 1.79 0.64 1.77 0.64 101342 101305 22 37 763 0 102127 101342 10227916 10010430 10854 16208 291066 0 417253 201278 10947089 10227916 35840898 33601475 6287358 2239423 42128256 35840898 -2915002 -2915002 -169740 0 -3084742 -2915002 50092730 43255154 6287358 2239423 1472455 1347442 417253 201278 -23360 0 -20015 1530 -295014 0 -494000 115500 1110178 346122 277214 -486191 -28882 -54258 -7000 -218831 -787708 -1836870 290827 -360495 664008 1429841 869707 -239222 7706779 3308525 3359495 1391577 0 7500 23417307 438 4761 4821 -26781563 -1389336 302705 16245 169740 0 132965 16245 -18941819 1935434 22517038 20581604 3575219 22517038 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>1.  Summary of Significant Accounting Policies:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Nature of Operations:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Taylor Devices, Inc. (the Company) manufactures and sells a single group of very similar products that have many different applications for customers.  These similar products are included in one of eight categories; namely, Seismic Dampers, Fluidicshoks®, Crane and Industrial Buffers, Self-Adjusting Shock Absorbers, Liquid Die Springs, Vibration Dampers, Machined Springs and Custom Actuators for use in various types of machinery, equipment and structures, primarily to customers which are located throughout the United States and several foreign countries.  The products are manufactured at the Company's sole operating facility in the United States where all of the Company's long-lived assets reside. Management does not track or otherwise account for sales broken down by these categories.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">81% of the Company's 2023 revenue was generated from sales to customers in the United States and 11% was from sales to customers in Asia.  Remaining sales were to customers in other countries in North America, Europe, Australia, and South America.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">76% of the Company's 2022 revenue was generated from sales to customers in the United States and 14% was from sales to customers in Asia.  Remaining sales were to customers in other countries in North America, Europe, Australia, and South America.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Principles of Consolidation:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The accompanying consolidated financial statements include the accounts of the Company and its wholly owned subsidiary, Tayco Realty Corporation (Realty).  All inter-company transactions and balances have been eliminated in consolidation.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Subsequent Events:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><span style="color:#000000">The Company has evaluated events and transactions for potential recognition or disclosure in the financial statements through the date the financial statements were issued.</span></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Use of Estimates:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">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 amounts reported in the financial statements and accompanying notes.  Actual results could differ from those estimates.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Cash and Cash Equivalents:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company includes all highly liquid investments in money market funds in cash and cash equivalents on the accompanying balance sheets. </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Cash and cash equivalents in financial institutions may exceed insured limits at various times during the year and subject the Company to concentrations of credit risk.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080"><b>Short-term Investments:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">At times, the Company invests excess funds in liquid interest earning instruments. Short-term investments at May 31, 2023 and May 31, 2022 include “available for sale” money market funds, US treasury securities and corporate bonds stated at fair value, which approximates cost. The short-term investments (20) mature on various dates during the period June 2023 to November 2026. Unrealized holding gains and losses would be presented as a separate component of accumulated other comprehensive income, net of deferred income taxes. Realized gains and losses on the sale of investments are determined using the specific identification method.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The short-term investments are valued using pricing models maximizing the use of observable inputs for similar securities. This includes basing value on yields currently available on comparable securities of issuers with similar credit ratings.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080"><b>Accounts and Other Receivables:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Accounts and other receivables are stated at an amount management expects to collect from outstanding balances.  Management provides for probable uncollectible accounts through a charge to earnings and a credit to a valuation allowance based on its assessment of the current status of individual accounts.  Balances that are still outstanding after management has used reasonable collection efforts are written off through a charge to the valuation allowance and a credit to the receivable.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Inventory:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Inventory is stated at the lower of average cost or net realizable value. Average cost approximates first-in, first-out cost.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Property and Equipment:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><span style="color:#000000">Property and equipment is stated at cost net of accumulated depreciation.  Depreciation is provided primarily using the straight-line method for financial reporting purposes and accelerated methods for income tax reporting purposes.  Maintenance and repairs are charged to operations as incurred; significant improvements are capitalized.</span></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Cash Value of Life Insurance:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Cash value of life insurance is stated at the surrender value of the contracts.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Revenue Recognition:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">Revenue is recognized (generally at fixed prices) when, or as, the Company transfers control of promised products or services to a customer in an amount that reflects the consideration to which the Company expects to be entitled in exchange for transferring those products or services.</p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">A performance obligation is a promise in a contract to transfer a distinct good or service to the customer, and is the unit of account. A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. The majority of our contracts have a single performance obligation as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts which are, therefore, not distinct. Promised goods or services that are immaterial in the context of the contract are not separately assessed as performance obligations.  </p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">For contracts with customers in which the Company satisfies a promise to the customer to provide a product that has no alternative use to the Company and the Company has enforceable rights to payment for progress completed to date inclusive of profit, the Company satisfies the performance obligation and recognizes revenue over time (generally less than one year), using costs incurred to date relative to total estimated costs at completion to measure progress toward satisfying our performance obligations.  Incurred cost represents work performed, which corresponds with, and thereby best depicts, the transfer of control to the customer.  Contract costs include labor, material and overhead.  Adjustments to cost estimates are made periodically, and losses expected to be incurred on contracts in progress are charged to operations in the period such losses are determined.  Other sales to customers are recognized upon shipment to the customer based on contract prices and terms.  In the year ended May 31, 2023, 61% of revenue was recorded for contracts in which revenue was recognized over time while 39% was recognized at a point in time.  In the year ended May 31, 2022, 60% of revenue was recorded for contracts in which revenue was recognized over time while 40% was recognized at a point in time. </p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">Progress payments are typically negotiated for longer term projects.  Payments are otherwise due once performance obligations are complete (generally at shipment and transfer of title).  For financial statement presentation purposes, the Company nets progress billings against the total costs incurred on uncompleted contracts.  The asset, “costs and estimated earnings in excess of billings,” represents revenues recognized in excess of amounts billed.  The liability, “billings in excess of costs and estimated earnings,” represents billings in excess of revenues recognized.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000">If applicable, the Company recognizes an asset for the incremental material costs of obtaining a contract with a customer if the Company expects the benefit of those costs to be longer than one year and the costs are expected to be recovered.  As of May 31, 2023 and 2022, the Company does not have material incremental costs on any open contracts with an original expected duration of greater than one year, and therefore such costs are expensed as incurred.  These incremental costs include, but are not limited to, sales commissions incurred to obtain a contract with a customer.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Shipping and Handling Costs:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Shipping and handling costs on incoming inventory items are classified as a component of cost of goods sold, while shipping and handling costs on outgoing shipments to customers are classified as a component of selling, general and administrative expenses.  The amounts of these costs classified as a component of selling, general and administrative expenses were $366,763 and $238,536 for the years ended May 31, 2023 and 2022.  Shipping and handling activities that occur after the customer has obtained control of the product are considered fulfillment activities, not performance obligations.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080"><b>Income Taxes:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The provision for income taxes provides for the tax effects of transactions reported in the financial statements regardless of when such taxes are payable.  Deferred tax assets and liabilities are recognized for the expected future tax consequences of temporary differences between the tax and financial statement basis of assets and liabilities.  Deferred taxes are based on tax laws currently enacted with tax rates expected to be in effect when the taxes are actually paid or recovered. </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company's practice is to recognize interest related to income tax matters in interest income / expense and to recognize penalties in selling, general and administrative expenses.  The Company did not have any accrued interest or penalties included in its consolidated balance sheets at May 31, 2023 and 2022.  The Company recorded no interest expense or penalties in its consolidated statements of income during the years ended May 31, 2023 and 2022. </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><span style="color:#000000">The Company believes it is no longer subject to examination by federal and state taxing authorities for years prior to May 31, 2020.</span></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Sales Taxes:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><span style="color:#000000">Certain jurisdictions impose a sales tax on Company sales to nonexempt customers.  The Company collects these taxes from customers and remits the entire amount as required by the applicable law.  The Company excludes from revenues and expenses the tax collected and remitted.</span></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Stock-Based Compensation:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company measures compensation cost arising from the grant of share-based payments to employees at fair value and recognizes such cost in income over the period during which the employee is required to provide service in exchange for the award. The stock-based compensation expense for the years ended May 31, 2023 and 2022 was $417,253 and $201,278.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>New Accounting Standards:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Any recently issued Accounting Standards Codification (ASC) guidance has either been implemented or is not significant to the Company.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Reclassifications:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The 2022 financial statements have been reclassified to conform with the presentation adopted for 2023.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Nature of Operations:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Taylor Devices, Inc. (the Company) manufactures and sells a single group of very similar products that have many different applications for customers.  These similar products are included in one of eight categories; namely, Seismic Dampers, Fluidicshoks®, Crane and Industrial Buffers, Self-Adjusting Shock Absorbers, Liquid Die Springs, Vibration Dampers, Machined Springs and Custom Actuators for use in various types of machinery, equipment and structures, primarily to customers which are located throughout the United States and several foreign countries.  The products are manufactured at the Company's sole operating facility in the United States where all of the Company's long-lived assets reside. Management does not track or otherwise account for sales broken down by these categories.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">81% of the Company's 2023 revenue was generated from sales to customers in the United States and 11% was from sales to customers in Asia.  Remaining sales were to customers in other countries in North America, Europe, Australia, and South America.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">76% of the Company's 2022 revenue was generated from sales to customers in the United States and 14% was from sales to customers in Asia.  Remaining sales were to customers in other countries in North America, Europe, Australia, and South America.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Principles of Consolidation:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The accompanying consolidated financial statements include the accounts of the Company and its wholly owned subsidiary, Tayco Realty Corporation (Realty).  All inter-company transactions and balances have been eliminated in consolidation.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Subsequent Events:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><span style="color:#000000">The Company has evaluated events and transactions for potential recognition or disclosure in the financial statements through the date the financial statements were issued.</span></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Use of Estimates:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">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 amounts reported in the financial statements and accompanying notes.  Actual results could differ from those estimates.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Cash and Cash Equivalents:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company includes all highly liquid investments in money market funds in cash and cash equivalents on the accompanying balance sheets. </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Cash and cash equivalents in financial institutions may exceed insured limits at various times during the year and subject the Company to concentrations of credit risk.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080"><b>Short-term Investments:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">At times, the Company invests excess funds in liquid interest earning instruments. Short-term investments at May 31, 2023 and May 31, 2022 include “available for sale” money market funds, US treasury securities and corporate bonds stated at fair value, which approximates cost. The short-term investments (20) mature on various dates during the period June 2023 to November 2026. Unrealized holding gains and losses would be presented as a separate component of accumulated other comprehensive income, net of deferred income taxes. Realized gains and losses on the sale of investments are determined using the specific identification method.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The short-term investments are valued using pricing models maximizing the use of observable inputs for similar securities. This includes basing value on yields currently available on comparable securities of issuers with similar credit ratings.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080"><b>Accounts and Other Receivables:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Accounts and other receivables are stated at an amount management expects to collect from outstanding balances.  Management provides for probable uncollectible accounts through a charge to earnings and a credit to a valuation allowance based on its assessment of the current status of individual accounts.  Balances that are still outstanding after management has used reasonable collection efforts are written off through a charge to the valuation allowance and a credit to the receivable.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Inventory:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Inventory is stated at the lower of average cost or net realizable value. Average cost approximates first-in, first-out cost.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Property and Equipment:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><span style="color:#000000">Property and equipment is stated at cost net of accumulated depreciation.  Depreciation is provided primarily using the straight-line method for financial reporting purposes and accelerated methods for income tax reporting purposes.  Maintenance and repairs are charged to operations as incurred; significant improvements are capitalized.</span></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Cash Value of Life Insurance:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Cash value of life insurance is stated at the surrender value of the contracts.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Revenue Recognition:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">Revenue is recognized (generally at fixed prices) when, or as, the Company transfers control of promised products or services to a customer in an amount that reflects the consideration to which the Company expects to be entitled in exchange for transferring those products or services.</p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">A performance obligation is a promise in a contract to transfer a distinct good or service to the customer, and is the unit of account. A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. The majority of our contracts have a single performance obligation as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts which are, therefore, not distinct. Promised goods or services that are immaterial in the context of the contract are not separately assessed as performance obligations.  </p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">For contracts with customers in which the Company satisfies a promise to the customer to provide a product that has no alternative use to the Company and the Company has enforceable rights to payment for progress completed to date inclusive of profit, the Company satisfies the performance obligation and recognizes revenue over time (generally less than one year), using costs incurred to date relative to total estimated costs at completion to measure progress toward satisfying our performance obligations.  Incurred cost represents work performed, which corresponds with, and thereby best depicts, the transfer of control to the customer.  Contract costs include labor, material and overhead.  Adjustments to cost estimates are made periodically, and losses expected to be incurred on contracts in progress are charged to operations in the period such losses are determined.  Other sales to customers are recognized upon shipment to the customer based on contract prices and terms.  In the year ended May 31, 2023, 61% of revenue was recorded for contracts in which revenue was recognized over time while 39% was recognized at a point in time.  In the year ended May 31, 2022, 60% of revenue was recorded for contracts in which revenue was recognized over time while 40% was recognized at a point in time. </p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">Progress payments are typically negotiated for longer term projects.  Payments are otherwise due once performance obligations are complete (generally at shipment and transfer of title).  For financial statement presentation purposes, the Company nets progress billings against the total costs incurred on uncompleted contracts.  The asset, “costs and estimated earnings in excess of billings,” represents revenues recognized in excess of amounts billed.  The liability, “billings in excess of costs and estimated earnings,” represents billings in excess of revenues recognized.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000">If applicable, the Company recognizes an asset for the incremental material costs of obtaining a contract with a customer if the Company expects the benefit of those costs to be longer than one year and the costs are expected to be recovered.  As of May 31, 2023 and 2022, the Company does not have material incremental costs on any open contracts with an original expected duration of greater than one year, and therefore such costs are expensed as incurred.  These incremental costs include, but are not limited to, sales commissions incurred to obtain a contract with a customer.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Shipping and Handling Costs:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Shipping and handling costs on incoming inventory items are classified as a component of cost of goods sold, while shipping and handling costs on outgoing shipments to customers are classified as a component of selling, general and administrative expenses.  The amounts of these costs classified as a component of selling, general and administrative expenses were $366,763 and $238,536 for the years ended May 31, 2023 and 2022.  Shipping and handling activities that occur after the customer has obtained control of the product are considered fulfillment activities, not performance obligations.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080"><b>Income Taxes:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The provision for income taxes provides for the tax effects of transactions reported in the financial statements regardless of when such taxes are payable.  Deferred tax assets and liabilities are recognized for the expected future tax consequences of temporary differences between the tax and financial statement basis of assets and liabilities.  Deferred taxes are based on tax laws currently enacted with tax rates expected to be in effect when the taxes are actually paid or recovered. </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company's practice is to recognize interest related to income tax matters in interest income / expense and to recognize penalties in selling, general and administrative expenses.  The Company did not have any accrued interest or penalties included in its consolidated balance sheets at May 31, 2023 and 2022.  The Company recorded no interest expense or penalties in its consolidated statements of income during the years ended May 31, 2023 and 2022. </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><span style="color:#000000">The Company believes it is no longer subject to examination by federal and state taxing authorities for years prior to May 31, 2020.</span></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Sales Taxes:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><span style="color:#000000">Certain jurisdictions impose a sales tax on Company sales to nonexempt customers.  The Company collects these taxes from customers and remits the entire amount as required by the applicable law.  The Company excludes from revenues and expenses the tax collected and remitted.</span></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Stock-Based Compensation:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company measures compensation cost arising from the grant of share-based payments to employees at fair value and recognizes such cost in income over the period during which the employee is required to provide service in exchange for the award. The stock-based compensation expense for the years ended May 31, 2023 and 2022 was $417,253 and $201,278.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>New Accounting Standards:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Any recently issued Accounting Standards Codification (ASC) guidance has either been implemented or is not significant to the Company.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>Reclassifications:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The 2022 financial statements have been reclassified to conform with the presentation adopted for 2023.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>2.  Accounts and Other Receivables:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:347.7pt"><tr><td style="width:220.7pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:55pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:220.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Customers</p> </td><td style="width:55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:2pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:53pt"><b>5,558,990</b></kbd> </p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">4,292,300</kbd> </p> </td></tr> <tr><td style="width:220.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Customers – retention</p> </td><td style="width:55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:53pt"><b>23,980</b></kbd> </p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">190,492</kbd> </p> </td></tr> <tr><td style="width:220.7pt" valign="top"></td><td style="width:55pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:53pt"><b>5,582,970</b></kbd> </p> </td><td style="width:4.7pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">4,482,792</kbd> </p> </td></tr> <tr><td style="width:220.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Less allowance for doubtful accounts</p> </td><td style="width:55pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:53pt"><b>29,466</b></kbd> </p> </td><td style="width:4.7pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">16,106</kbd> </p> </td></tr> <tr><td style="width:220.7pt" valign="top"></td><td style="width:55pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:2pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:53pt"><b>5,553,504</b></kbd> </p> </td><td style="width:4.7pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">4,466,686</kbd> </p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Retention receivable from customers represents amounts invoiced to customers where payments have been partially withheld pending completion of the project.  All amounts are expected to be collected within the next fiscal year.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:347.7pt"><tr><td style="width:220.7pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:55pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:220.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Customers</p> </td><td style="width:55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:2pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:53pt"><b>5,558,990</b></kbd> </p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">4,292,300</kbd> </p> </td></tr> <tr><td style="width:220.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Customers – retention</p> </td><td style="width:55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:53pt"><b>23,980</b></kbd> </p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">190,492</kbd> </p> </td></tr> <tr><td style="width:220.7pt" valign="top"></td><td style="width:55pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:53pt"><b>5,582,970</b></kbd> </p> </td><td style="width:4.7pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">4,482,792</kbd> </p> </td></tr> <tr><td style="width:220.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Less allowance for doubtful accounts</p> </td><td style="width:55pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:53pt"><b>29,466</b></kbd> </p> </td><td style="width:4.7pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">16,106</kbd> </p> </td></tr> <tr><td style="width:220.7pt" valign="top"></td><td style="width:55pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:2pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:53pt"><b>5,553,504</b></kbd> </p> </td><td style="width:4.7pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">4,466,686</kbd> </p> </td></tr> </table> 5558990 4292300 23980 190492 5582970 4482792 29466 16106 5553504 4466686 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>3.  Inventory:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:220.1pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:68.05pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Raw materials</p> </td><td style="width:68.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>673,453</b></kbd> </p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">488,393</kbd> </p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Work-in-process</p> </td><td style="width:68.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>5,005,416</b></kbd> </p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">5,166,271</kbd> </p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Finished goods</p> </td><td style="width:68.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>330,435</b></kbd> </p> </td><td style="width:4.7pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">300,271</kbd> </p> </td></tr> <tr><td style="width:220.1pt" valign="top"></td><td style="width:68.05pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>6,009,304</b></kbd> </p> </td><td style="width:4.7pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">5,954,935</kbd> </p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Less allowance for obsolescence</p> </td><td style="width:68.05pt;border-bottom:1pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>68,000</b></kbd> </p> </td><td style="width:4.7pt;border-bottom:1pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:1pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">100,000</kbd> </p> </td></tr> <tr><td style="width:220.1pt;border-bottom:0.5pt solid #000000" valign="top"></td><td style="width:68.05pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>5,941,304</b></kbd> </p> </td><td style="width:4.7pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">5,854,935</kbd> </p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:220.1pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:68.05pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Raw materials</p> </td><td style="width:68.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>673,453</b></kbd> </p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">488,393</kbd> </p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Work-in-process</p> </td><td style="width:68.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>5,005,416</b></kbd> </p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">5,166,271</kbd> </p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Finished goods</p> </td><td style="width:68.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>330,435</b></kbd> </p> </td><td style="width:4.7pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">300,271</kbd> </p> </td></tr> <tr><td style="width:220.1pt" valign="top"></td><td style="width:68.05pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>6,009,304</b></kbd> </p> </td><td style="width:4.7pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">5,954,935</kbd> </p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Less allowance for obsolescence</p> </td><td style="width:68.05pt;border-bottom:1pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>68,000</b></kbd> </p> </td><td style="width:4.7pt;border-bottom:1pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:1pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">100,000</kbd> </p> </td></tr> <tr><td style="width:220.1pt;border-bottom:0.5pt solid #000000" valign="top"></td><td style="width:68.05pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>5,941,304</b></kbd> </p> </td><td style="width:4.7pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">5,854,935</kbd> </p> </td></tr> </table> 673453 488393 5005416 5166271 330435 300271 6009304 5954935 68000 100000 5941304 5854935 <p style="font:10pt Times New Roman;margin:0;color:#000080"><b>4.  Costs and Estimated Earnings on Uncompleted Contracts:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:220.85pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Costs incurred on uncompleted contracts</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 5,349,111</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 4,268,608</p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Estimated earnings</p> </td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>4,850,889</b></p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">3,211,392</p> </td></tr> <tr><td style="width:220.85pt" valign="top"></td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>10,200,000</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">7,480,000</p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Less billings to date</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>8,068,288</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">5,266,289</p> </td></tr> <tr><td style="width:220.85pt" valign="top"></td><td style="width:67.35pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 2,131,712</b></p> </td><td style="width:4.45pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.35pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 2,213,711</p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Amounts are included in the accompanying balance sheets under the following captions:</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:220.6pt" valign="top"></td><td style="width:67.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"> </p> </td><td style="width:67.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:220.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Costs and estimated earnings in excess of billings</p> </td><td style="width:67.3pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 4,124,182</b></p> </td><td style="width:4.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.3pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 3,336,474</p> </td></tr> <tr><td style="width:220.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Billings in excess of costs and estimated earnings </p> </td><td style="width:67.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>1,992,470</b></p> </td><td style="width:4.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">1,122,763 </p> </td></tr> <tr><td style="width:220.6pt" valign="top"></td><td style="width:67.3pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 2,131,712</b></p> </td><td style="width:4.8pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.3pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 2,213,711</p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The following summarizes the status of Projects in progress as of May 31, 2023 and 2022:</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="border-collapse:collapse"><tr><td style="width:252pt" valign="top"></td><td style="width:93.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:93.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:252pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">Number of Projects in progress</p> </td><td style="width:93.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>22</b></p> </td><td style="width:93.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">19</p> </td></tr> <tr><td style="width:252pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">Aggregate percent complete</p> </td><td style="width:93.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>33%</b></p> </td><td style="width:93.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">47%</p> </td></tr> <tr><td style="width:252pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">Aggregate amount remaining</p> </td><td style="width:93.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>$18,061,484</b></p> </td><td style="width:93.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$7,627,234</p> </td></tr> <tr><td style="width:252pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">Percentage of total value invoiced to customer</p> </td><td style="width:93.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>29%</b></p> </td><td style="width:93.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">35%</p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company expects to recognize the majority of remaining revenue on all open projects during the May 31, 2024 fiscal year. </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Revenue recognized during the years ended May 31, 2023 and 2022 for amounts included in billings in excess of costs and estimated earnings as of the beginning of the year amounted to $1,123,000, and $1,362,000.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:220.85pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Costs incurred on uncompleted contracts</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 5,349,111</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 4,268,608</p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Estimated earnings</p> </td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>4,850,889</b></p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">3,211,392</p> </td></tr> <tr><td style="width:220.85pt" valign="top"></td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>10,200,000</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">7,480,000</p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Less billings to date</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>8,068,288</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">5,266,289</p> </td></tr> <tr><td style="width:220.85pt" valign="top"></td><td style="width:67.35pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 2,131,712</b></p> </td><td style="width:4.45pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.35pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 2,213,711</p> </td></tr> </table> 5349111 4268608 4850889 3211392 10200000 7480000 8068288 5266289 2131712 2213711 <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:220.6pt" valign="top"></td><td style="width:67.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"> </p> </td><td style="width:67.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:220.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Costs and estimated earnings in excess of billings</p> </td><td style="width:67.3pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 4,124,182</b></p> </td><td style="width:4.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.3pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 3,336,474</p> </td></tr> <tr><td style="width:220.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Billings in excess of costs and estimated earnings </p> </td><td style="width:67.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>1,992,470</b></p> </td><td style="width:4.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">1,122,763 </p> </td></tr> <tr><td style="width:220.6pt" valign="top"></td><td style="width:67.3pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 2,131,712</b></p> </td><td style="width:4.8pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.3pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 2,213,711</p> </td></tr> </table> 4124182 3336474 -1992470 -1122763 2131712 2213711 <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="border-collapse:collapse"><tr><td style="width:252pt" valign="top"></td><td style="width:93.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:93.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:252pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">Number of Projects in progress</p> </td><td style="width:93.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>22</b></p> </td><td style="width:93.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">19</p> </td></tr> <tr><td style="width:252pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">Aggregate percent complete</p> </td><td style="width:93.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>33%</b></p> </td><td style="width:93.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">47%</p> </td></tr> <tr><td style="width:252pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">Aggregate amount remaining</p> </td><td style="width:93.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>$18,061,484</b></p> </td><td style="width:93.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$7,627,234</p> </td></tr> <tr><td style="width:252pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">Percentage of total value invoiced to customer</p> </td><td style="width:93.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>29%</b></p> </td><td style="width:93.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">35%</p> </td></tr> </table> 22 19 0.33 0.47 18061484 7627234 0.29 0.35 1123000 1362000 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>5.  Maintenance and Other Inventory:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:356.4pt"><tr><td style="width:218.45pt;border-bottom:0.5pt solid #000000" valign="top"></td><td style="width:66.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"> </p> </td><td style="width:66.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:218.45pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Maintenance and other inventory</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 2,236,106</b></p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 2,334,889</p> </td></tr> <tr><td style="width:218.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Less allowance for obsolescence</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>1,232,966</b></p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">1,227,580</p> </td></tr> <tr><td style="width:218.45pt" valign="top"></td><td style="width:66.65pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 1,003,140</b></p> </td><td style="width:4.65pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:66.65pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 1,107,309</p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Maintenance and other inventory represent stock that is estimated to have a product life-cycle in excess of twelve-months.  This stock represents certain items the Company is required to maintain for service of products sold, and items that are generally subject to spontaneous ordering.  This inventory is particularly sensitive to technical obsolescence in the near term due to its use in industries characterized by the continuous introduction of new product lines, rapid technological advances and product obsolescence.  Therefore, management of the Company has recorded an allowance for potential inventory obsolescence.  $322,000 and $772,000 of inventory was disposed of during the years ended May 31, 2023 and 2022.  The provision for potential inventory obsolescence was $295,000 and zero for the years ended May 31, 2023 and 2022.  The Company continues to rework slow-moving inventory, where applicable, to convert it to product to be used on customer orders. </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:356.4pt"><tr><td style="width:218.45pt;border-bottom:0.5pt solid #000000" valign="top"></td><td style="width:66.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"> </p> </td><td style="width:66.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:218.45pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Maintenance and other inventory</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 2,236,106</b></p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 2,334,889</p> </td></tr> <tr><td style="width:218.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Less allowance for obsolescence</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>1,232,966</b></p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">1,227,580</p> </td></tr> <tr><td style="width:218.45pt" valign="top"></td><td style="width:66.65pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 1,003,140</b></p> </td><td style="width:4.65pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:66.65pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 1,107,309</p> </td></tr> </table> 2236106 2334889 1232966 1227580 1003140 1107309 322000 772000 295000 0 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>6.  Property and Equipment:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:220.85pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:-13.9pt;margin-right:6.15pt;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Land</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>195,220</b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">195,220</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Buildings and improvements</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>10,033,399</b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">9,821,812</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Machinery and equipment</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>15,278,928</b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">12,824,696</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Office furniture and equipment</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>2,840,980</b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">2,744,400</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Autos and trucks</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>24,818</b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">24,818</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Land improvements</p> </td><td style="width:67.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>483,929</b></kbd> </p> </td><td style="width:4.45pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">483,929</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"></td><td style="width:67.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>28,857,274</b></kbd> </p> </td><td style="width:4.45pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">26,094,875</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Less accumulated depreciation</p> </td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>17,135,490</b></kbd> </p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">16,240,116</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"></td><td style="width:67.35pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>11,721,784</b></kbd> </p> </td><td style="width:4.45pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">9,854,759</kbd> </p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Depreciation expense was $1,472,455 and $1,347,442 for the years ended May 31, 2023 and 2022.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company has commitments to make capital expenditures of approximately $107,000 as of May 31, 2023.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:220.85pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:-13.9pt;margin-right:6.15pt;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Land</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>195,220</b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">195,220</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Buildings and improvements</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>10,033,399</b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">9,821,812</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Machinery and equipment</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>15,278,928</b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">12,824,696</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Office furniture and equipment</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>2,840,980</b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">2,744,400</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Autos and trucks</p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>24,818</b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">24,818</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Land improvements</p> </td><td style="width:67.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>483,929</b></kbd> </p> </td><td style="width:4.45pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">483,929</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"></td><td style="width:67.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>28,857,274</b></kbd> </p> </td><td style="width:4.45pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">26,094,875</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Less accumulated depreciation</p> </td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>17,135,490</b></kbd> </p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">16,240,116</kbd> </p> </td></tr> <tr><td style="width:220.85pt" valign="top"></td><td style="width:67.35pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>11,721,784</b></kbd> </p> </td><td style="width:4.45pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:67.35pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">9,854,759</kbd> </p> </td></tr> </table> 195220 195220 10033399 9821812 15278928 12824696 2840980 2744400 24818 24818 483929 483929 28857274 26094875 17135490 16240116 11721784 9854759 1472455 1347442 107000 <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"><span style="color:#000080"><b>7.  Short-Term Borrowings:</b></span></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company has available a $10,000,000 bank demand line of credit from a bank, with interest payable at the Company's option of 30, 60 or 90 day LIBOR rate plus 2.25%. Interest payable will change from LIBOR rate plus 2.25% to SOFR rate plus 2.365% effective July 1, 2023. The line is secured by a negative pledge of the Company's real and personal property.  This line of credit is subject to the usual terms and conditions applied by the bank and subject to renewal annually. </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">There is no amount outstanding under the line of credit at May 31, 2023 or May 31, 2022.  </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company uses a cash management facility under which the bank draws against the available line of credit to cover checks presented for payment on a daily basis.  Outstanding checks under this arrangement totaled $13,873 and $193,478 as of May 31, 2023 and 2022.  These amounts are included in accounts payable.</p> 10000000 0 0 13873 193478 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>8.  Accrued Expenses: </b></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:220.1pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:68.05pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Customer deposits</p> </td><td style="width:68.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>367,902</b></kbd> </p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">1,347,709</kbd> </p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Personnel costs</p> </td><td style="width:68.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>3,023,501</b></kbd> </p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">1,587,271</kbd> </p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Other</p> </td><td style="width:68.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>686,919</b></kbd> </p> </td><td style="width:4.7pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">479,334</kbd> </p> </td></tr> <tr><td style="width:220.1pt;border-bottom:0.5pt solid #000000" valign="top"></td><td style="width:68.05pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>4,078,322</b></kbd> </p> </td><td style="width:4.7pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">3,414,314</kbd> </p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:220.1pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:68.05pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Customer deposits</p> </td><td style="width:68.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>367,902</b></kbd> </p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">1,347,709</kbd> </p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Personnel costs</p> </td><td style="width:68.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>3,023,501</b></kbd> </p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">1,587,271</kbd> </p> </td></tr> <tr><td style="width:220.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Other</p> </td><td style="width:68.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>686,919</b></kbd> </p> </td><td style="width:4.7pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">479,334</kbd> </p> </td></tr> <tr><td style="width:220.1pt;border-bottom:0.5pt solid #000000" valign="top"></td><td style="width:68.05pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt"><b>4,078,322</b></kbd> </p> </td><td style="width:4.7pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">3,414,314</kbd> </p> </td></tr> </table> 367902 1347709 3023501 1587271 686919 479334 4078322 3414314 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>9.  Sales:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company manufactures and sells a single group of very similar products that have many different applications for customers.  These similar products are included in one of eight categories; namely, Seismic Dampers, Fluidicshoks®, Crane and Industrial Buffers, Self-Adjusting Shock Absorbers, Liquid Die Springs, Vibration Dampers, Machined Springs and Custom Actuators.  Management does not track or otherwise account for sales broken down by these categories.  Sales of the Company's products are made to three general groups of customers: industrial, structural and aerospace / defense.  A breakdown of sales to these three general groups of customers is as follows:  </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:216.1pt" valign="top"></td><td style="width:65.95pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"><span style="color:#000080"><b>2023</b></span></p> </td><td style="width:12pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:65.95pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:216.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Structural</p> </td><td style="width:65.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 20,642,326</b></p> </td><td style="width:12pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:65.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 16,267,162</p> </td></tr> <tr><td style="width:216.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Aerospace / Defense</p> </td><td style="width:65.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>15,568,695</b></p> </td><td style="width:12pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:65.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">12,440,687</p> </td></tr> <tr><td style="width:216.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Industrial</p> </td><td style="width:65.95pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>3,988,333</b></p> </td><td style="width:12pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:65.95pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">2,158,733</p> </td></tr> <tr><td style="width:216.1pt" valign="top"></td><td style="width:65.95pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 40,199,354</b></p> </td><td style="width:12pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:65.95pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 30,866,582</p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Sales to a single customer approximated 15% of net sales for 2022.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:216.1pt" valign="top"></td><td style="width:65.95pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"><span style="color:#000080"><b>2023</b></span></p> </td><td style="width:12pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:65.95pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:216.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Structural</p> </td><td style="width:65.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 20,642,326</b></p> </td><td style="width:12pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:65.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 16,267,162</p> </td></tr> <tr><td style="width:216.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Aerospace / Defense</p> </td><td style="width:65.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>15,568,695</b></p> </td><td style="width:12pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:65.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">12,440,687</p> </td></tr> <tr><td style="width:216.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Industrial</p> </td><td style="width:65.95pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>3,988,333</b></p> </td><td style="width:12pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:65.95pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">2,158,733</p> </td></tr> <tr><td style="width:216.1pt" valign="top"></td><td style="width:65.95pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 40,199,354</b></p> </td><td style="width:12pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:65.95pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 30,866,582</p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> 20642326 16267162 15568695 12440687 3988333 2158733 40199354 30866582 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>10.  Income Taxes:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:216.5pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:67.15pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td><td colspan="2" style="width:4.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Current tax provision:</p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td colspan="2" style="width:4.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">Federal </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 1,710,000</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 200,100</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">State</p> </td><td style="width:67.15pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>2,000</b></p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">1,400</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"></td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>1,712,000</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">201,500</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Deferred tax provision (benefit):</p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">Federal</p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-right:0.15pt;color:#000080;text-align:right"><b>(494,000)</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-right:0.15pt;color:#000000;text-align:right">115,500</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">State</p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>-</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">-</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"></td><td style="width:67.15pt;border-top:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>(494,000)</b></p> </td><td style="width:4.45pt;border-top:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-top:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">115,500</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"></td><td style="width:67.15pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 1,218,000</b></p> </td><td style="width:4.45pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 317,000</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">A reconciliation of provision for income taxes at the statutory rate to income tax provision at the Company's effective rate is as follows:</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="border-collapse:collapse;width:360pt"><tr><td style="width:218.35pt" valign="top"></td><td style="width:66.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Computed tax provision at the expected statutory rate</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:4pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>1,576,100  </b></kbd> </p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">536,800  </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">State income tax - net of Federal tax benefit</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>(1,600) </b></kbd> </p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">1,100  </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Tax effect of permanent differences:</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">Research tax credits</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>(283,600) </b></kbd> </p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">(275,400) </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">Foreign-derived intangible income deduction</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>(66,900) </b></kbd> </p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">(12,200) </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">Other permanent differences</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>900  </b></kbd> </p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">3,100  </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Other</p> </td><td style="width:66.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>(6,900) </b></kbd> </p> </td><td style="width:4.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">63,600  </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"></td><td style="width:66.65pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:4pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>1,218,000  </b></kbd> </p> </td><td style="width:4.65pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">317,000  </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Effective income tax rate</p> </td><td style="width:66.65pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>16.2%</b></kbd> </p> </td><td style="width:4.65pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">12.4%</kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Significant components of the Company's deferred tax assets and liabilities consist of the following:</p> <p style="font:11pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:216.6pt" valign="top"></td><td style="width:67.25pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Deferred tax assets:</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Allowance for doubtful receivables</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:4pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>6,200 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">3,400 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Tax inventory adjustment</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>84,300 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">92,200 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Allowance for obsolete inventory</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>273,200 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">278,800 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Accrued vacation</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>136,600 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">84,300 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Accrued commissions</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>9,800 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">7,000 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Warranty reserve</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>62,700 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">48,800 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">R&amp;D tax credit</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>- </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">84,000 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">R&amp;D capitalization</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>678,500 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">- </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Stock options issued for services</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>331,300 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">277,600 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"></td><td style="width:67.25pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>1,582,600 </b></kbd> </p> </td><td style="width:4.45pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">876,100 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Deferred tax liabilities:</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Excess tax depreciation</p> </td><td style="width:67.25pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>(1,013,985)</b></kbd> </p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">(801,485)</kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:27pt;color:#000000">Net deferred tax assets</p> </td><td style="width:67.25pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:4pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>568,615 </b></kbd> </p> </td><td style="width:4.45pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">74,615 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Realization of the deferred tax assets is dependent on generating sufficient taxable income at the time temporary differences become deductible.  The Company provides a valuation allowance to the extent that deferred tax assets may not be realized.  A valuation allowance has not been recorded against the deferred tax assets since management believes it is more likely than not that the deferred tax assets are recoverable.  The Company considers future taxable income and potential tax planning strategies in assessing the need for a potential valuation allowance.  The amount of the deferred tax assets considered realizable however, could be reduced in the near term if estimates of future taxable income are reduced.  The Company will need to generate approximately $7.5 million in taxable income in future years in order to realize the deferred tax assets recorded as of May 31, 2023 of $1,582,600.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company and its subsidiary file consolidated Federal and State income tax returns.  As of May 31, 2023, the Company had State investment tax credit carryforwards of approximately $424,000 expiring through May 2028.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:216.5pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:67.15pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td><td colspan="2" style="width:4.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Current tax provision:</p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td colspan="2" style="width:4.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">Federal </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 1,710,000</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 200,100</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">State</p> </td><td style="width:67.15pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>2,000</b></p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">1,400</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"></td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>1,712,000</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">201,500</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Deferred tax provision (benefit):</p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">Federal</p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-right:0.15pt;color:#000080;text-align:right"><b>(494,000)</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-right:0.15pt;color:#000000;text-align:right">115,500</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">State</p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>-</b></p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">-</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"></td><td style="width:67.15pt;border-top:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>(494,000)</b></p> </td><td style="width:4.45pt;border-top:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-top:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">115,500</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.5pt" valign="top"></td><td style="width:67.15pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>$ 1,218,000</b></p> </td><td style="width:4.45pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.15pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">$ 317,000</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> </table> 1710000 200100 2000 1400 1712000 201500 -494000 115500 0 0 -494000 115500 1218000 317000 <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">A reconciliation of provision for income taxes at the statutory rate to income tax provision at the Company's effective rate is as follows:</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="border-collapse:collapse;width:360pt"><tr><td style="width:218.35pt" valign="top"></td><td style="width:66.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Computed tax provision at the expected statutory rate</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:4pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>1,576,100  </b></kbd> </p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">536,800  </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">State income tax - net of Federal tax benefit</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>(1,600) </b></kbd> </p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">1,100  </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Tax effect of permanent differences:</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">Research tax credits</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>(283,600) </b></kbd> </p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">(275,400) </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">Foreign-derived intangible income deduction</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>(66,900) </b></kbd> </p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">(12,200) </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:9pt;color:#000000">Other permanent differences</p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>900  </b></kbd> </p> </td><td style="width:4.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">3,100  </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Other</p> </td><td style="width:66.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>(6,900) </b></kbd> </p> </td><td style="width:4.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">63,600  </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"></td><td style="width:66.65pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:4pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>1,218,000  </b></kbd> </p> </td><td style="width:4.65pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">317,000  </kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:218.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Effective income tax rate</p> </td><td style="width:66.65pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>16.2%</b></kbd> </p> </td><td style="width:4.65pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:66.65pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:61pt">12.4%</kbd> </p> </td><td style="width:3.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> </table> 1576100 536800 -1600 1100 283600 275400 66900 12200 900 3100 -6900 63600 1218000 317000 0.162 0.124 <p style="font:11pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:216.6pt" valign="top"></td><td style="width:67.25pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Deferred tax assets:</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Allowance for doubtful receivables</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:4pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>6,200 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">3,400 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Tax inventory adjustment</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>84,300 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">92,200 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Allowance for obsolete inventory</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>273,200 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">278,800 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Accrued vacation</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>136,600 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">84,300 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Accrued commissions</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>9,800 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">7,000 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Warranty reserve</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>62,700 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">48,800 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">R&amp;D tax credit</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>- </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">84,000 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">R&amp;D capitalization</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>678,500 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">- </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Stock options issued for services</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>331,300 </b></kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">277,600 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"></td><td style="width:67.25pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>1,582,600 </b></kbd> </p> </td><td style="width:4.45pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">876,100 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Deferred tax liabilities:</p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:4.5pt;color:#000000">Excess tax depreciation</p> </td><td style="width:67.25pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>(1,013,985)</b></kbd> </p> </td><td style="width:4.45pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">(801,485)</kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:216.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:27pt;color:#000000">Net deferred tax assets</p> </td><td style="width:67.25pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:4pt"><b>$</b></kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:63pt"><b>568,615 </b></kbd> </p> </td><td style="width:4.45pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.25pt;border-top:0.75pt solid #000000;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:60pt">74,615 </kbd> </p> </td><td style="width:4.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> </table> 6200 3400 84300 92200 273200 278800 136600 84300 9800 7000 62700 48800 0 84000 678500 0 331300 277600 1582600 876100 1013985 801485 568615 74615 1582600 <p style="font:10pt Times New Roman;margin:0;color:#000080"><b>11.  Earnings Per Common Share: </b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Basic earnings per common share is computed by dividing income available to common stockholders by the weighted-average common shares outstanding for the period.  Diluted earnings per common share reflects the weighted-average common shares outstanding and dilutive potential common shares, such as stock options.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">A reconciliation of weighted-average common shares outstanding to weighted-average common shares outstanding assuming dilution is as follows:</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:388.8pt"><tr><td style="width:258.7pt" valign="top"></td><td style="width:62.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:62.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:258.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:6.2pt;color:#000000">Average common shares outstanding</p> </td><td style="width:62.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>3,506,474</b></p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:62.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">3,497,345</p> </td></tr> <tr><td style="width:258.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:6.2pt;color:#000000">Common shares issuable under stock option plans</p> </td><td style="width:62.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>45,020</b></p> </td><td style="width:4.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:62.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">2,208</p> </td></tr> <tr><td style="width:258.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:6.2pt;color:#000000">Average common shares outstanding assuming dilution</p> </td><td style="width:62.7pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>3,551,494</b></p> </td><td style="width:4.7pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:62.7pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">3,499,553</p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:388.8pt"><tr><td style="width:258.7pt" valign="top"></td><td style="width:62.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:4.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:62.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:258.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:6.2pt;color:#000000">Average common shares outstanding</p> </td><td style="width:62.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>3,506,474</b></p> </td><td style="width:4.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:62.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">3,497,345</p> </td></tr> <tr><td style="width:258.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:6.2pt;color:#000000">Common shares issuable under stock option plans</p> </td><td style="width:62.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>45,020</b></p> </td><td style="width:4.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:62.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">2,208</p> </td></tr> <tr><td style="width:258.7pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;margin-left:6.2pt;color:#000000">Average common shares outstanding assuming dilution</p> </td><td style="width:62.7pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>3,551,494</b></p> </td><td style="width:4.7pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:62.7pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">3,499,553</p> </td></tr> </table> 3506474 3497345 45020 2208 3551494 3499553 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>12.  Related Party Transactions:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company had no material related party transactions for the years ended May 31, 2023 and 2022. </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>13.  Employee Stock Purchase Plan:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">In March 2004, the Company reserved 295,000 shares of common stock for issuance pursuant to a non-qualified employee stock purchase plan.  Participation in the employee stock purchase plan is voluntary for all eligible employees of the Company.  Purchase of common shares can be made by employee contributions through payroll deductions.  At the end of each calendar quarter, the employee contributions will be applied to the purchase of common shares using a share value equal to the mean between the closing bid and ask prices of the stock on that date.  These shares are distributed to the employees at the end of each calendar quarter or upon withdrawal from the plan.  During the years ended May 31, 2023 and 2022, 922 ($8.65 to $19.96 price per share) and 1,496 ($9.90 to $11.83 price per share) common shares, respectively, were issued to employees. As of May 31, 2023, 216,365 shares were reserved for further issue. </p> 922 1496 216365 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>14.  Stock Option Plans:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">In 2022, the Company adopted a stock option plan which permits the Company to grant both incentive stock options and non-qualified stock options.  The incentive stock options qualify for preferential treatment under the Internal Revenue Code.  Under this plan, 260,000 shares of common stock have been reserved for grant to key employees and directors of the Company and 59,000 shares have been granted as of May 31, 2023. Under the plan, the option price may not be less than the fair market value of the stock at the time the options are granted. Options vest immediately and expire ten years from the date of grant.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Using the Black-Scholes option pricing model, the weighted average estimated fair value of each option granted under the plan was $4.91 during 2023 and $3.02 during 2022.  The pricing model uses the assumptions noted in the following table.  Expected volatility is based on the historical volatility of the Company's stock.  The risk-free interest rate for periods within the contractual life of the option is based on the U.S. Treasury yield curve in effect at the time of the grant.  The expected life of options granted is derived from previous history of stock exercises from the grant date and represents the period of time that options granted are expected to be outstanding.  The Company uses historical data to estimate option exercise and employee termination assumptions under the valuation model.  The Company has never paid dividends on its common stock and does not anticipate doing so in the foreseeable future.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:217.5pt" valign="top"></td><td style="width:67.5pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:7.5pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.5pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Risk-free interest rate</p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2.45%</b></p> </td><td style="width:7.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2.59%</p> </td></tr> <tr><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Expected life in years</p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>4.2</b></p> </td><td style="width:7.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">4.0</p> </td></tr> <tr><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Expected volatility </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>33%</b></p> </td><td style="width:7.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">31%</p> </td></tr> <tr style="height:4pt"><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Expected dividend yield</p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>0%</b></p> </td><td style="width:7.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">0%</p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000">The following is a summary of stock option activity:</p> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:171.2pt" valign="bottom"></td><td style="width:62.3pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"><b>Shares</b></p> </td><td style="width:1.9pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:62.3pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"><b>Weighted Average Exercise Price</b></p> </td><td style="width:62.3pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"><b>Intrinsic Value</b></p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Outstanding - May 31, 2021</p> </td><td style="width:62.3pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>267,750</b></p> </td><td style="width:1.9pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">11.60</kbd> </p> </td><td style="width:62.3pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:56pt">271,426</kbd> </p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">     Options granted</p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>66,750</b></p> </td><td style="width:1.9pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">10.69</kbd> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">     Less: options expired</p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>51,500</b></p> </td><td style="width:1.9pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">-</kbd> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Outstanding - May 31, 2022</p> </td><td style="width:62.3pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>283,000</b></p> </td><td style="width:1.9pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">11.43</kbd> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:56pt">28,248</kbd> </p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">     Options granted</p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>85,000</b></p> </td><td style="width:1.9pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">15.75</kbd> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">     Less: options exercised</p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>30,500</b></p> </td><td style="width:1.9pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">9.57</kbd> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">     Less: options expired</p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>4,500</b></p> </td><td style="width:1.9pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">-</kbd> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr style="height:12.55pt"><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Outstanding - May 31, 2023</p> </td><td style="width:62.3pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>333,000</b></p> </td><td style="width:1.9pt;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">12.70</kbd> </p> </td><td style="width:62.3pt;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:56pt">2,016,961</kbd> </p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">We calculated intrinsic value for those options that had an exercise price lower than the market price of our common shares as of the balance sheet dates.  The aggregate intrinsic value of outstanding options as of the end of each fiscal year is calculated as the difference between the exercise price of the underlying options and the market price of our common shares for the options that were in-the-money at that date (279,500 at May 31, 2023 and 29,250 at May 31, 2022.)  The Company's closing stock price was $18.55 and $9.30 as of May 31, 2023 and 2022.  As of May 31, 2023, there are 201,000 options available for future grants under the 2022 stock option plan.  $291,829 was received from the exercise of share options during the fiscal year ended May 31, 2023.  No options were exercised in the fiscal year ended May 31, 2022.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The following table summarizes information about stock options outstanding at May 31, 2023:</p> <p style="font:6pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:367.2pt"><tr><td colspan="4" style="width:360pt;border-bottom:0.75pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>Outstanding and Exercisable</b></p> </td></tr> <tr><td style="width:144pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;margin-right:-9pt;color:#000000;text-align:center">Range of Exercise Prices</p> </td><td style="width:50.4pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;color:#000000;text-align:center">Number of Options</p> </td><td style="width:100.8pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;color:#000000;text-align:center">Weighted Average Remaining Years of Contractual Life</p> </td><td colspan="2" style="width:72pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;color:#000000;text-align:center">Weighted Average Exercise Price</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  8.01-$  9.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">13,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">0.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  8.87</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  9.01-$10.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">55,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">8.0</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  9.67</p> </td></tr> <tr style="height:12.15pt"><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$10.01-$11.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">23,500</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">6.2</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$10.16</p> </td></tr> <tr style="height:12.15pt"><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$11.01-$12.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">140,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">7.5</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$11.66</p> </td></tr> <tr style="height:12.15pt"><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$12.01-$13.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">28,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2.8</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$12.39</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$13.01-$14.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">10,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">3.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$13.80</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$16.01-$17.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">10,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$16.40</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$19.01-$20.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">53,500</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">8.6</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$19.82</p> </td></tr> <tr><td style="width:144pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  8.01-$20.00</p> </td><td style="width:50.4pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">333,000</p> </td><td style="width:100.8pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">6.8</p> </td><td colspan="2" style="width:72pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$12.70</p> </td></tr> <tr><td style="width:144pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:50.4pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:100.8pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td colspan="2" style="width:72pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The following table summarizes information about stock options outstanding at May 31, 2022:</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:367.2pt"><tr><td colspan="4" style="width:360pt;border-bottom:0.75pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>Outstanding and Exercisable</b></p> </td></tr> <tr><td style="width:144pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;margin-right:-9pt;color:#000000;text-align:center">Range of Exercise Prices</p> </td><td style="width:50.4pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;color:#000000;text-align:center">Number of Options</p> </td><td style="width:100.8pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;color:#000000;text-align:center">Weighted Average Remaining Years of Contractual Life</p> </td><td colspan="2" style="width:72pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;color:#000000;text-align:center">Weighted Average Exercise Price</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  7.01-$  8.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">10,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">0.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  7.74</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  8.01-$  9.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">19,250</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">1.5</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  8.64</p> </td></tr> <tr style="height:12.15pt"><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  9.01-$10.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">55,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">9.0</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  9.67</p> </td></tr> <tr style="height:12.15pt"><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$10.01-$11.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">26,500</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">7.3</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$10.14</p> </td></tr> <tr style="height:12.15pt"><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$11.01-$12.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">112,250</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">7.8</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$11.72</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$12.01-$13.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">28,750</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">3.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$12.39</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$13.01-$14.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">10,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">4.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$13.80</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$16.01-$17.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">10,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">3.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$16.40</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$19.01-$20.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">11,250</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">4.2</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$19.26</p> </td></tr> <tr><td style="width:144pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  7.01-$20.00</p> </td><td style="width:50.4pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">283,000</p> </td><td style="width:100.8pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">6.5</p> </td><td colspan="2" style="width:72pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$11.43</p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:217.5pt" valign="top"></td><td style="width:67.5pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:7.5pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.5pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td></tr> <tr><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Risk-free interest rate</p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2.45%</b></p> </td><td style="width:7.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2.59%</p> </td></tr> <tr><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Expected life in years</p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>4.2</b></p> </td><td style="width:7.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">4.0</p> </td></tr> <tr><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Expected volatility </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>33%</b></p> </td><td style="width:7.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">31%</p> </td></tr> <tr style="height:4pt"><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000">Expected dividend yield</p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>0%</b></p> </td><td style="width:7.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">0%</p> </td></tr> </table> 0.0245 0.0259 P4Y2M12D P4Y 0.33 0.31 0 0 <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:171.2pt" valign="bottom"></td><td style="width:62.3pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"><b>Shares</b></p> </td><td style="width:1.9pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td><td style="width:62.3pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"><b>Weighted Average Exercise Price</b></p> </td><td style="width:62.3pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"><b>Intrinsic Value</b></p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Outstanding - May 31, 2021</p> </td><td style="width:62.3pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>267,750</b></p> </td><td style="width:1.9pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">11.60</kbd> </p> </td><td style="width:62.3pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:56pt">271,426</kbd> </p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">     Options granted</p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>66,750</b></p> </td><td style="width:1.9pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">10.69</kbd> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">     Less: options expired</p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>51,500</b></p> </td><td style="width:1.9pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">-</kbd> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Outstanding - May 31, 2022</p> </td><td style="width:62.3pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>283,000</b></p> </td><td style="width:1.9pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">11.43</kbd> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:56pt">28,248</kbd> </p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">     Options granted</p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>85,000</b></p> </td><td style="width:1.9pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">15.75</kbd> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">     Less: options exercised</p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>30,500</b></p> </td><td style="width:1.9pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">9.57</kbd> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">     Less: options expired</p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>4,500</b></p> </td><td style="width:1.9pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">-</kbd> </p> </td><td style="width:62.3pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> <tr style="height:12.55pt"><td style="width:171.2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Outstanding - May 31, 2023</p> </td><td style="width:62.3pt;border-top:0.5pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"><b>333,000</b></p> </td><td style="width:1.9pt;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:62.3pt;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:7pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:55pt">12.70</kbd> </p> </td><td style="width:62.3pt;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000"><kbd style="position:absolute;font:10pt Times New Roman;margin-left:6pt">$</kbd><kbd style="position:absolute;text-align:right;font:10pt Times New Roman;width:56pt">2,016,961</kbd> </p> </td></tr> </table> 267750 11.60 271426 66750 10.69 51500 0 283000 11.43 28248 85000 15.75 30500 9.57 4500 0 333000 12.70 2016961 <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The following table summarizes information about stock options outstanding at May 31, 2023:</p> <p style="font:6pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:367.2pt"><tr><td colspan="4" style="width:360pt;border-bottom:0.75pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>Outstanding and Exercisable</b></p> </td></tr> <tr><td style="width:144pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;margin-right:-9pt;color:#000000;text-align:center">Range of Exercise Prices</p> </td><td style="width:50.4pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;color:#000000;text-align:center">Number of Options</p> </td><td style="width:100.8pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;color:#000000;text-align:center">Weighted Average Remaining Years of Contractual Life</p> </td><td colspan="2" style="width:72pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;color:#000000;text-align:center">Weighted Average Exercise Price</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  8.01-$  9.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">13,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">0.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  8.87</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  9.01-$10.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">55,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">8.0</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  9.67</p> </td></tr> <tr style="height:12.15pt"><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$10.01-$11.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">23,500</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">6.2</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$10.16</p> </td></tr> <tr style="height:12.15pt"><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$11.01-$12.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">140,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">7.5</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$11.66</p> </td></tr> <tr style="height:12.15pt"><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$12.01-$13.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">28,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2.8</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$12.39</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$13.01-$14.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">10,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">3.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$13.80</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$16.01-$17.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">10,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$16.40</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$19.01-$20.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">53,500</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">8.6</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$19.82</p> </td></tr> <tr><td style="width:144pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  8.01-$20.00</p> </td><td style="width:50.4pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">333,000</p> </td><td style="width:100.8pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">6.8</p> </td><td colspan="2" style="width:72pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$12.70</p> </td></tr> <tr><td style="width:144pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:50.4pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:100.8pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td colspan="2" style="width:72pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The following table summarizes information about stock options outstanding at May 31, 2022:</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:367.2pt"><tr><td colspan="4" style="width:360pt;border-bottom:0.75pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>Outstanding and Exercisable</b></p> </td></tr> <tr><td style="width:144pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;margin-right:-9pt;color:#000000;text-align:center">Range of Exercise Prices</p> </td><td style="width:50.4pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;color:#000000;text-align:center">Number of Options</p> </td><td style="width:100.8pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;color:#000000;text-align:center">Weighted Average Remaining Years of Contractual Life</p> </td><td colspan="2" style="width:72pt;border-top:0.75pt solid #000000" valign="bottom"><p style="font:9pt Times New Roman;margin:0;color:#000000;text-align:center">Weighted Average Exercise Price</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  7.01-$  8.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">10,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">0.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  7.74</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  8.01-$  9.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">19,250</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">1.5</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  8.64</p> </td></tr> <tr style="height:12.15pt"><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  9.01-$10.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">55,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">9.0</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  9.67</p> </td></tr> <tr style="height:12.15pt"><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$10.01-$11.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">26,500</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">7.3</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$10.14</p> </td></tr> <tr style="height:12.15pt"><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$11.01-$12.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">112,250</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">7.8</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$11.72</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$12.01-$13.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">28,750</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">3.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$12.39</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$13.01-$14.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">10,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">4.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$13.80</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$16.01-$17.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">10,000</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">3.9</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$16.40</p> </td></tr> <tr><td style="width:144pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$19.01-$20.00</p> </td><td style="width:50.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">11,250</p> </td><td style="width:100.8pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">4.2</p> </td><td colspan="2" style="width:72pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$19.26</p> </td></tr> <tr><td style="width:144pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$  7.01-$20.00</p> </td><td style="width:50.4pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right">283,000</p> </td><td style="width:100.8pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">6.5</p> </td><td colspan="2" style="width:72pt;border-top:1pt solid #000000;border-bottom:2.25pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">$11.43</p> </td></tr> </table> 13000 P0Y10M24D 8.87 55000 P8Y 9.67 23500 P6Y2M12D 10.16 140000 P7Y6M 11.66 28000 P2Y9M18D 12.39 10000 P3Y10M24D 13.80 10000 P2Y10M24D 16.40 53500 P8Y7M6D 19.82 333000 P6Y9M18D 12.70 10000 P0Y10M24D 7.74 19250 P1Y6M 8.64 55000 P9Y 9.67 26500 P7Y3M18D 10.14 112250 P7Y9M18D 11.72 28750 P3Y10M24D 12.39 10000 P4Y10M24D 13.80 10000 P3Y10M24D 16.40 11250 P4Y2M12D 19.26 283000 P6Y6M 11.43 <p style="font:10pt Times New Roman;margin:0;color:#000080"><b>15.  Preferred Stock:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company has 2,000,000 authorized but unissued shares of preferred stock which may be issued in series.  The shares of each series shall have such rights, preferences, and limitations as shall be fixed by the Board of Directors.</p> 2000000 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>16.  Treasury Stock:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Treasury shares are 567,751 at May 31, 2023 and 558,834 at May 31, 2022.</p> 567751 558834 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>17.  Retirement Plan:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The Company maintains a retirement plan for essentially all employees pursuant to Section 401(k) of the Internal Revenue Code.  The Company matches a percentage of employee voluntary salary deferrals subject to limitations.  The Company may also make discretionary contributions as determined annually by the Company's Board of Directors.  The amount expensed under the plan was $371,881 and $313,269 for the years ended May 31, 2023 and 2022.</p> 371881 313269 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>18.  Fair Value of Financial Instruments:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The carrying amounts of cash and cash equivalents, accounts receivable, accounts payable, and accrued liabilities approximate fair value because of the short maturity of these instruments.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">The fair values of short-term investments were determined as described in Note 1.</p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>19.  Cash Flows Information:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:217.5pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:67.5pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:3.75pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.5pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td><td style="width:3.75pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td></tr> <tr><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"> </p> </td><td style="width:3.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:3.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td></tr> <tr><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">  Interest paid</p> </td><td style="width:67.5pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>None</b></p> </td><td style="width:3.75pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.5pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">None</p> </td><td style="width:3.75pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td></tr> <tr style="height:12.3pt"><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> </td><td style="width:67.5pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"> </p> </td><td style="width:3.75pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.5pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:3.75pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td></tr> <tr style="height:12.3pt"><td style="width:217.5pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">  Income taxes paid</p> </td><td style="width:67.5pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>$1,705,000</b></p> </td><td style="width:3.75pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.5pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">None</p> </td><td style="width:3.75pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <table style="margin:0 auto;border-collapse:collapse;width:360pt"><tr><td style="width:217.5pt;border-bottom:0.75pt solid #000000" valign="top"></td><td style="width:67.5pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>2023</b></p> </td><td style="width:3.75pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td><td style="width:67.5pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">2022</p> </td><td style="width:3.75pt;border-bottom:0.75pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center"> </p> </td></tr> <tr><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"> </p> </td><td style="width:3.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:3.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td></tr> <tr><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">  Interest paid</p> </td><td style="width:67.5pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>None</b></p> </td><td style="width:3.75pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.5pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">None</p> </td><td style="width:3.75pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td></tr> <tr style="height:12.3pt"><td style="width:217.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> </td><td style="width:67.5pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:right"> </p> </td><td style="width:3.75pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:67.5pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td><td style="width:3.75pt;border-top:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:right"> </p> </td></tr> <tr style="height:12.3pt"><td style="width:217.5pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">  Income taxes paid</p> </td><td style="width:67.5pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:center"><b>$1,705,000</b></p> </td><td style="width:3.75pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000080"> </p> </td><td style="width:67.5pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:center">None</p> </td><td style="width:3.75pt;border-bottom:2.25pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#000000"> </p> </td></tr> </table> 0 0 1705000 0 <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>20.  Risks and Uncertainties:</b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">On January 31, 2020, the United States Secretary of Health and Human Services (HHS) declared a public health emergency related to the global spread of coronavirus COVID-19, and a pandemic was declared by the World Health Organization in February 2020. Efforts to fight the widespread disease included limiting or closing many businesses and resulted in a severe disruption of operations for many organizations.  Financial markets also fluctuated significantly during this time. The extent of the impact of COVID-19 on the Company’s operational and financial performance was significant in fiscal 2021. The use of vaccinations world-wide have apparently slowed spread of the disease, the extent of the impact of COVID-19 on the Company’s operational and financial performance in fiscal 2022 and 2023 was minimal.  </p> <p style="font:10pt Times New Roman;margin:0;color:#000080;text-align:justify"><b>21.  Legal Proceedings: </b></p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">Taylor Devices Inc. (the “Company”) has been named as a Third-Party Defendant in an action captioned Board of Managers of the 432 Park Condominium, et al. v. 56th and Park (NY) Owner LLC, et al.  Index No. 655617/2021 (S.Ct. N.Y. Co.) (the “Action”). </p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">The Action was filed on or about September 23, 2021.  In an amended Complaint dated April 29, 2022, the Board of Managers of 432 Park Condominium (the “Owner”), a condominium association for a high-rise condominium building (the “Building”) located at 432 Park Avenue in New York, N.Y., has asserted a claim against the condominium sponsor, 56<span style="vertical-align:super">th</span> and Park (NY) Owner LLC (the “Sponsor”).  The Owner alleges “over 1500 identified construction and design defects to the common elements of” residential and commercial units at the Building, based upon a report generated by a consultant (SBI Consultants Inc.) retained by the Owner.  The alleged defects include, but are not limited to, allegedly-excessive noise and vibration, water leaks and elevator failures. The SBI report allegedly identified defects in the Building’s: (a) structural/envelope system; (b) mechanical/electrical &amp; plumbing systems; (c) architectural/interiors; and (d) elevators/vertical systems. </p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">On March 14, 2022, the Sponsor filed a Third-Party Complaint against LendLease Construction (US) LMB (“LendLease”), as well as the architects of record on the project (SLCE Architects), the lead structural engineer (Cantor ESA) and the head mechanical </p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify"><span style="font-size:10pt">engineer (Flack + Kurtz) involved in the Building’s design. As to LendLease, the Third-Party Complaint alleges breach of a Construction Management Contract between LendLease and Sponsor and negligence arising from purported failure to perform under the contract.</span></p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">On March 22, 2023, LendLease initiated a Third-Party action against various entities with whom LendLease had contracted for the supply of materials and services in connection with construction of the Building.  The Third-Party defendants include the suppliers of products and services relating to the automatic sprinkler system, structural steel, mechanical systems, electrical systems, sheet metal, component assembly, roofing, the building exterior, plumbing, concrete, curtain walls, custom machine work and elevators.  The Third-Party Complaint also names the Company as a Third-Party Defendant, based upon a contract between the Company and LendLease to supply 16 Viscous Damping Devices (“VDDs”) that were incorporated into a Tuned Mass Damper (“TMD”) system designed by another company to limit accelerations of the Building during wind events.  On July 5, 2023, the Company timely filed and served an Answer to LendLease’s Third-Party Complaint.</p> <p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;color:#000000;text-align:justify">Additional third-party actions have been filed by parties named as defendants in the Third-Party Complaint.  Presently, seven third-party actions are pending. </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"><span style="border-bottom:1px solid #000000">The Progress of the Matter to Date</span>.  The matter, and all of the related third-party actions, are pending in the Commercial Division of the Supreme Court, New York County before Justice Melissa A. Crane.  Justice Crane has appointed Hon. Andrew J. Peck, a retired justice of the Supreme Court, as Special Master to hear and determine disputes regarding all or any part of any discovery issue.  </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">On June 13, 2023, Special Master Peck issued an Amended Final Scheduling Order.  Among the directives in the Amended Final Scheduling Order is a requirement that:  (a) recently-added third-party defendants (including the Company) respond to discovery demands by August 30, 2023 and complete document productions by October 11, 2023; (b) all parties complete fact depositions and fact discovery by March 15, 2024; and (c) all parties complete expert discovery by August 28, 2024.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"><span style="border-bottom:1px solid #000000">Management Response</span>. Management of the Company vigorously disputes the allegations in the Third-Party Complaint.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify">Based upon the information currently available, there is a credible argument that: (a) the Company met the contractual requirements of the 2013 Purchase Order for Viscous Damping Devices (VDDs) that were incorporated into the Tuned Mass Damper (TMD) system; and (b) the VDDs that were delivered were successfully tested to the applicable specification and met the technical requirements of that specification.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000;text-align:justify"> </p> <p style="font:10pt Times New Roman;margin:0;color:#000000">The Owner has not itemized the damages it seeks to recover from Sponsor, but the Amended Complaint contains an ad damnum clause demanding $125 million plus punitive damages.  Sponsor has not itemized the damages it seeks to recover from LendLease or the other third-party defendants, but the claim for relief in the Third-Party Complaint includes a demand for full indemnification of any amounts the Sponsor is required to pay plaintiff.  In turn, LendLease does not itemize the damages it seeks to recover from the several Third-Party defendants (including the Company), but its demand for relief in the Third-Party Complaint includes a demand for full indemnification of any amounts LendLease is required to pay to Sponsor.  The Company anticipates that the pending actions would provide opportunities for Sponsor, LendLease and the Company to allocate some or all of any liability to one or more co-defendants or third parties.  In view of the limited discovery to date, it is not practical to quantify likely damages to the Company in the event of an unfavorable outcome on liability.</p> Taylor Devices Inc. (the “Company”) has been named as a Third-Party Defendant Board of Managers of the 432 Park Condominium, et al 56th and Park (NY) Owner LLC, et al September 23, 2021 The Owner alleges “over 1500 identified construction and design defects to the common elements of” residential and commercial units at the Building, based upon a report generated by a consultant (SBI Consultants Inc.) retained by the Owner Management of the Company vigorously disputes the allegations in the Third-Party Complaint. it is not practical to quantify likely damages to the Company in the event of an unfavorable outcome on liability Note 2 Note 3 Note 4Note 4 Note 5 Note 6 Note 10Note 10 Note 8 Note 9 Note 11Note 11 EXCEL 100 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( ,(U#U<'04UB@0 +$ 0 9&]C4')O<',O87!P+GAM M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGDK7A.YNJQ<&4GPZ4A!0W_J=0U[R;UEA_6\#MI7E!+ P04 M " #"-0]7Y?+U0.X K @ $0 &1O8U!R;W!S+V-O&ULS9+! M2L0P$(9?17)OIVFM2.CFHGA2$%Q0O(5D=C?8-"$9:??M3>MN%]$'\)B9/]]\ M ]/I(+2/^!Q]P$@6T]7D^B$)'3;L0!0$0-('="J5.3'DYLY'IR@_XQZ"TA]J MCU!7U0TX)&44*9B!15B)3'9&"QU1D8\GO-$K/GS&?H$9#=BCPX$2\)(#D_/$ M<)SZ#BZ &4887?HNH%F)2_5/[-(!=DI.R:ZI<1S+L5ER>0<.;T^/+\NZA1T2 MJ4%C_I6LH&/ #3M/?FWN[K621A'^_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 ,(U#U>';Y4]@P< /

&PO=V]R:W-H965T&UL MM9M[;^(X%,6_BL6N]B&5(0\>9;9%HE!VT78ZJ,S.JON?FQB(FL2LXY3IM]_K M!!(RMC93;CYU.XFU81),/ M?,MB>&7%140E/!7K3K(5C/I9411V',OJ=R(:Q*W1379L(48W/)5A$+.%($D: M152\W[&0[VY;=NMPX"E8;Z0ZT!G=;.F:+9G\:[L0\*Q3J/A!Q.(DX#$1;'7; M&ML?I^Y0%63O^!JP77+TF*BFO'#^JI[,_=N6I_M]EO$2Q/)HWTQG$$4Q/EO^FT/XJB@9]<4./L"Y[L"NUM3X.X+ MW',+NON";D8F;TK&84HE'=T(OB-"O1O4U(,,9E8-S0]B];TOI8!7 ZB3HRGW M4O@:):&Q3^YC&IHHZWE[[+I9T::=LA MGW@L-PGH^LRO"G3@/(N3=0XG>^>@BI_H.W'M*^)8CJLYGPE>/4[7'XC=JRV? MXN6/_.T#<:VLW$$:XQ;DW4S/K2//) W"1,LW'1238E-#8A5@W0)8%U,?/;%UD$A!H;-.YG_JN.'UEOHW[/?< MO@X36ML4DR&Q"J9>@:F'-G,6)!X-R3.C0EUX.DZX0+MM]=JNK8.$%C:%9$BL M JE?0.JC;2R&O2_O6Z9#A)?;5EO7 2=H55,^AL0J? 8%G\%Y?,9QG$)O>F); M+J0.%*XC1:K#.T&KFH(R)%8!=5V NCX/U(*)@*LIU"T MO"DS0V(59L."V?#,BP\&\R3(?$9]!\.U5C1,M#T,+6M*RY!8A99ME1;-0MNX MMV6S(&3D,8U>F-":,5P$YKZVVQU>ZUCAI4UAF5*KTCHRM/8YM(['ST]D>O]U/KE?DOGC1,L.%6G,SI!:E9U3LG/.83>//2[@>LPBP!59 M2AC0"!=DPM-8BG?X[>N!XNJ/SUJ :%%C@(;4J@!+3V^C#O@ \ O]1N8^#''! M*O#R((5F5!M_&'?J>WMCW03VY.CP@#_ ^ M\CG6]SE<0N>=BN!-.U/@"HT17L+[VZ7YMW'S_CW"B7H&K?_"=[$6 M'R[W")/R!HICNJ.Q3[7XC(8"4VI5?&4LL'%C_SV^8NA;"/X6Q)Z^"^*:-<.> MT:Q@2JV*K4P+-F[SO\>VX(F$U/!/L*V?*W!%NVL[EI:;T>A@2JW*K0P/-N[Y MZP:\*4L\$6S5Q*%EAZL>5/B*; 5TVF +WP7[QKQ4K;'"89B4F&[A:8(+-X9[ MB9!AERG#QJ/!8L-AVIC!5)S/O2>IXG*EH?PY(9*%;)OIQYGV%0'.8>H'\9I0 MP2CQ]-U^@G](8\*7""9.&4P2R;RN[5JH9,>,&JIX8IUU(P&"E-J56IEH'#."A39Y4@F$";67+QK M69T($3QN4\\#VR% Q,\%M?2,Y@I3:E5Z9:YPSLH5RXB&(;E+$W@YT5^?_^\V M!%[6&-8EPH13A@GGK#!Q'S&Q5J/9[Z X7W"HRV-]7T.%ZQ=6\?K&F.[1$QP MRIC@X+Y^/ID]D3%8=PDQ?RPE@^B:K=C-0KK64ON?=R3PNL;4+F']W=+ZN[AS M+^[AS(*80L0$BYNME63'[H7(5HMA8O#JTM8)_5J*>%WC_0R7R 9NF0W]MU.T/W:ZEDMV;CL[1;J*S$@!TH@C&KJ7DWNL5="P*9T4^IQ(&M5BM M3FB)F=UOE*OUC]KH]AS;'0R*)NYA7"(%N&4*<''//H:ARL^'L)J!_H1 _55G MU/:;4JMB*FV_BYOTHX&^W%%R,^WM [RH,;%+V'RWM/DN;L\/[JON1OV)\H)5C2E= MPNB[I=%W<6-^H*069&M=*2YQEZY@U.=7Y)'MR#,7KUIH1GV^*;4<6N=HI[C* MB=F.^X1X:F-'OFF\.%KLZA]G>]D[Y=OS/PGX1%7,3$C(5E!J?1C J"OR7?;Y M$\FWV;[S%RXEC[*'&T9])M0;X/45Y_+P1'U \;<.H_\ 4$L#!!0 ( ,(U M#U<('E+J0 8 !L9 8 >&PO=V]R:W-H965T&ULK5G; M;MLX$/T5PKO8"Y#4XDV4LHF!)MG%%M@N@J;M/AA]8&0Z%BJ)KD@G\=_OZ!+) MEB@F!?H2ZS(SFD-RYAPRYX^Z_&HV2EGTE&>%N9AMK-V>S>38G01#.RF7)SKG;VSU8+XXW\I[=:OLI^U-"7?S+LHJS55A4EV@4JTO9F_Q MV36)*X?:XG.J'LW!-:J@W&G]M;IYM[J8!55&*E.)K4)(^'E05RK+JDB0Q[/T<_:\:/("YDT9=Z>R_=&4W%[-HAE9J+7>9_: ?_U8M(%[%2W1F MZK_HL;$58)SLC-5YZPP9Y&G1_,JG=B .'#"=<""M WFM VT=Z&L=6.O ZI%I MH-3C<"VM7)R7^A&5E35$JR[JP:R] 7Y:5/-^:TMXFX*?75SIPN@L74FK5NA2 M9K)(%+JMPAETBC[=7J/??O[]?&[A4Y7#/&G#7C5AR438]W*/*#Y!)"#4X7W] M:F]R[#T'>!U&TF$D=3@ZA7%7EJJP2!H#L%Q@&G_F]J]*[\QL9:(N9E!;1I4/ M:K;XY2<5^J(OKJ39(%FL4%)=J&^[]$%F@-V)N@G%ZU!5 M?WA84"XXP?'Y_.$0T-B.$(Y%0*/.\"A9UB7+O,G>;G1I3ZTJY MP9045I?[%AEU(O/'6!(GLG",+&:8CI Y["+.8LK=R$2'3'BSNBG55J8KI)Z M/8URKC@Q'E0:A\%PO3G,PHA%L3O!J$LP>E6":9'H7"$KG]Q)1N.R(%',ADDZ MS"@_-#M*,NZ2C/VM1INV(*!RT[PF$"7+(BWN#60.HYLH8Y!>H[LTR^JGS4)B MSH7D_]B2.A=2/!Y^3!B.R& $QG:4TI )YAX"'/3L&7CS^JBMS("G7R*8-LQQ MD5(!W388I.JPI"(6(L 3BPH?4#WV)OL>9*!514WQ?2-+G^O\L(UQYQR]$'_) MG)/4>ATWY8!B-H+N,,2!H,$4\EX 8"_I0D&!4"[MOEFNP(K;BFH. 8=NP/ZP M2^X&3!PX!,$B&C8XAV4,'4[P*<2]#L"O$ + _3M556"6KA5,M-F5U>37N)V) MTW&GP $>KU&'70#4-)5U+PBP7Q%/P58HY M2R4T[]2F;O[!7O;_7MW\HZ(=8^Y% ?:K@D[C;>6^DG5.P&.^QP*+<*1#78:, MA!&=$**XEP;8KPT@S7*G>O'25D?D+@Y_K*5P%\=8,+! 1)0,:=5A2!EFT-HG M4/;: OOY_O)9,AP)B<0G.7SBXH6O3:@+/)8-.(X)$Z-^Z##$A(B0NL>!]/J" M?(^^>*$A5 M_)S]05E0J@>U[+\@O0T3OPT_K%4$D35'IEJ M[M$IXJ$X$1S7/8KSZ"2B#)F-A%6'I*W[EQ/+F,E/:1#!_F38<5V6),8\"*96 M1\_YQ+]7;UJ-.2I@-5W CKUY$,1$T&%S=%@R2CC'?((E2$_9Q$_9__3]L!YQ M3[\1HS.L"57EL/2K*E)1]_&3GN;("\2#OS2G1DO27%"@HH;'FK^PI6KV8[#5 M:/8I(&A;.=S^ (DW"L#5R^8')\.Y*N_K$W:#:J73G"IV3[M3_,OZL'OXG$1G M5P#5]2:&-_7!_[S_1/-O@_>RO(=M!\K4&CX7O!$PK&5S$M_<6+VMSZ;OM+4Z MKR\W2L+BJPS@_5H#M/:F^D#W_Y#%_U!+ P04 " #"-0]7@LWZ\9@" #9 M!P & 'AL+W=ORFGF! 0(*I3(. M6#\V, =*C9'&^#UX>N.41KC?WKE_M=EUEELL8<[I+U*I>N9-/53!"G=47?/M M-QCR),:OY%3:?[3M:Y/,0V4G%6\&L29H".N?^'Y8ASU!&#\AB 9!]%I!/ AB M&[0GL[&^8(6+7/ M$J9:NYF&71NKUFD(,[NX5$*_)5JGBCEGDE-28045NL 4 MLQ+0TMA)]!$ML "F:E"DQ%3WWR,?R5H/RMQ7>G;CX9?#3!?]3-$3,UWA!Q2' M)R@*HMBAGK]:'1VJ?9UXC!V-L2-K%[\]MBM9;S9QFYD/[4RVN(29I[\D"6(# M7O'A79@&GUU!_Y/90>YXS!T_YZYS-XW^>):*EW0-Y)90HO-.U5R0/U"Y:'O# M=(]C&MC?$>_+=0?$R4B[CCG>Q]N\^ M02P,$% @ PC4/5VEDC7&L! *Q$ M !@ !X;"]W;W)KX_.O5>Z M1_+L*,O/:BN$1J]Y5JBYL]5Z=^VZ:K45.5=7\_++CX0Y^W%8[K9:O/" M7A/ZT>RCAR6U1DC07A4IE@4JQGCOOR?4MQ<:ALO@K%4?5N4$'Y:F+H_Z1*^IN"G%TM9*)FE"=?9ZZ& 8V;NVK ES4X'0$G%-W+0F\5^K5(1'(.X +3EBY]H[NDDXCW_ OR MR"6BF'H6/K=?[4TGR'AM[KP*SOO6W-DR5D/Z=DBSRJ_5CJ_$W(%EK$1Y$,[B MIQ\(P[_8POU.8&?1^VWT_A3ZXHEG0EVB GK3Q0>I!8IM,^1F&N29_&-+4NT4 M5$ZF1ZA/9H60T*].(J8G29K:;))FK^74BFT*^4ZU3:";# N%)\Q M[/<)#@UC1AF+1_B%+;]PDM\CS#I>KK:(%PETXP/(S,ZL$;2"_"H;XW#(&,07.5 ML+*/!JPB2#AA<8_]T(Z1P ^]P$X_;NG'D_0_[H0A66Q0.MI_XN'0$8YA4O0H M#NVH'](P#.T4"3X)#I[LFA_U5I0-07319-,N+OA[]LKOA78>=D=GR61M[@HM M %=7'=,:+1E6QG2(?LNSV/F![XV4A9[XT4E^]ZE:P>SGA9![Z]QN_+OCOJ-! MV.\D%K,P)GB,WTEKR:28+?Z4&M:C[$R>\4QZEDPR&@^H#NTBC_DC/8^U@!P#:' JDM MAQG65(78JS*-_>S9JU)[1=VJ7(5]&;-8X2LVHL'D),)D6H5OTVQOMM3?&O$T M^EC$D2WB_K;#8C41L='M\V/.227II!R9C7&]J89ETRRZY@+\F^B;BTV>W,Z) M,!?EICI9*TCBOM#U%K]]VY[>;ZHS:^_]$D[UQ/+^/8FOEQ"@Y0O%U\OZCP#W M-'3]-\(]+S=IH5 FUD #7X6P6LKZ9%X_:+FKSJHO4L/)M[K="IZ(TAC ][6$ MF)L',T#[_\CB/U!+ P04 " #"-0]7+K0:_VX$ "R%0 & 'AL+W=O MOOAD6UW4O]@SZJ4+FB0:2>7QN0:UFIC:\?3Z#3TJ%Z\6\TP$7?#D7Q;+W UBK^M0]U4H?";4WUR2I,=M,>RVX&FJ M2K#,IL=[.>Q]%\=,ES!)P -A\37+P(+DK#^3U3#6(Y5JJRJ>5J3(6+85/1#1 M=SA0NU_LBV.UG"M0+:Z-8RL)&QUQHR,N@=TSP)4\5^!.RH(][R5Y3BB07"VZ M4'I>@7NZ99E.&MR3A&1K"H@$'\GQ!CCH"F"(49^@@S%UT[L5.5G3F:6ZFJ#% M*[7FO_R$?/A'G\P5F%>"Z8;W.D<0.=";VJ^G>O:9001=![8-5UU#Q_$A<@,# M,>H:7N,)\B#$C6&+T3Z>@RP9V)BYVC*H>C'&I!&."K=ZY@FBDH"T-PD:#\/^8 MU(-!+MU480]O1H_JFB 8F@UO-696T4A@+94FC4J3'S^I!T-8[(_9M1H++2VBM_.UVCX@#T\QE'WC.GC,%!/BF:- MCWFD7HZ*MGKO(J*QPE92V"=OK_3;S(^DV#*U4Q*Z4?#P)E )%=4+PNI&\KQ\ MH?7,I>1I>;FC)*:%-E#_;SB7;S?Z'5GSFG;^%5!+ P04 " #"-0]7(>[\ M8Y4& #8&P & 'AL+W=ODG>3?CY1DR19?D@[^$DO, M\?C<\>Z>HWC]R)NO8DNI!$]568N;V5;*W=5B(?(MK8AXRW>T5O_9\*8B4KTV M#PNQ:R@IVDE5N4!!$"\JPNK9\KH=NVN6UWPO2U;3NP:(?561YOF6EOSQ9@9G MQX'/[&$K];TC#_2>RB^[NT:]+08M!:MH+1BO04,W-[-W\&J%0SVAE?B; MT4=Q\@RT*6O.O^J7C\7-+-"(:$ESJ540]7.@*UJ66I/"\:U7.AO6U!-/GX_: M/[3&*V/61- 5+_]AA=S>S-(9*.B&[$OYF3_^07N#(JTOYZ5H_X+'7C:8@7PO M)*_ZR0I!Q>KNESSUCCB9 &/'!-1/0-,)V#$!]Q-P:VB'K#7K/9%D>=WP1]!H M::5-/[2^:6-NJ_3,V3RQ6O!2]9020MP+U4/VJ/I !\ U9$;,$' MM<\"S,&7^_?@S8\_7R^D6E1/7>3] K?= LBQ $3@$Z_E5H#?ZH(6YPH6"NT M&1TAWR*OQD_D&6#X"T !PA8\JU?/1AXP>/ ?;M5AA[J_=K0ADM4/74 RR:BP M.:G3$MJUZ%R]$CN2TYN92D9!FP.=+7_Z <;!KS8++Z3LS.!P,#CT:5_^J4H+ MJW->49N9W=RHG:LKR&$9HS3!47J].)Q:8,HAA+-0;^C! BX:P$7>W7A7_*M2 MIHM@R569R7F=LY*">D"MQ_5;KJ-[TT;WIN$5X*_^B@=?Q=Z- M?$^5TIP174UMAG:SXY,M@F&"PBB:;*5%#H=)&"+[5B8#O,0+[U[R_*O:%0U/ M ";$7A4H15M ^X'E]LU)#"PA3%"$)Y!-,11 E*1VQ.F ./4BOB6%(I"U!/1) MD:RPYD=JKHQQ'$SPF5*!'5HV0,N\T-[\K@C]9U!RH2I[#0HF=ER04E?Y7:,C M7SX#4A> ?MNSG4X?&_;,XK4 3L/!E)K#"#OPPV"DJ[&R,S7],T15.,IE@4HLA1P>'(B=!/BD>(+V:LR7J))5U- M*033%+L\.7(C])/CBHL^-JF0K&J;=TJ:6K4O;0[3)T60;1.O,K;4HU8C3!Z< M)VF2!$;$6@1ABN,T<16>D3.AGS2'1-N19YU;5IP6ULR"%"53F*;<7)%KF$4. ME"-]0C]_*I2-[C^\D6LR7QRK&FXXTY2#(.0J8VCD3>3G37W$>&T[CDQ&5 $<)TDVA6L*8ARD M$7($!QJY$_FY4U==\1JH%R7(2VD[-WHD2/020:I64;#V4\QW=9'(QGXXRDZS MM+?0QJ@X@U&2.+9L)$KD)TK53>:4%OW1[_^UP\BDR6G]MX@DSF8-C3R*_#SZ ML2ZVO)%S29NJ;8K[PZ\5KTF9*E_5^0B;J6T1#;-%(KLA/KJ>X MV^/W@91[JKU>LHT>%?N&./IX9%+I/$QB.$5N$TN1J[2.A(O\A-M]]7AEGEO8 M$L5)"J-X>A"UB4*<9NI,Z$ \$BM*O57I ZN5+U^!ULO/WUV5+J3MW.B1IY&? MI\_S6G\TT/'4L6!5J5(E]%<%JQM,5L8!2@*C*%G8.T:A@T3PR-W8S]V3>BIU MHNS5^=8)&%OH%RJ>#J=%R"+HJ$!X9&C\,D-O7AE@V')FQ2B+IYZUR7D\.](S M]C)ABS5OC[=#W=&UO7W0!5X5(5?)[#5/^MXLA"FP<;K)!/#/WF2VQNSF6Q%Y2LMW[Z_>I*I*BVFWO+# 'W)>D+9'%>GWJA7IW M[_QMV!C3JX>VZ<+[HTW?;R^/CT.U,:T.<[XZW%OO[#Z5S=B#V46ZD;N^[LRE:ZZ]555;FAZVVW5E]=8RMKPKOC'D?2 MQN,JDO\HY!=/D5^HGUS7;X+ZW-6FGA(X!J^9X45B^./B68H_Z9TZ.YVIQ8C[/Y*^^J+[P1M:^O>M\9JB"4]_UKO&>?7)W-G*A)GZ ML:OFZD6_,>K:M5O=[5["3[MAA;C#[J!T5RM$8X-?*N" QJBU=\.6Z-X9L!)L M:QOMU=:[>JCZH/J-[M5&WQDBM%.U7:V,-^!2;[?@31A1 *88*,:'N?IY W,\ MIJ4A@.VJ9H 7XH=R'0O$0:M RJR=A[!O5:=;T^QFZL;8T-I*?=(MA(9\/S2# MK6T5-NXVP-*OS]_.U+77H$.2_=C5X,%;W:B/ _$9B$2S>G55_X87I-";C:MN MU=4R.+_D]_]C_P&2ZI,UZF;KL03/?K5+T?!X\$^ZVL" =5K$YUVSQ+!7/^C> M>5'#$$A(=:>]=0/TM]M"[Y"R%0H>8AD$1MMFIWHT* M5?<;6VU8?8TC/=4P"\RVW@#A%5G[E\[2TYL>+Y.584\H BQ!OYUBER+MLG6F M-BEO6KQK M/\X(P>!LB&QK,X=R.^0>5DCM0*1SX,%K& KZ=*#B[RVTJB4N6,M!-UBX].[6 M=-ATWZGECL[#LM&1YNK-Z9\?,T*HA;/O3#<8=:^#6IN.I -C*P]["NV) 0[* M2FH^Q0%$XIF-5\'JN?IF*#N3 F75/>EI?RG+.IJ*'GUQOM^H*ZQ L,W4Y\'# M%#-U18ZN&XM'Q,8-'"&OFJO7%X?%7OQA8I__?Q3[*T*SLMM& NX:P 3XK#F2 M+]GKR8-8'<10E=^3!FRGL1;34%.R"ZM, 7SOFWG:%--A#J649 #,44I_O2!A10.)Z ]N9.]T,O-WP M"CYGU#94C0L#8SJKY* .(U#Q E+UTRO9-6P( M@ZGGZI? J>$S4+LEK[N,J&6V.JH/;Y\P&NF"*F4"J7L+!]%C0MV.+B+N3T;# M>[.->GSL[S@H>AA4 .2F/-J.B 5G;O6M42:QRGH$P@WM5M3(*50C'U4"K;H5 M3X(P\/+QV(/B,+'2;3LJEN:2=,@H :5OH.!IZIB=)2K[C0L%5W-UK<-&TA;] M^ Q)X "/72,Z?6 0WR U0T&-)$G;W8%>5G.+_+V#\/X6?/>1A= M3%#U0-F;V=@9E":<*8?E;\DT20F$4 Y\ 9!BA0,OJ$#9]LK;<#NG0L+WKQ"S M+<')CDYJK0 A"OK<):E M>+#(\/67/[U9+$[>ZCN-RH7#2ENO"%8 U;%FV:+2>(B!4;G02_D1#HOT8G%"!:M4NF,- M5?/NPG8H1JRKU7\/*/Q8=MCKB[LS+6HZ>G ! .G ?6/_"<: S#7M7",3B03 MK4#)B(-FR;@2P !7)E09"\J@E(#YH!M$.

P_TTF# +);4I_% M7F2[[=!+DDB5_N@H=+0-(YB@:2=*?"!)NK.F@>M@.343A,'9.UW'BH4%Z*_" M]T@IE!ZH("983Z>FN.3ZE*$QIFI2[M_94M],92RS32%:OA=+^O$]*V9T:=U% MO"XQWSQ [[W4/$C[A!Z,N2A'L+.K"V0+D_(6P7!G21^<6KU;LHQ#%ZE8^BM7 M&BEU:E5MM%]SW10!(N:%)#I>:"7IG*/N&59I5E*31AD-RP\"H,G#^ZJ#0Q.HAZ?9U0.M&2\X9F#LT9KO+\2=%M9'_I7MIO%7]2<">1]I>K5]U(M?D[= MW^7T^=@53ECDY^*OVA_=+2ZZ"@+U$!6HY[[%N/&+<@9T4 93ANFPT*N.@(C:^F+DF^[D\ MV2 VO3VL5\$#H[:^'$+QXRCHJ#J&&3X#+>J]JH&+<1ICR*&.FVJ(W]K VV,+3P ,4+:5=&$Z-U=488SX MQ<'KS:H1Z!)1J &/!36V2LXN62B0#GF2/L4GG;MG8=?99G61COK.B.;(C?3Q&WP'OPN.U@]>.Q!, ).&E0[0B MZ0#KQ B71 ?B3P50:>OWX:R]1'3,$]-GK@0^$([^?PG!!'_SH;78>RY]^W\ MM"H"?H65-3&%M_HWYZF=H0P\^-$'I1W,L[RG6!(E).V6^J3G!>:33J<.964< MDTHB^&\J-:24Y+3'.322SU.#D^(Q[*( MXB(-5DF]\#*(A5:>RLAA)%#.&,J_N7NG%KCF+ M&8D2W(CVF4=O&E$(*<,!X7,O6\IMT =AP99[('*563*4-\L=X!(TD*0M/$F4FX.. M>LD(Z'NN,J>IE;AP5@OW<"B-'2 M^S^7KE#TQFA@A,RWX\#%"?O%/()'O'5J MFY!'&QJN%ZV'H+PH?VE&6W IGJ+!=J-BGT[<,3!CAQ8&Z"D>,FUBYK$R/S \ MI(4%@@[0,)J86!OMQU:N<'/L2UH56^ PMNO8\5-&G_3)9S-U(5/B?9??]Y?0EBFMLY2+=/QVG_#X (,GOQ?,7A^\KL8 M_)H,'P%&C-3OMN),J$_7KK 5F^%KN'$U5,P M$YTM8MA>(97=(L\N8WQQG?)2 /W 7"UU_ )DJ5"=8F!'5Q39XY=H>*3QXL9= M2D3!I3T T%JZ!+F%O4BCZ#IZF.69C(1R*CZS^"66SPILNAP")3.GZ6A30%/ MT=83*TXVIXDC$4DU18,$SA8N8PE0,LPNU7Z18166RJ_"*O M4 5+2I-"D^L5M'QD1>@^ Z*PR1.*/MXX%"6DC(&+PGAUN,K=T&R],RL;2PHJ M9(6R(&-R[#*1Y?0<-05OW<-3$@9Q1R)?,8^/YG82YB5+^2(LWKWFNF>4/8I, MB7A'$-SMER[$)&H#N'\SLE0/XP =KDV$I_(4:8P*-<'PJ6Q=K*.2SZ<;W\?< MQ?PU4\MAK,IX.LO:F47\1[B@<@HQ@XR5@!CS&4O2=-1NMVQN!S4& MFL9.7F[2RZPX;EMEWIK' P"("#D-W,Y2$2Y3P/ M=$._=GP?%J'K0/)[]F2ZOL?^6;J_D+Z\AA@V\+3Z+MLH04Y;WEQEC_[#3I&; MF^_.+BYFKR_$G[];G+V9?7]VD6.6'"L<2+[9^^=/V(J_&)+Y'U?,KH)WQ&G3 MI!"@HEC<)8&NRY?0J>:63")-+Z6JH5D!K22!Y'.D,WFN2*11Q\\TSDVW4JCM M^0.IZ2C$A.F\CS.&?J#1%Z,-,5=>M_VN^R!OUBAIFPBKU%)*@,IY)"!2M(R_ M/J4)-!T:K]RYZ(O(;\VC6BNQF=%B-? PGBB0XOA*L9)9+#BB:P _?A1"+Y:F MOZ?;R20L'7@H =- 6'+30<:FW$=&98<8'GD-Q[?NHLHW: M%\U%)B-YS5=JH+75EB<+!6X7-V1_);.2S61" ,)9@>-%#G$[-6MN[S_LW"%,RLS2- M14V"LWJ9<:3] M?\'-"6".$UZ$CVOC.<']!CD".K/80[54CM)81YHC> XX&'OSV#%U0.L'!&&_ M]^E57AG'[2'"OG@Z3VR*?,--/-^6V,"=,KS/WY1JZ#)'S9_Z2= M&OO=Z(_CF"C1EG%P5&4Q#TK#RT<#55(U#2_B'1YK15B?B)S"YW?G6>[VOCL_ M?3U;?)]R]D $$UCPV,IRU\\?L%AJD5JY=Z7$&2>-Q;!_.@>C@7LJ6JK\!>3&B%P' ML^7XM8PW1;TCU_N4WV.^V)AI1ZAKMTW-+*EO?NB#TN/BBU_$TIJ_:P[R'9-\ M_)N?YD^GK^2+X7&Y?'?]D_9KN@YNS I;3^:OOS^2J5[ZHW=;_GYXZ7H$+O^D MT8_QM #O5\[UZ0\Z(']0_N%?4$L#!!0 ( ,(U#U< YDM!W@( % & 8 M >&PO=V]R:W-H965T&ULI551;YLP$/XK)S;U"14P)$W: M)%+;;=JD=:M:;7MVX A>C]@'V^[[OOSMRQV&OS8!M$ M!X^M5'89-&O ;MN6F\,52KU?1EGT9+@3F\9Y0[):='R#]^B^=;>&=LG( M4HD6E15:@<%Z&5UFYU>%]P\.WP7N[=$:?"9KK1_\YE.UC%(O""66SC-P>NWP M&J7T1"3CU\ 9C2$]\'C]Q/XAY$ZYK+G%:RU_B,HURV@6084UWTIWI_Z+=L_GU<.*YV&^/O&* MJ&(45;S&_N^+.'].\?]RAI+Z!X/K\+&AL? 6)O%D,HOG\Y361-B.H5L&F?I=%"2QY.T"$KH*)[.II3"4UPS)@.UT>W0 M,EZCP7!+(?>V)Q=JIT6)%3A]Y+BGHB!T_- &YX;O$-:(BDS&"1)\H)YT38.R M IJ%E5 ;*'7;20P*= U45NB,_DF3ABHNY1B0$S$^=F3O@ZZ1D%+V>T\J5 K M?'10"UMR"0?DYO2Y#RHYZG(2O@FSS$(H7-_PHW4UIAX:-C[ ^!-9_0902P,$ M% @ PC4/5P'P]/9N @ 0P4 !@ !X;"]W;W)KW:2)0-#6E,"+3QV4VNC85C9[9+Z;_? MV0E9D4JE?8G/YWL>/^?!U1[4BBB-XR)J&9=!.?>^>UW.U=8*+N%>$[-M6Z;W2Q!JMPB2 MX,WQP#>-=8ZHG'=L X]@?W7W&G?1R%+S%J3A2A(-ZT5PEW>:V7@2Q$P0"*NL8&"XO< U"."*4\6?@#,8K'?#0?F._\;EC+BMF MX%J))U[;9A%, E+#FFV%?5"[[S#DDSN^2@GCOV37QR990*JML:H=P*B@Y;)? MV>OP#@> 2?P!(!T J=?=7^15?F66E7.M=D2[:&1SAD_5HU$114;GCZH!O>S1Z0?H)"5W2MK&D&^RAOH]08121CWIFYYE M>I+QCNT)34*2QBD]04?']*BGHQ_0_506S+&\>EAV'.8Z868Z5L$BP%(WH%\@ M*#]_2HKXRPE1V2@J.\7^[LUGQ\3]!]P_E/NDY('ML#(L:,Z$(6>DN*1AEE.T MLLDDI%-*GK!!SKD\[[2JP!B2AW&)N2&2X[E5).-4K4AE,9A M1G-"X]@?%PB9AC3.$#+-LW"*9S\<%Q/8WTQ60'!2$+4R2H"IP#F*"8)BDB"% M6\\<-$L\B;,G/'2 M$ %KA,87EWE =-^R_<:JSK?)2EEL.F\V..5 NP \7RNLI6'C+ACG9OD74$L# M!!0 ( ,(U#U=TTX=JX@, #,) 9 >&PO=V]R:W-H965T-'6?1B;^PWMP/P[+E1VBVCG??M=1R[<@>- M=%>F!8U/-L8VTN/2;F/76I!5"&I4+))D&C>RUM%J$?8>[&IA.J]J#0^6N:YI MI'VY!67VRRB-#AN/]7;G:2->+5JYA4_@O[0/%E?Q$:6J&]"N-II9V"RCF_3Z M-B?_X/!'#7LWLAE5LC;F&RU^JY910H1 0>D)0>*_)[@#I0@(:?PU8$;'E!0X MM@_HOX3:L9:U='!GU)]UY7?+J(A8!1O9*?]H]K_"4,^$\$JC7/AE^]YW@LYE MY[QIAF!DT-2Z_R^?!QU& 45R)D , 2+P[A,%EC]++U<+:_;,DC>BD1%*#=%( MKM;4E$_>XM,:X_PJOV)WQGG'I*[8!^=K+!30DE;7>NL8"O=%EZ9I%=#^G='> MHI)N$7O,3AAQ.62Z[3.),YE2P>XQ>N?8!UU!]18@1MI'[N+ _5:\BW@O7UB6 M,@J=X\!)74)++QW#FNLP :OC5%XS9%+*5NZ=DZH0_+"]W5B M'G@NJ0:S>2V#Q$D%_A5$->-9-N7Y+&>W!X5["5(^GPL,3M!*A>"S:796 MB<]O:NEO[/IO<*%(YZ7O0KX':[Y"&3K.6FNVEGC(\&C\<@9&I,!8C(]=LT;5 MSJ&@1SIG-UM<;:F/+=@2M&>'T\2R[)+EL\N1BPSMPU%!PXAX7Z34_11/2,XN M9GPJ9EQD.7OHH7#F4'9OO%3L2:J.FOYDZA)%P]/37[[(4,PO63:Y#)K<]6< M)6\#8_2S4)JM1G&"-HW\:FSM7PCYE8B%)]"(3V-(*48CE2KMJZXZ2SX4/1(M M9YO:EK[2VG7L*UU M*'#8(!Y#FE[$"SIJ&;V>/,#A.IL*6E^=NASCT2!#Z;=A7#ND@X#]3#ON'K\( M;OI!^.K>?T[<2XOD'%.PP=#D:C:)F.U'=+_PI@UC<6T\]CF8._RJ 4L.^'QC M&ULE5;;*J5 M=HNH\KZY21)75%@+=VD:U+2S-K86GJ9VD[C&HB@#J%9)EJ;3I!921\MY6'NP MR[EIO9(:'RRXMJZ%W=^B,KM%-(H."Q_EIO*\D"SGC=C@)_1_- ^69LG 4LH: MM9-&@\7U(GH_NKD=LWTP^%/BSAV-@2-9&?/(DP_E(DI9$"HL/#,(^MOB'2K% M1"3C2\\9#2X9>#P^L/\<8J=85L+AG5%_R=)7B^@J@A+7HE7^H]G]@GT\$^8K MC'+A%W:=;3Z-H&B=-W4/)@6UU-V_>.KS< 2X2E\!9#T@"[H[1T'EC\*+Y=R: M'5BV)C8>A% #FL1)S47YY"WM2L+YY>02[JET'K70!8+0)?SN*[3P06]1>V/W M\\23'[9.BI[SMN/,7N$<97!OM*\<_*1++%\2)"1P4)D=5-YF9QGOQ1[R40Q9 MFN5GZ/(AZ#S0Y:_0_68\NE-Q=;#Q:1C?CQO7B (7$5T AW:+T?+[[T;3](3.$"LCC+I_$HG89QGH_C MJZMK^!6= Z'HU@3GF4S>+)54KX49RF>3P:=^-1 M.HOS]/H_-5@,T6D/=&&*1_"5\" =H/.2;BZ6X U48DMH:*PIV\*#DFM\5^P+ MA40$^%2P7K,&OT.UQ7=U.,&7\+DBGHYU\.*@0.M)$TB/M2-W"'>F;H3>LU>+ M7UII.Z?<%X,EQ\_YEQ0">>E5$+5191R".G"1=&$1-JC14O[VU#!7?U,38SK7 MD"RAT;2DU99HI=[T&I^S09-&6"^+5@G+>.ZAW/R8P6-1:5D(];(:I)"CT"@L MF=@:RC:82Y+8NK O=4G]R$JD\"MAJ9^2^Z\4YFH?L 5)D[IE:11S%Q\W7HI6 M4W=^SKM&%X,5C2P[-4:935 DRBV7V(5T'.R/97*H2&W;6(PIM9J>C9JKSF4[ MJD$EN @%)Z@DKF].84.WGY22O^>4O71RD6<9G<,TZ+B8S;H).7D&[,A%*:D< MCES03MER*8**/>60CAZW/CAN7(&-KU2(@N/;RO"VO454<'B174\&75_1F@#] M'SX/">I+19FF$EODAQ,+K+=A/>9SI=IM>\>L6%U^ 1XW[U\ MS^;=]\.]L!NI'2A<$S2]G$TBL-V;W$V\:<([N#*>A(5A19\Q:-F ]M>&:M!/ MV,'P8;3\!U!+ P04 " #"-0]706U3_20# "]!@ &0 'AL+W=O.3+.+[6A0-@'4=S%/DD7<2S5$ZV58>S#KI9Y< MIP9\,&"GOI?FL,%.[U=1&IT6/JM=Z_Q"O%Z.B.\?W#X2^'>7LS!9_*H]9,W?FU64>(%88>U\PR2AF>\Q:[S1"3C MZY$S.H?TP,OYB?WGD#OE\B@MWNKN;]6X=A65$32XE5/G/NO]+WC,)_=\M>YL M^,)^]N5%!/5DG>Z/8%+0JV$>Y ,GD#P(\ 'G3/@8+*C]+)]=+H/1CO M36Q^$E(-:!*G!G\H7YRA744XMUY,'=%[I[@^ M4FUF*OX&5,\N9AM)M4U:MC9@%7]:/0S>K2%-&%)EK&L MJJ!B)4]9Z0];UBT),',L/,6"E.B*DE6\A)23MV"+:@&_;[>J1MA.9E!N,O@= MB!Q%PJHRH5DA!!-) C>3T[,89Z;ZR0)1E6EY&N[^(U.4&86MSB,O69D7I$8 M7["D(ER1PQU:8JWKJ9\ZZ;"A1TSG6BL9VD1:L#3+F:@22!>,DZ@T7?@JI:R@ MQ(M2D$%%R 4K\@H^7F+QA7JE1=A+"Q]2)@K.1)Z'#,C,1,&$X$"=%%R+<$!I M+*!_*W!YTX._/ZHK^(/<;G4_RN$ +9'6NN^5FY-UFOK $T(M1^5D-P=O0FTM MZ"W(D2KSHJAQ87>@^$G!$BJJ#)N7\:Y>N\7Q14OIT>Q"X_0"IL'-W>6\>N[- M-W-+^M=];NSWTNS48*'#+4&3JR*/P,S-M2.VEV8MO1_0>,=:'^K MZ>$>#1_@_,=:_P-02P,$% @ PC4/5WFO#UN> P # @ !D !X;"]W M;W)K&ULG59-<^,V#/TK&'7;7EQ)EAPGF]J>6:?= MV72:)I-LVS--01(;BE1)*EK_^X*4HM@9)X<>;/,#[_$!! &O>FT>;8WHX%LC ME5U'M7/M99)87F/#;*Q;5+13:M,P1U-3);8UR(H :F22I>DR:9A0T685UN[, M9J4[)X7".P.V:QIF]EN4NE]'\^AYX5Y4M?,+R6;5L@H?T/W9WAF:)1-+(1I4 M5F@%!LMU]&E^N5UX^V#PE\#>'HS!>[+3^M%/KHMUE'I!*)$[S\#HYPFO4$I/ M1#+^'3FCZ4@//!P_LW\.OI,O.V;Q2LN_1>'J=70108$EZZ2[U_T7'/TY\WQ< M2QN^H1]LLV4$O+-.-R.8%#1"#;_LVQB' \!%^@8@&P%9T#T<%%3^PAS;K(SN MP7AK8O.#X&I DSBA_*4\.$.[@G!NJ,JN$D?LWB;A M(]-V8,K>8)IG<*.5JRW\J@HLC@D2HIVT9<_:MMF[C#=L#_E\!EF:Y>_0Y9.K M>:#+WZ#[0SL\Z=< 6YR&^5=Q:5O&<1U1VELT3QAM?OANODQ_?D?48A*U>(_] MS?A?GA+Z/ZG@:XUPI9N6J3W4S )[8D*RG41@\&&>SM(T?"B]U2.E=,-4 9X= M= G<8"$SF"9@C;P M,86"KO7WZ^WM/1CF$%K96(0D>"AL&"1=^0D[/;DH,**!?M68E&%"!P[195/@@]0 MB\9J19/64(DT;N]9B>Y5X/P!W>X?4N%5>J[.=H0B1QL;B+A69$B1HFG;2C%( M\9;A/KS) 8-!A7V0H(A&AE,I9OX&]82JJ#?8 M(3E>,N^5&/*,ZR>BH*[#'RV$IT;94 U'I\.X3A?QBE_!%TEE6)A8[@]\'2$ M/CM,$6'&^-0)6*<=HSNEA,]G%^=YB.N'^<=\MCB_ 'H4I.4H''Y_BH/%,;2> MDX*MN.RHR-& ^@H?-L:2@0C=HJM"'+ 3D4*RGU:G5?1HJ_(OYT"=O MF*DHGB"Q)&@:GY]%8(;>,TR<;D.]WVE'W2,,:VK7:+P![9>:"N$X\0=,?P V M_P%02P,$% @ PC4/5QE08%Q+ @ $@4 !D !X;"]W;W)K&ULE911;YLP$,>_BL6F/5D!;!)(EB U7:?M(5O4:MNS"Y> M"C:SG:;]]CL;RC(IB;07\-GW__E_YLSRJ/23J0 L>6D;:59!96VW"$-35- * M,U$=2%S9*=T*BZ'>AZ;3($HO:IN01=$L;$4M@WSIY[8Z7ZJ#;6H)6TW,H6V% M?EU#HXZK( [>)N[K?67=1)@O.[&'![ _NJW&*!PI9=V"-+621,-N%=S$BW7B M\GW"SQJ.YF1,7"6/2CVYX&NY"B)G"!HHK",(?#W#+32- Z&-WP,S&+=TPM/Q M&_VSKQUK>10&;E7SJRYMM0JR@)2P$X?&WJOC%QCJF3I>H1KCG^38YS+ILGDW(35'H Y3D[@6_M &S#"V"W7)8#)!U#V$7(#$C&R5M9[.U9E>)&_%*>$P)BQB_@N-CE=SC^ 7<-V7/U]7+DO,R=R$6 MIA,%K +L> /Z&8+\P[MX%GV\8BH93277Z.>.?G'.X_]3_+&Y!R.WOH5 8Z=V MRM36D/>$SU(ZCQB.8LJ3E*;1G&Q!&R4E-*10!K,X102=1C'F3+.4LC0FWVV% MH%DVH_-X3I)T3CE/D)+0*,TH9X[(:1(GE,?)N0,*3_H4/>W];32XXT':OF7' MV?'"W_1]_C>]_UMLA-[7TI &=BB-)NDT(+J_@7U@5>>[_E%9/ _K/"G!=HE MX/I.84\,@=M@_ WF?P!02P,$% @ PC4/5X%KM*?" P XP< !D !X M;"]W;W)K&ULC57;DN(V$/V5+F>3O#@8VV N U0! MDZW=JI":6I+-L[ ;K"!+7DD>AK]/2P;#5F8F>;%UZ3Y]^JC5FIV4/IH2T<)+ M):29!Z6U]32*3%YBQ4Q/U2AI9Z]TQ2Q-]2$RM496>*=*1$F_GT45XS)8S/S: MDU[,5&,%E_BDP315Q?1YA4*=YD$<7!>^\$-IW4*TF-7L@%NT?]9/FF91AU+P M"J7A2H+&_3Q8QM/5P-E[@Z\<3^9N#"Z3G5)'-_E<8U" M.""B\>V"&70AG>/]^(K^T>=.N>R8P;42?_'"EO-@'$"!>]8(^T6=/N$EGZ'# MRY4P_@NGUC9. \@;8U5U<28&%9?MG[U<=+AS&/??<$@N#HGGW0;R+!^998N9 M5B?0SIK0W,"GZKV)')?N4+96TRXG/[N8]&#+!)I99 G-K47YQ7/5>B9O>,8) M;)2TI8%?98'%]P 1T>BX)%F5$=#DH\& M#R&L-2,-X&@.0(VUJ3":U]Y3OM$[L%WK"\)+F+JY&/M_89PY+$95:YQ#=,4J>JG#Z%(KVE MLF UHY DD+(EZA,G95B>JX9LG&S&'1GLM#JB)*>3A-V95'<"WB2YG*Q3R][. M]F?SO;85*Q"L(A.-=+ H49,4_H"]:W="4U+_*E4(]&]W6#W26!["_Z!5L)LD(1I MDM$DSL(D&X5QEL#RCM)C2PGB83C,QF$V&4*G\X^'/[K, M)#V'K0CN#%TFO= GJX)\7 _[TVQ[&ULE5=M;]LV$/XKA)=N*:#8EOR:- F0EQ;KAW9%TJV?:8FRN4BD1E)V MLE^_YTA9D6L[P!# H>[NN1-UN='FR:Z$<.RY+)2]ZJVA?NS^F;P-&BM9+(4RDJMF!'Y5>\F MOK@=D[P7^$N*C>VL&46RT/J)'CYG5[TA 1*%2!U9X/BW%G>B*,@08/S3V.RU M+DFQN]Y:_^1C1RP+;L6=+G[(S*VN>O,>RT3.Z\(]Z,WOHHEG0O9275C_RS9! M-H9P6ENGRT89"$JIPG_^W.2AHS ?'E%(&H7$XPZ./,I[[OCUI=$;9D@:UFCA M0_7: "<5%>71&9Q*Z+GK>-AGGU6J2\&^\V=A+P<.5NELD#86;H.%Y)B%A'W1 MRJTL^Z@RD>T:& !.BRG98KI-WK3XA;^P41RQ9)B,WC W:D,<>7.C(^:^:G MF"&'3G>D.NJ-])TN*ZY>?K-,Y+GP0R+H21BT<%)@<.TF%QJUV\M!8T\\5["" MTY]@4(23V=1G^H1-1M-HWN:D@^^,*8QBQ+G-(VTVV66G<33U6?-64/4&L\^+ MP)!25/1,8A/E3XD3#Z N-^G*VTE1.>DL.TWFHV#I-)E-J-3O&88<1I@Z@U>D M( ,FQ]52+HH6'KJ[#K/T=#J-SKTZZ)'0X@^$;@YC8)!D(X\X2)TVRE./X4CI M/[;%Z"3')S*>]I-W+$[ZXW?L$8AE+E,.EY"J-#FWE([=TF9=VG)K!82XRAAX MM0"YG 1,$,U*Z[;*H?!2+;NEO]^W<\%N2) C5,_(3-<+E]<%45?(-4<"+>*: M4IXH/M]85#JIU@!+_.#9WYCT)>5M/HY&.#_W:?W)LEY870A/EZUF,AMYP60V M]W2Z25-3 ]Z:IZ%A8O",DMS8W9XC5Z6T1%N4QVN&K/_@QB"7H&R8>&R:1#/L MCX/YAU]Y67VX[W )?)W[5F[/4EY)QPOY;P P!3)J\#-07:=/3%?.>X5W D)Q MD2=)1!EAZH]\-#,/&@TS3P+\IG%V\M\IW@7[^ P+UN]G @,[;28&6F88CZ+S M^01LG6.*C6GU%3UVB!-HS.D\FL83K&9COW@0K\$TU#BD*8EDN"IE5$6(+M&R MH"OX@PM/#HK*9A[S3D=K_CAJ$N\<)5V<(:Z4[0BZV/V'K*XPD@,HD+YX6P C?$E MKG_6'4V.E:2+T8![GJ?Y0A12K($;#$+F2LP>E/-)%"^$4GD7'NXQB]P([WZ- M).]EQ7/#=6Q\]G[3=OXN:BD?O,%LOD#U)#9-+(*)L MZD)FG-Z]VY^]8HT 8F5!\3W'4?>] ;*_:H.L84)W9E^*:?D"0FRXR;RI MGW(W3L)HQ)5 FL BH^OERKN$NWG_T$URT+G-E\(L_3<+L05T"A?[=K?]++H) M7P.OXN&;Z@LW2S0F*T0.U6%_-NDQ$[Y3PH/3E?\V6&B'+PV_7.'33A@2P'FN M0?3F@1RT'XO7_P%02P,$% @ PC4/5Y7T9LO? @ . < !D !X;"]W M;W)K&ULI55=C]HP$/PKJU3J$R4A"?=! 0GNKFH? MJ-"=VCZ;9"'6.79J&W+W[[MV0@HJT)[ZDMC.SNQL[!V/:Z6?38%HX:44TDR" MPMIJ%(8F*[!DIJ\JE/1EK73)+$WU)C251I9[4"G".(JNPI)Q&4S'?FVIIV.U MM8)+7&HPV[)D^G6.0M638!#L%Q[YIK!N(9R.*[;!)[3?JJ6F6=BQY+Q$:;B2 MH'$]"6:#T3QU\3[@.\?:'(S!5;)2ZME-ON23('*"4&!F'0.CUP[O4 A'1#)^ MMIQ!E](!#\=[]D^^=JIEQ0S>*?&#Y[:8!#KZ2LGG)T.!GUX8%IRN3&P1 UWJBSI;ST53.,XM)3"!899 M2S=OZ.)S=#$LE+2%@0>98WY,$)*V3F"\%SB/+S(NV"LD@Q[$49QA-/ MEYRA^ZHLFE-U-;#T-,RUQLA4+,-)0&??H-YA,'W_;G 5?;P@*NU$I9?8+V_" MZ)3:_^&#.3,\ ]P'5!20-0'&!0 W;EYM+>:P>H6<[WA.D< E+2.P'>."K02" M51W0JNRY4")';1S&%@BU[PC,/[ =:FKPHR0&R"&,9=(SD[EX"$GA*N_#/1<^ M^WF-U+NNL]U+TN'^4+31G-+Y3=U2X^JCRJ$23!I(A[THCB#NQ='-/Z3\4S^)& XH M?2/BEF8G.SH\<+,2]<9[MCN26VD;8^M6NVMAUKCA[_#F3EDPO>$D7>":H%'_ M>AB ;GRZF5A5>6]<*4M.ZX<%76VH70!]7RLZ(NW$)>@NR^DO4$L#!!0 ( M ,(U#U<1/Z99*@( "<% 9 >&PO=V]R:W-H965T M!B3IQ18EOL='B>1L;^RSJQ )7ANE728JHG8:1:ZHL)%N9%K4?+(QMI'$IMU& MKK4HRP!J5)3$\6W4R%J+?!;VEC:?F1VI6N/2@MLUC;2'.2JSS\18'#=6];8B MOQ'ELU9N\1'I9[NT;$4#2UDWJ%UM-%C<9.)^/)U/O']P^%7CWIVLP6>R-N;9 M&]_+3,1>$"HLR#-(_KW@ I7R1"SC3\\IAI >>+H^LG\-N7,N:^EP8=3ONJ0J M$W<"2MS(G:*5V7_#/I\;SU<8Y<(7]IUOF@@H=HY,TX-905/K[B]?^WLX =S% M%P!)#TB"[BY04/E9DLQGUNS!>F]F\XN0:D"SN%K[1WDDRZ_0_N" M(G__;GP;?[HB:C*(FEQC?^,5IN?D7B4\+_>-*/!4(2Q,TTI]@$J6H U7&J&M MI>+^ZW!MP-$)#G@R #'T@-(Z0/_L&PO=V]R:W-H965T]\6SN_D"WGFFWQ$=V_>F5HE@TH M%6]06JXD&-PLDMOQS=W4QX> 'QP[>S0&KV2MU).??*L62>X)H<#2>01&?\]X MCT)X(*+QJ\=,AI(^\7B\1_\:M).6-;-XK\1/7KEZD5PE4.&&M<)]5]U?V.NY M]'BE$C;\0A=C)],$RM8ZU?3)Q*#A,OZSW[T/1PE7^2L)19]0!-ZQ4&#YF3FV MG!O5@?'1A.8'06K()G)<^I?RZ P]Y93GEN-)"E\:+=0.$1Z=*I]@U9JR)J&P M$DS.,T=5?&Q6]HAW$;%X#;& !R5=;>&+K+!Z"9 1O8%CL>=X5YQ%?& [F(Q' M4.3%Y S<9) \"7"35^#^5@[M*5TQ;7HZS>^.&ZM9B8N$VM^B><9D^<>[\2S_ M\PRIZ4!J>@[]S?=PYV!K1FN@-E"JIJ%-9@,BG17 K6V9+!%T:_S(@5/ 0"KY\5?+!-]PPL$] MDYBG]TPT,4EAQ8SC)=K[-IPZ-H5; M%WG+RJ,C(V=+)FC*#) 3QJ$9O53V$KOC!$@4F-;">T8V^FC]*N76G(IF*Q_.'%3,80K_U-0. M^Z*^5,5MY'U@>;"=A@ MOG1W:<.F>SHX&_0;,/U1DVK: O$.V!8'6[0VWAQ',+C]4M[?LNI MW01N*#5//UTF8.*5%B=.Z7"-K)6C2RD,:_H*0.,#Z/E&T;G:3WR!X;MB^1]0 M2P,$% @ PC4/5]VS%:G$!P 8!0 !D !X;"]W;W)K&ULS5AM;]O($?XK"]7I"R!3)$51DFL;B-,4#7#)&?;E#OVX)E?2 MPB17MUQ)5G]]GYDE*4JVG*) @0*)17)VY_699Y:\WAG[7*^4KAP]&-U>K^52/2KW?7UO<3?JM.2Z M5%6M326L6MP,/D97=PFMYP6_:K6K>]>"(GDRYIENON0W@Y <4H7*'&F0^-FJ M3ZHH2!'<^+W1.>A,TL;^=:O][QP[8GF2M?IDBM]T[E8W@]E Y&HA-X5[,+M_ MJ":>">G+3%'S7['S:^-D(+)-[4S9;(8'I:[\KWQI\M#;, O/;(B;#3'[[0VQ MEW^33MY>6[,3EE9#&UUPJ+P;SNF*BO+H+*0:^]QME 3BT9GL6?R\YC3=%[*J MKT<.NFG%*&OTW'D]\3D]L?AJ*K>JQ>4O'@JW4N*3*=>RV@N9F[53N9"BYBW& M;UECB]BM=+82:V5+[>JC7;WLEX<:34D0Q7-Z282\L*9D73D6D376@QAJ72U9<%?( M[/GR,5N9@M)]B(,6E*A1X2/<,6%22K;*@O\%[&O0+!6 PNKB41*(;/2T:=P< MI4SLD-:+))A'(M]8LD.)Y0 NQD$8]Y[&'H%'_HA-K3S698WAU.0#"8#V!C(PKL5<0]L(-$Y7_299I_Y\ M#QYA!JU4;^Q>[+4JE,TT);Z#E.\Y!A:5SBIFW*KA(1\_.^7Q#%=/S1.P M.Q_1O&@8'$1J!W6HG8^A[58N>J]$L"MI3PO#-HNMH[X?&B9 1X A*^E/%CW4 M'(!)^/5R!MFQ\14 6X&W4%:IB5*V.E<5JDME0\!'%,6D8Q1#$C<.T%V3@[DA M0-;F %+*ER* BL7&;2QPRHU N!C'@)*9'L,/""BR3>?TZ#Y2CQZ$OVM)8J/#5%\ M;BMRS^R(08#NKG4F?F7*^/E0<7'9I]H(LV ZG$Y"<2&B*$CI-YY&PR1..Q9L MD92F[<(P2.?B)]#N50;!9'K&K^1';HU1MLZM.)AR)H9AE [G:82$"S1$ MMBFD9\ VO9Z1B8O1O2QL1W4?;%E M-U6?))@=R_R[";%")!2)HP@O(;C$6AQ# MF)MEPY!_CJ=S+C,>'%66S,;S83PY%<7!7_HYKR/= G3VZ=5Z?3 M0%S$\V@XB^?L)HYAZC!JCFI#I$*Y[7?I9GLG@#8DU-P'\(GQ;TZ:FDJ0<.%;.-!5DL. M_9@@:_%M4SXAL9"TI/.*4Q\4O<&3UG\RY6/MI][IXB>:!S\BX@LQ"\+HDJ@) M!8\\P83!G 6S*7,6R4&I$$P\WV$+"U+(24#RB.2 $<$[Q>PA090*%I \9OV) M/]=/@PE+4EH0^P5C5C!C>1S,6#"&'R0@><(*_/YQX 4S^!&E7C[MR6.6IT%" MT546$IO\C9RYF>1DW)AIL'8(RV9(6V@G;SY 634^^I3*KOD;UMT=-Q4SG\ ZIYV MG\\^^J]&A^7^V]M7:9<8I'B[7&!KB//' .\B_#W+WSBSYF](>/=WIN3+E9)@ M:UH ^<+@;:FY(0/=1\7;?P-02P,$% @ PC4/5WZ.]IQL @ =04 !D M !X;"]W;W)K&ULE53);MLP$/V5@0KT%%BR[*2! M:PN(DQ;M(861=#G3TL@DPD4EJ2CNUW=(R8H+. 9ZD,19WILW%(?+SM@GQQ$] MO"BIW2KAWC>+-'4E1\799=I4J)G12+*-O M8XNE:;T4&C<67*L4L_LU2M.MDFER<#R('??!D1;+ANWP$?V/9F/)2D>62BC4 M3A@-%NM5._BD*ZS^)4A)T2@K/\A:YV<9[]D>9M,+R+-\=H9N-G8YBW2S-^B^ M&8_N5%\];'X:%@9BX1I6XBJA$^_0/F-2O'\WO^#,07Z195EX@+6>&RO^4.ZV]=!JX5Q+AN.,.@130S.2N4 & M'16?*:$EMPT#XBZ& JA+)(/I M"J10PK,PI [8 4?%:O$29.[!4XVU8;8*)>Z$I8DVUDU._8/T:!04VET<> >E M:;7OIV+TCG?*33]*K^G]A73/[$Z0)(DU0;/)A\ND[^%@>-/$P=H:3V,:EYSN M1;0A@>*UH6,W&*' >-,6?P%02P,$% @ PC4/5TK+Y&ULE53;CMHP$/V5D2OU"9$;81%- M(BW;5NT#%5IZ>3;)0"(<.[6=S?+WM9V0I14@]<7V>.8RDNLJ9J*!KGQ[(6LJ3:F/'BJD4@+!ZJ9%_K^W*MIQ4F6N+V- MS!+1:E9QW$A0;5U3>5HA$UU* G+>>*X.I;8;7I8T](!;U#^:C326-[(458U< M58*#Q'U*'H/E:F;C7<#/"CMUL0:;R4Z(HS6^%BGQK2!DF&O+0,WT@D_(F"4R M,GX/G&0\T@(OUV?VSRYWD\N.*GP2[%=5Z#(E"P(%[FG+]+/HON"03VSYH!;!34%>]G^CKX/4[7R!%LM\F/B:<-KO5X^<*QZCO 6 M1PAKP76IX!,OL/B;P#."1E7A6=4JO,NXIB>(@@F$?AC=H8O&)"-'%]V@^R8T MJFMY];#9=9CMAZ5J:(XI,06O4+X@R=Z_"^;^ASNB9J.HV3WV*S>_O";QOTG> M;%52(QO, /'\8?(0!T U7-XM4%Y '"\FBVCVCR^<7LO1NZBT&N7!]9."7+1< M]T4W[HXM^]A7ZEMXW^]K*@\55\!P;Z#^]"$F(/L>Z@TM&E>W.Z%-%[AE:;X= ME#; ^/?"/.M@V /&CRS[ U!+ P04 " #"-0]75(]XT]L" !'!@ &0 M 'AL+W=O%F1%MA#;%'B.3Q42'JZUV9K2T0' MCU(H.XM*YZI)'-N\1,GL0%>HZ&2MC62.3+.);660%0$D19PER44L&5?1?!KV MEF8^U;437.'2@*VE9*99H-#[691&AXU[OBF=WXCGTXIM\ '=]VIIR(I[EH)+ M5)9K!0;7L^@JG2Q&WC\X_."XMT=K\)FLM-YZX[:818D7A )SYQD8O79XC4)X M(I+QN^.,^I >>+P^L'\.N5,N*V;Q6HN?O'#E+!I'4.":U<+=Z_T7[/(Y]WRY M%C8\8=_Z9A0QKZW3L@.3+;EJW^RQNX2P9U6KK3P2158_$L0DZ)>5G:0M9+QC#0S3,\B2;/@"W;#/PPFK]YE5XD'U\0->I%C5YB/W7UDU,: M_Y\%OI4(UUI63#7@.]/1SP*C+NH=*W($:FI :\GF3(@&Z $H*Z$;1 M5;6S- MR-=I>.BZ:)2D[[;O0:_!48Q;Y= H)DC!#E7M@Q8X>!+>T2#QP2LT.46B5O?P M0QC8:5'3KFG ,N%?U%-H#!.6)L7J%\7U\067W#$OP3[E][*MIL46H> V]TEJ MY9ER*DK#5W6 ;-$37JIB[ IE0=,*RI$F/QCO0^5I3(W6&#]!_.^9_ %!+ P04 M" #"-0]7D-P]T8<" #9!0 &0 'AL+W=O+.'JS!5Y(9 M\^2#VV(9C;TA5)@[KR#XM<5K5,H+L8WG7C,:CO3$P_6K^DVHG6O)A,5KHW[+ MPE7+Z#*" DO1*G=O=M^QK^?HJ.:EX)_8PG9Q!,DZF)^2F0^73(#=]1^Z'<7BTKHXV.T[S M33*WC%,X0'8B'V/,)E1:K$ )44F ME702+8BF(?,BN<402F]Q&RQFF(O6!JN./=G*D.-?W[4DW;Y'>5N^F1\%\V\2 MP7?@?7)(-:=NT;J0"CLDY/;U.'\I-F8YLCG)C .IP?\>,!D=N]/XH-UJI$T8 M*A9"N5WG#>@PMZZZ=GU+[X;>G: -%P *2Z:.1Y_/(Z!ND'2!,TUHWLPX'@5A M6?'L1?()O%\:]MD'_H!AFJ=_ %!+ P04 " #"-0]7[+7#2QT" #]! M&0 'AL+W=OX#C95+B%^".^SZ^XSBR@]*OI@:P MY"@::7):6]O.HLB4-0AF;E0+$G>V2@MFT=2[R+0:6.5!HHG2.+Z-!..2%IGW MK761J;UMN(2U)F8O!-/O^:ZVSA$56$G=/E,'5^I M&N-'<@BQ*0:7>V.5Z,"H0' 99G;L[N$,Y7=F69%I=2#: M12.;6_A4/1K%<>F*\F(U[G+$V2+Y>D,6S-3D$DZ+: $$M:QBORI"2$82E+)8!8=@03]CXGH[MX.HKC.$1< MNH3H[$D*T#O?>(:4:B]M>)V]M^_MA_"D_X6'CV'%](Y+0QK8(C2^N9M2HD.S M!<.JUC_PC;+8+GY9X_\$V@7@_E9AW3O#'=#_>,4'4$L#!!0 ( ,(U#U<1 MIR ]AP, /,' 9 >&PO=V]R:W-H965T:J7=+*F\;R[3U(F*:G0CTY#FG=+8&CU/[3IU MC24LHE.MTCS+WJY+KR M82&=3QM\BP=4 I9DW;2:+!4SI+/X\NK\V ?#7Y(VKJ#,00E*V,> MP^1;,4NR0(@4"1\0D'\;NB:E A#3^*_'3(:0P?%PO$>_B=I9RPH=71OU4Q:^ MFB47"1148JO\@]DNJ-?S+N )HUS\PK:SS3\F(%KG3=T[,X-:ZNZ/3WT>#APN MLA<<\MXAC[R[0)'E%_0XGUJS!1NL&2T,HM3HS>2D#H>R])9W)?OY>9Z-X$&Z M1P>H"_BN!5G/1^DEN6GJ.4 P2T4/=M6!Y2^ C7.X-=I7#K[J@HK? 5)F-M#+ M]_2N\I.(M[B#R?@,\BR?G(";#&HG$6[R MP_QA_7U;F='W<+A7'I&A0T2_CF M.[(;2N:O7XW?9Y].D#H?2)V?0C]U!)?'N)Y$.\[U5 BXT_ WZI9+\" MB3+4;P3@"J2>1R$=<ZC48"T(9%X:L?P>KEL?D''4YYM1S M7V 'CHG@:$.6 IIMFTB%!7)CM9&7 R;1H9@#NFX$-U*C%I+SPAWSD9@H*L=4 M52M\&[/GY%K+4@K47NV@:&T@Y"O)DKAWCN!?UD-/GK0/(8,Z6?/MB+-]5H'Y MA)UKPUMZ]_K513[^\,D]$^3X05,YL.&-^![P18I'<, B""ZE$VS%*1YW#%I. M(0?AF-Z&W(-%6X(L&GX%*,,QT]%T#;/*P.+]KGKI$_FW?/X2W:M>0T M*2K9-1M]>)> [9Z8;N)-$]OZRGA^).*0:ZP@&PQXOS3<[/I)"#"\\_/_ 5!+ M P04 " #"-0]7^&-ZK=8( "+%0 &0 'AL+W=O'?J0EVN:% M(E62LI/]]?L,2Y+8DGD<.:99YX9Z6QC[*-;">'94ZFT.^^MO*]. M1B.7KT3)W=!40N/)PMB2>US:YF_2:&Y_E]R\G)U2&M#PN^2K%QG=^,(ID;\T@7'XOSWI@<$DKDGBQP_%N+:Z$4 M&8(;WY/-7GLD;>S^;JQ_"+$CECEWXMJH_\C"K\Y[[WJL$ M>*__9;'X3*9XC MLI<;Y<)?MHEKLVF/Y;7SIDR;X4$I=?S/GQ(.G0WOQB]LR-*&+/@=#PI>WG#/ M+\ZLV3!+JV&-?H10PVXX)S4E9>8MGDKL\Q?99,ANQ9(K]F!-+D0A]=*=C3Q, MTX)1GLQ<13/9"V8F&;LSVJ\<>Z\+4>P:&,&GUK&L<>PJ>]7B'7]FT\F 9>-L M^HJY:1OG-)B;OF#NWGBQ-ZZX[7#_-BJ)$U?Q7)SWP'DG[%KT+G[]97(\/GW% MJO[E6"__O(NR\:GUZ:L MN'X.5Y/3 [;BCLV%T$SS4A0,5YQ]64E;O'G@UC_#T$+H@FO/),HI5A0**^<5 M_<>.*\-MP6 ,'Y$&_7 5<9[8P=(*=XQCYI@&#S%9L<=A&:Q54I M [LTVR+P<][6,87]/V8'[/;NBO53G.VZ#HJ.;2#Y])_.)5>D M1T<(*;$B-S80@)Y5UOP73\"HV^OW[+)=>1!=5FAY+!Y>6Y2:T$N4(9C2OT9) M();WL\N#0&):O:+5IVW]GP? >VW4&B#(Z$4W5Y.W MIPXMQLFE'K)+1&"V4$2G7L!-*;%$Q<_1I@$](N6[R$5>@M&>[GN+2D;E^PT5 M_Q9LBJ5)%/W68JGD4NB<<)2.6+:PIF15;2L3R+'@4M56D*.5L#0RL!I58QN6 MA).&6U(0'4C@!YU302,O(SMWPDMJTW!B#1=,[0"LQWH$NY&@VV8%?[:V5DA" M19:VH MB">"BZJ[4G4Y#PL 3&Z%!R%S,!K)@;0JY09I>@'$*"0MPG060H4_:XZ"<3_# MUJ6P,Z$/Q;I-K>J5GC0(PUG!ZHI(TF:]I?6.%7BQ)0F 3H28'+.OTN5$JQM> M5A1QTSP;B?EZ<^-:&?4K".A&6"(ME 1%$'@+_PVY65-/O .FP1K5?C+RY>ZF MM1%3DJHG?1A+&$',,ZU1I M_ZX1V5%39UT8/*9K/$L:G$@8?K)+[394MAW!:05I;\*@3T4AR3'0S(<55:=L M'4IQ+>)T$<]#G+2 *K<=-W:JYF5]&V+,P2RF/1'54:A[3^3("]Y=M@6*X6B) MC2UR=]S[&"1&9Q&Q E$GTP:L6270/-J[7]^(0\,>*[S4V!I4FIIVP/C^@GA4B?\,+ M,M -O -?/ZJ.3 ZDC--NZL\%Q5P0T]?"TKX2V7>4DLMZB:IETW&$(+"":*A0 MX*PP>1V\2(7$3)%O6/V2H6V)0V)W>5R/;G;RV5,S&DRE[ MJ!$U*5(D 76K%^6(=.AU 0KE\[,$07L:T4FXSJ/+9+%CL! *A$68\=+5T![G M%K4")GB5HF.:#D4]+2>(T*)0, MK10%A*;G,.W0@+)NO1BV,]+?\W7;B-)T M$L5_?V%O(XI3.'$$$X,4BU<5LQE"B+HQMK"3LHE'N*.W6:-ID7ID:6K*4'=: MEZ[)7DA^A5?T:%\N%N$]";.([LYRA1$[D/QOB(1)";).<\T+0]4+^A;AD=YU MH_S_XM,97']&!_\2=I'3VP$$ YVL4*RIY,+[1^Q5;?_:F%H5I+5KB?'15#1C M!^YA$WG7DGQW8M_I\(8D,[SL,6?*0#'2T!2#DGPNE?1A(29 >EP:2W+UI@.V M26QLI#>D>DU?W))ZA>D$46\EF/H+IYD029:1 A7I7U //Q>$P0+PR? :D%H(4 MQF]E[=WV2^-E_,"V71X_4Z(U+4DVE%A@ZWCX]JC';/ST%R^\J<+GMKGQ&'_# M3WH9%)86X/G"&-]+OP!02P,$% @ PC4/5Q)ZJEPM! W D M !D !X;"]W;W)K&ULS5;;@)-NU[(=.'_HB@<#NV3UG M%Y=I:^R]*YD]_:B4=K.D]+X^&PQ<6G(E7-_4K+&2&UL)CT];#%QM6631J5*# M\7!X/*B$U,E\&N=N[7QJ&J^DYEM+KJDJ83<7K$P[2T;);N).%J4/$X/YM!8% M+]E_K6\MO@9[E$Q6K)TTFBSGLV0Q.KN8!/MH\$URZQZ-*3!9&7,?/JZS63(, M";'BU <$@;\U7[)2 0AI?-]B)ON0P?'Q>(?^,7('EY5P?&G4GS+SY2PY32CC M7#3*WYGV$V_YO ]XJ5$N_E+;V9[\EE#:.&^JK3,RJ*3N_L6/K0Z/'$Z'+SB, MMP[CF'<7*&9Y);R83ZUIR09KH(5!I!J]D9S4H2A+;[$JX>?GHSXMNWJ0R6DI M"RUSF0KM:9&FIM%>ZH)NC9*I9'=&GX5O+ ?3/VJV(@CKZ,UN_>UTX)%30!ZD MV_@77?SQ2_''=&.T+QU]T!EG3P$&(+-G--XQNAB_BG@C-G0TZM%X.#YZ!>YH M+]!1A#MZ 6['[1"USG-RV#-LIS-7BY1G"?:+8[OF9/[+3Z/CX?DK>4WV>4U> M0Y\?JL39H23_!0Q]$1ME+%WQ6J;L>G2MTSZ]\273I:EJH3=OT8.ZR;&GX.U( MZ(RPTQ1&Y- QBJFPIJD#[IK16TY64@E+M359DWI'OA2>2K'F +2A3.8Y6T;; MB;J&X-O.PJ&SW01L79^^E)#Q.98 :E3U:"!,""C(Z&X(0E07!B+"IZ3%A6K M38^6+%TE4[H2%4B#WT?5R$RFKC3W#A4ZF9SWZ-(*X 1FUSI##E8*11=-R-,% M")6_6V1_82'LD&5ITGM:K)RQJ[C^N_P.2+J23,O:P@1SW^2J4_@A\(U(2U0D MVQG%>)>1,3:@;X0WMI.A<8$DK865IH%^FQJZ@V75(5C08H2LJRABJ(>W35>> M'J22V.)2;X[9]?'3F#+C%=TT%!&$HE_2:0?!ZZ+=$=))0* ME)_B**.+=PI'.V(XQX@-RC+C/L35N%>B()D!B#;(P0H4"GH:H-A60E71'711 M92<4#%?6W+.&4ZMIM0GQ8/;02'TZ'?W\/)%PX"#VFG7#U I'!>O #HGE%O7L ML)\4X"#7(/,( 0+$*XX+)T6?[CC':8__,]J3_R'M0X?UX-&-"[,BOBM< M%ZN[?/>S^Z?+HKNQ'\R[=\^-L(7$6:8L7L2->H:"77IF*.IJ:(;6V090%4R3@9CV_CB@D5 MI8L0VYITH1LGA<*M =M4%3.'-4K=+J-)= S,ABT]\'1\9/\:O).7/;.XT?*7R%RYC#Y&D&'.&NGN=?L->S\W MGH]K:<,7VCYW' %OK--5#R8%E5#=GSWWY_ O@*0')$%WMU%0^9DYEBZ,;L'X M;&+S@V UH$F<4/Y2=L[0JB"<2R5*RU\ M41EF?Q/$Y&DPEAR-K9.+C'?L -/)-23C9'J!;CJI;7\, .7,,],ND.A#*U-OV#ZV)7(UA)27LY-.][>> ,4Y:% MRK=ABSV3I(^,E>P)88^H *6@B@KJA3IQ0YC1N:N)3\JL0E.$9F(AV.HJ;H@. M_6K5E>F?]*[9W3%3"%(F,2?H>/3A)@+3-9!NXG0=BG:O';6 ,"RIYZ+Q";2> M:^V.$[_!T,73%U!+ P04 " #"-0]7L%TP%VL" !R!0 &0 'AL+W=O M^_R0\%-@9X_FX)7LM'[RBV_Y*DI\0RB1.\_ :-CC'4KIB:B-YX$S M&DMZX/'\P/XE:""M=(]ZNXK#GH^>CZNI0U?Z/K< MZZL(>&N=K@RZ02V_7V +F K2B4*P9ER<,NY;I43JH2-EH(+M O* MW5E\;I'B]WOZ6GAW"+Y?QHX:\K0Q'XJO^^+IN>(I/&CE*@OW*L?\;X*8E(QR MTH.<=7J1\8&]PFSZ =(DG5V@FXVG,PMTLS-T!VVGI/7(^6FD]]+"-HSC*B*S M6#1[C+*W;Z97R:<+?62VU;@R 4."(OA&** M^U3KB+<.I*XRNBVKD)#3[OG,#CV5M2WFDU.G&!_YH$93!K=;"/]Q;XEQ=WQ0 M;GL?_4GO7Z,'9DI! B46!$TFUQ\C,+W#^X7337#53COR:)A6]"BB\0D4+S0= MR[#P!<9G-OL-4$L#!!0 ( ,(U#U?B:>):M0( ,& 9 >&PO=V]R M:W-H965T+1I2X1;IO-I:M>$#)98W:2:/!8K&, M5I/Y>N;]@\,OB3MWM :OY,&81V_\R)?1V!-"A1EY!,&_9[Q&I3P0TWCJ,:,A MI0\\7A_0OP7MK.5!.+PVZK?,J5I&5Q'D6(A6T9W9?<=>SX7'RXQRX0N[SO?S M1019Z\C4?3 SJ*7N_N*EOX>C@*OQ&P%)'Y $WEVBP/*K()$NK-F!]=Z,YA=! M:HAFBCU,)Y\@&2?3,W#3X7*F 6[Z!MQ!VREI7>3L=*1OI;EK1(;+B'O% MH7W&*'W_;G(Y_G*&UVS@-3N'GO[["O-3!/\3 GY6",RU$5:$?N'30FJA,RD4 M.&(G[D5R(#5D1OMQ(&G/U4H5M]90*HV5'-$H+HT2-5JAU-Z?8T.8^UCB-/=: M>FM+H80XT:I&RU7'7?[42KXOKG#-(\$G!#)L/2+@4'-"YR S:.T1ICC]*>E!/ F'_="+WW"K3A'",N?VK9D\EP?SN6W*H<%86&]X1,,)0:6#W;1]. D=>_D<4I=FY*67I'#\^SDI M[3&-0].^$-NQ'S]N;#/=&[MU%:*')R6UFR65]_4D31VO4#$W,#5JNBF-5IJRVR(@8IF6;#X4VJF-!)/HVVIU1"J%0.V$T6"QGR>UH,K\*_M'AA\"].Y$A5+(V M9AN4K\4L&09"*)'[@,#HV.$"I0Q 1./QB)GT*4/@J=RA?XZU4RUKYG!AY$]1 M^&J6?$B@P)(UTC^8_1<\UG,=\+B1+O["_N@[3( WSAMU#"8&2NCV9$_'[_ O M =DQ((N\VT21Y2?F63ZU9@\V>!-:$&*I,9K("1T>9>4MW0J*\_EH *OV/<"4 ML!(;+4K!F?9PR[EIM!=Z TLC!1?H)K!@K@*FBU:X>VS$CDG4WL&;SNGM-/5$ M+,"G_$ABWI+(7B*1P;W1OG)PIPLL_@1(J:*^K*PK:YY=1+QG!QB/WD$VS,87 MX,;]5QI'N/$+<%UMYTIK(Z_.1X:9FKB:<9PE-#0.[0Z3_/6KT5SVO MJTOH^8O/,3G']'^QX%N%L#"J9OH 0G/9%.B 20D5];P\@!3D7=#5#IU7L1V$ M!F4T'JA7[99V2]GH(EIYER8*>-)!-*.>$C'JNY@J=-Z:2:8Y0FQP-WCNO[^B M";H4FIP%DZ0X+WP3YMX1@P/@$T<,#%UCZ91""8IA'G;,"M,X\+1I'!2-#5D# MC0,R&S.Y9OV+5D@T=A_!&^"&>&EO69N$AH<3LO!@A=L.SKUM>C*E"NTF[B(' M<VM_;J[;:?\V;W=E??,;J@6D%A2Z'#P_CJAO''_M(HW=9SYM?&T0:)8 MT&PO=V]R:W-H965TBT1:?/(34-,+O[]&X[:P8%?W"LU[7D1?*^;05:UQ@?&F? M/,W*(XK2#=J@G06/JUEQ-YK<7[-]-OA+XS:E9\+$#A2B03G]WV M=SSH^'ZN!09=[=09GE+R** M^=2[+7BV)C0>9*G9F\AIRTE91$^[FOSB?#2 19TU!@FL*B=CS]%] U\LAL,D?(3 [SK+=Y/RTBL&+N4!P;W'8/J1PPJ M>'0VU@%^M0K5]P ER3EJJGI-]]5%Q$>QA_'H"JIA-;X -SZ&:)SAQC^ Z[6= MD]9Y7I_WY LU":V0."OHQ@3T&RSF;]^,;H:W%WA='WE=7T*?G\_%Y!S-_P4$ M=Q$B7'!-*^P>=#8)@#N)(< J615H$8S^DK2B$0&1 :#PEHM'VQ!] MRI"#T_K1)_4C(IPF#815IPL5&4N3%,+;-Q^K:G@K-D(;L30(U)8@"(-Y8W0+ MC;.XIPOB7ZFA96Y7\+* 2 TK)"KR@#)Y'2F=^1#I?.N\B A+QSI"I+%B/BNA M/6R$27@%VUK+&D3;>K?3U G(6;H0!_ GQ26Z._$K':&<6>:VJWG0+C M0B#$K4M&P9+PN-!L%D$&I+<569^D]%%LZ&+3/1=2IB:9K-41"Y^W/=;<;3?( MX78-";>8S:G+H?>H#NL0Q0XIF<\]JW^Q(<&LC1/#_M^EFN*AD,-%5:@@A3X0 MH47)O0>T(L/V)@]?*M.VN7 M4@9X=E)[')00$GK*G([U\51)4=81*&-T1!B.K>=<]%M_,NR?W4?@U9\[@BER'@Y\_%."[9ZR;1-?FIV/I(CU$>5C3RX^> M#6A_Y5SL)WS \;_$_!]02P,$% @ PC4/5R38TG'H @ U08 !D !X M;"]W;W)K&ULI55MC],P#/XK5I$02&C=NCM 8YMT MXT7PX<3I3L#GK'77B#0IB;O=_7OL].5V:$Q(?-GBQ'[\/$[L+@_._PP5(L%] M;6Q8)151LTC3D%=8JS!Q#5H^*9VO%;'I=VEH/*HB!M4FS:;3UVFMM$W6R[AW MX]=+UY+1%F\\A+:NE7_8H'&'53)+AHU;O:M(-M+ULE$[O$/ZUMQXMM(1I= U MVJ"=!8_E*KF:+387XA\=OFL\A*,UB)*M7:+(\H,BM5YZ=P OWHPF MBR@U1C,Y;>52[LCSJ>8X6L\F<-?=![@2[O3.ZE+GRA)J]VAH,\&+P?+E,B=E)CC3OF6PZ)MG?F&1P[2Q5 3[: M HNG "G+&K5E@[9-=A;Q6CW ?/8*LFDV/P,W'TLUCW#SO\ -VDY)ZR(O3D=* M8RU"HW)<)=PY ?T>D_7S9[/7TW=G>%V,O"[.H:_/W\GB%-W_ GSZ"%P\]T>/ M0'F$0(JP $7L ZH6=WZUEMN<&YH [QONR@#D@!^P="B4WM7 4X,C;2&/;JN, MLCF&"5P_!C;>[77!27@29 M8:O,R&,"FUX*QTA%8GVT,4_DJI*XCD NFH? MO"9"R_G+DZ*%ZBEU?]9 _!YO!&B J[:;.N#O.[*MN5#VZ M=P/_FNEI&\!@R:'3R9O+!'PW1#N#7!,'U]81C\&XK/B[@UX<^+QTC@9#$HQ? MLO5O4$L#!!0 ( ,(U#U? PC_A4 ( "L% 9 >&PO=V]R:W-H965T M;8P;ZV&[^>LY.&(G45+XGO?-]W=[:_FQ^,?7(U(L%SH[1;1#51.XMCE]?8 M"#*8UM!+%IJ]BU%D410(V*TR2YB1LA=93-@V]ML[G9D9(:UQ;0=<39O184;I._MVK(5#RR%;% [:318+!?1!.UN [V1KSY(W[8A$EOB!4F)-G$/S;XQTJY8FXC%\]9S2D],#3]9'] M:^B=>]D*AW=&_90%U8OH-H("2[%3]&@.W[#OY]KSY4:Y\(5#%WO#P?G.D6EZ M,%?02-W]Q7-_#B> V^050-H#TE!WERA4^5F0R.;6',#Z:&;SB]!J0'-Q4OM+ MV9#E7_G,7$AGB[.^Z2K+FGZ6M(4'HRFVL$776#Q+T','0QMI,@W-7"MR7$0L$H=VCU'V]LWX)OET MH:[I4-?T$GLV'/_L7&7_BSVY1>G D2 L0!!0C< B1>N?@MBC955";AR!L:!Y M0+#JE?PMM@IA+]0.1[ \C1)M:\VS9*F@@U):1Q^DONI7/!!"U.C<,<0G#[A! M6P69.@@/L'O+@W>8!,M. '_#NS'R(&PEM0.%)4.3T&ULG57O;]HP$/U73IDT;=)& M(-!NHA"IM)NV#TBH:-MGU[D0JXZ=VI=2]M?O[$!&)8JF?2'^<>_Y/9_OF&VM M>_ 5(L%SK8V?)Q51,TU3+RNLA1_8!@WOE-;5@GCJ-JEO'(HB@FJ=9L/A95H+ M99)\%M=6+I_9EK0RN'+@V[H6;K= ;;?S9)0<%N[4IJ*PD.:S1FQPC?2C63F> MI3U+H6HT7ED##LMY<(;U#H0L8S'/6?2'QF Q^,#^]?HG;W<"X\W5O]2!57SY',"!9:BU71GM]]P M[^D$7=W4%1Y:T@D<^< MW8(+T]G*;&JP)W*O8)%IR![34$&2VNH M\O#%%%B\)$C93N\I.WA:9&<9EV('X]$'R(;9^ S=N+^B<:0;OT)W\';*6H>< MG$:&@IKZ1DB<)UPQ'MT3)OG;-Z/+X=4979->U^0<>WXZ%]-3,O^+Z&6RL4^V M\N!)$!8@"*3U!(:;![\>(65;MSIN%S0+^,;9)\7)YH'BMZ?T M#EH?7AI5R.1.A%KZ&'1"C539 KC]0*F,,,RBN1LTUL6GV;2NL1Y]U,@"N-Q= M%-#A? 0J(VV-0.+Y!'( 2^Y=A($;(PW'".68TB'(2K@-TY&%_XP-DZ MA\45^*.B476PAN&>]GC1*!):_<9B<"KGZ5'IULA'A0;E(99>5\7]:M\#K[O2 M_QO>-= E*U4L3F/)T.'@TT4"KFM*W81L$QO!O25N*W%8<1]'%P)XO[26#I-P M0/_/D/\!4$L#!!0 ( ,(U#U>=86/U.@( #8% 9 >&PO=V]R:W-H M965TL^ MJ_;9%I4E3SHG[7\_2?[1#M(PV!=+)]U[>L^G4WK4YL'6B 2/C51VS6JB=A5% M-J^QX7:F6U1NI]2FX>1"4T6V-8;XY=S5V;ANM+-3]J,7=[E!4X6.M1#N8G^MI]7I4;CJ>^$YO7]1 M;KBIG#R06#IH//MXP<#T7=H'I-O0&?>:7)^%:>T>-C0^P>V76M,8^ .FIS+[ M U!+ P04 " #"-0]76T;5Q=L& [$@ &0 'AL+W=OW=S9;N@ ME:%[)WS7--)M[DC;]?7D=-(_^*Q6=> 'LYNK5J[H@<)O[;W#W6S04JJ&C%?6 M"$?5]>3V].+NG,_' [\K6OO1M6!/EM9^Y9N/Y?5DSH!(4Q%8@\3'(WT@K5D1 M8/R9=4X&DRPXONZU_Q1]AR]+Z>F#U7^H,M37D_<345(E.QT^V_7/E/UYP_H* MJWW\+];I[#L<+CH?;).%@:!1)GW*IQR'D<#[^1&!11981-S)4$3Y@PSRYLK9 MM7!\&MKX(KH:I0%.&4[*0W#X5D$NW)R>B(>4#V$K\:!61E6JD":(VZ*PG0G* MK,2]U:I0Y"_$9WHDTQ$^"XNC,;"O^J]?7\T"(+'B69'-WR7SBV/F%^*3-:'V MXD=34KFK8 9?!H<6O4-WBVG;^>4SN,X'7.?/:;\YD(B+0QC_NY8A MQ\JCZN+SOZ@4KU9DR$FM-T(&4:DG/&N=*I!VL:[)3(5U0OJI"#6)#[9II=F( MX*3Q%3DO"F39@=T@6>MLHWP4MV57!,^2'!]6)H(5,A.?G%"H6_PUS$1HAF44 M+5>TCW:@U:L2L"(1(;JN55'O0*"G-AVW8DF"0.B@81N*Z:FHI5F10&L;D#KF M>ZBMIX/P3L2M:,G%9F@*$G:IU2I91[AD[UO$G7Q&VV';O7X\+I5'5>'QRMIR MI#P>8Z>R\U.X7K):?M@A.QP\F:J2)*(SV#_B"%L=)5XR#1(COLGS\5!X7/E*47DB?L7!1GZQ3H789&SG!NQ> MU/*1$!2/N.NC"F4*0A_=<3SYN3*E>E1E)W6,Z2ZA ,;8@/M6@B<$_H(QH$&E MY!(6*^@4%EI["E!S:?,G(X3J G1M48MPKUP*?HU[<%TF=J3-\])O(] MOD*(*1WBNDA>U9+#"Y;!+2-YPHINJZ"WP90:W[,4&7A04$R"X]D9:[25&XS\ M$&L2AE;HG-P\FE93YG"):,"30G>>K:6&4JDP/>+5,SS=8?J6YO:17<;J,6YZ MFH' 92.L(;$AZ5Y/X2JWB\+ZP,$M.N=&&!WI%! .A@W(.8$K3:S%)(+X9==R M^VI(^L[1UO-@U]*5V9L-&^/J.9K]CST&U@\ H*/ETJ*E#?QG M2QSH&ILDNEGY!0J:B!4:(_P^6CX60R/+F$=E2^PGR$@"JRU71>[R*?A+VN8" M8=U6@S+;P+)*M'^W2C)8Q@WME]BU_!2I[&U MK3,^..J@'2(L?*W:R.S]VN*=<@=H'JLI%S 6\QIEF'6H&RQ*8KSF3,7;TQ>< MDZ%/RS2Z'9^L=CK"T +VSV:L6^[C&"KS[/L7^T>XEXG6*OC"L<+9?P"X ,#Y M_P7P?/ZO -[WB<\-)B4I;-I$)F%H98.*M(6 DK%LG!EK M[I8E]PRNQ2-UF]C>(C70(F9[5%]Q3WF=&GJE#'1RU?@ B/%\+NW4R-K. MM5A9]K8O0X Z,'ZI--:_%="L\%O-AU31L2_M-3 H[,RVYPZY2:.=Z)XL[PFD#3$[T.X7& %<: M2\4 9G!Q1_8YB(? '-9R ")H#V1MBU\(/,5V@S^:*[S!'MUP\6X)?ESRO@\HGO.149X.H,OS:RJ6W78K MTZI1*3K3W/]1+MB&ULK551;]LX#/XKA&\8=D 0)W:;#5D2H.TV M[!X*%,MM>U9EVA8FBYZD-.V_/U)V9U?SY?6%^">';P;WX60,4LD]T0^9_%6MLYD00HLZ"H+BWP/>H+4" MQ#1^CIC9,:4$GHX/Z)]2[5S+O0IX0_:[J6*[SMYE4&&M=C9^H?UG'.NY%#Q- M-J0O[$??609Z%R)U8S SZ(P;_NIQW(??"2C&@"+Q'A(EEA]45)N5ISUX\68T M&:124S23,TZ:LHV>5PW'Q G&LZ%E8<"KLNSB+>JB7(DAP;+F;(YG_+0OLD4F_*A>+R=M%F3Q?%>6[R66Y )9@ M20I/J+@XE(L"I\<\>?.@F+[0JR2!)O(Q9AS%W+3>>5!UQ 'XL',1]9T M3J'Y8GH6IJ%DZ#U5.QV'S256YXH95U#O;&VLE2ZD/[L'S[MT0BEUBS9H9Y7':IW<+):WUR(?!?[2N LG:R6> MY,Y]ELV'(?&"!#3^#)B)I-)43Q=']%_C[ZS+SD$O'/F M;UU2LT[>):K$"GI#']WN#QS]>2UXA3,A_JK=(/N6+19](->.RKQOM1W^83_& MX43AW?P9A6Q4R"+OP5!D^1X(-BOO=LJ+-*/)(KH:M9FASRH5RE'G5M=:4+L*1NBL+UEK2MU8,SNM 8ENJ#+5R+ZA/L,:B?C^>_K%)B M+H*8%J/=V\%N]IS=3-T[2TU0O]D2RW. E)V8/,F.GMQF+R+>PT%=+5ZI;)Y= MO0!W-07F*L)=/0-W].V2:X/F]65-*:-EZ*# =<)U$M!O,=G\^,/BS?S7%WA= M3[RN7T+?G&9@>8G<_U!7GQI4G7=;'6N,2USIX9YB@N-5R0NYH28>*ZPJKJ@@ MSX4\V "QO )7:.<\81*DH^8$2?JYHLOH5@Z&,XHJMDV. M'JG3YA$Y\2([)R >>4&T[LGFT>MO;']O\J0&^-6,42M[+^U5\GA X,BB],+_ M0B9'HW$KMDBRR)2,LS7*M,W_D0?"*< ]<%PA#K_\H"HLIXA'-I)3,0\]-$ C/G&1C]GG&-0G@BDO'4<49#2@\\7??LWT/M M5,N.65QK\8?GKEQ&-Q'D6+!:N'M]^(%=/9\]7Z:%#5\XM+'7XPBRVCHM.S I MD%RU?]9TYW "N'D+D'2 ).AN$P657YECZ<+H Q@?36Q^$4H-:!+'E;^4K3.T MRPGGTLD(MNU]@"Y@R_>*%SQCRL%MENE:.:[VL-&"9QSM'+9,H(4'UM#W0^_^ MN(@=2?&$<=:E7;5ID[?2)G"GE2LM?%,YYJ\)8JIA*"3I"UDE%QGOV!&FDT^0 MC)/I!;KI<"[30#=]@ZZO[5QI+7)V'NF[:&XKEN$RHC:Q:)XQ2M^_FUR-OUS0 M-1MTS2ZQIR<7,#^G[?_1L$;CJ&OA;VVXS7GH$@M<5MHB,+ AUK$&J'G66E9, M'7NG!J45-B@KUSU2-'8$#R4.D?0P?>=1<$F'X'D(6!@M7P# 5$Z-+7D;!4BO MS5!JZ=\=,$M[3S5YY\,F$W7>YS#XC*K&-@4V-,(L MMDE\09TV(AX4D#$Z=SWQ26N1YGT8(!9":[1=-GB'&77;MN9+>#O@[IC9V0V"_ M?F<'4BI1-$U"8)_OGGL>^^Z8M4H_F0+1PK8JI9D'A;7U- P-+[!B9JAJE'22 M*5TQ2UN=AZ;6R%(?5)5A'$778<6$#)*9MRUU,E.-+87$I0;35!73NP66JIT' MH^!@>!1Y89TA3&8URW&%]F>]U+0+>Y145"B-4!(T9O/@;C1=3)R_=_@EL#5' M:W!*UDH]NKP_H7[UVTK)F M!N]5^5NDMI@'MP&DF+&FM(^J_89[/5<.CZO2^&]H][Y1 +PQ5E7[8&)0"=G] MLNW^'OXE(-X'Q)YWE\BS_,PL2V9:M:"=-Z&YA9?JHXF U0&*Y%+D0G.I(4[SE4CK9 Y+%4IN$ SA955_.ER0=>0PKVJJ#0,\[?[ MX>#S<19:XN700[[GL.@XQ&]QB.%!25L8^")33%\#A"2H5Q4?5"WBLX@/; ?C MT0#B*!Z?@1OWES3V<.,WX [:3DGK(B>G(UU+34W-.,X#ZAF#>H-!\O[=Z#KZ M=(;7I.>O/4:TU-$_Q,*?A3H+4SNH$)F&M(!_/CMN3(6F!;&U4JF5066 M8G+MJHB*RA1,X^7:0]=L1QUM#5@%6-6EVB&A,0L9$QHVK&P0F$RIW;FB4OQ# MAZ;A19="2/I09@2U0>V3U*B%2B%MM,O=%H)\G?V #<(0UG,C-"6GG+56&Y$B MN)<0'!TD;GG!9(Y $\['LI;I=.AU&W\K'?57DG'KUB\Q.V3: +KRA>/B\V)H M$4/+#%Q,1C>#^*JS7L31:!#?W Y/%4)XU-$5ZMS/+7?MU)%=<_?6?C3>=1/A MQ;V;JP],YT(:*#&CT&AX&PO=V]R:W-H M965T>-+721$*@W<0@$K!-VP,3*MKV M;)*;Q*IC9_9-*?^^MA,R)E$T[27QQSW'Y]@^GA^T>;05(L%S+95=L(JHF461 MS2JLN1WI!I6;*;2I.;FN*2/;&.1Y -4R2N+X/JJY4"R=A[&M2>>Z)2D4;@W8 MMJZY.:Y0ZL."C=EIX$&4%?F!*)TWO,0=TH]F:UPO&EAR4:.R0BLP6"S8"U8!VXH3RA[(C MXV:%PU$Z'L&N.P_0!>Q$J40A,JX(EEFF6T5"E;#54F0"[0R^NVT^F]@15SDW MN86;4\WM/"*GR[-'6:]AU6E(7M.0P$8KJBQ\5CGF?Q-$SM#@*CFY6B57&3?\ M")/Q.TCB9'*%;C)LTB3035ZA.WF[9*U#3B\C?:1FMN$9+IC+C$7SA"Q]^V9\ M'W^\HFLZZ)I>8T]?.XW9):'_205+=73IRU"1/(*PML7\\A58ZSS;/^7=X[/AIA3*@L3"0>/1^SL&I@MTUR'= MA!#M-;E(AF;EWD TOL#-%UK3J>,7&%[5] 502P,$% @ PC4/5]G9FR-* M @ +04 !D !X;"]W;W)K&ULE53;;MLP#/T5 M0@.ABQTDOR!(#2;=A>R@0)+L\*S)M"Y4E3V*:]N\KR;&786F O=BBQ'/( M0XF<'XQ]<#4BP5.CM%NPFJB=)8D3-3;1%!C4JR M-+U.&BXUR^=Q;VWSN=F3DAK7%MR^:;A]7J$RAP4;LWYC(ZN:PD:2SUM>X1;I M1[NVWDH&ED(VJ)TT&BR6"[8,R)>M/I<=1/A[!MKL/,"5L9:5E*077 M!$LAS%Z3U!6LC9)"HIO!!H7BSD6?4%4'[_K#]_.$?$*!-A''X*LN>/9:\ SN MC:;:P6==8/$W0>*5#'*R7LXJN\AXSY]A,OX 69I-+M!-ANI,(MWD%;I>VSEI M'7)Z'AEZ:>9:+G#!?+,XM(_(\K=OQM?IQPMY38>\II?8\W^N878NP__E@.\U MALIE4$K-M9!<@2-.Z)N0'-3\$6&'&)JQAV(!9$ 8'<:#?[I4 WF2*%D3[QJO M,"UY1^\2[V5TK@#)R1-NT%:Q41W$)]B]YF%WF 7+K@7^N'>#Y)[;2OJ7J;#T MT'1T<\7 =LW9&63:V! [0[Z]XK+V\PQMX9WBYU43[H",.2E;81>>I4QW3P(=%%!R_6%[$#@R4:JEAM< MJFV@.P6\=$5M$S!*DZ#EM?#RA=N[5_E"]J:I!=PKHONVY>IU!8W<+;W0VV\\ MU-O*V(T@7W1\"X]@?G3W"E?!A%+6+0A=2T$4;);>=3A?Q3;?)?RL8:,;VII2T\C/?HGYUVU++F&FYD M\ZLN3;7T4H^4L.%]8Q[D[A9&/3.+5\A&NR?9#;F7,X\4O3:R'8N105N+X8 "ZF>^;D#/_W-.WG]W[P^+P" ?BQH48^_5T)N] MT3MDY$X*4VGR2910_@L0H)!)#=NK6;&3B'?\E42A3QAET0FX:+JPEIKKCA>P]- S&M0S>/GY69C0JQ/\XHE?? H]/_UE MCK$]B7>3/:.R8X)&?I,FQVPT.;((:A@ P\+(SIEN+0U>B LKG)F@; *>;Z0T^X5M M,$WA_ ]02P,$% @ PC4/5U,EI+^% @ ?@4 !D !X;"]W;W)K&UL?53;;MLP#/T5PBN#KBVPWR1(#S;9B!5:@:+?U M6;&91*@M>9+2M'\_2D[<#$CS8I$4S]&A9'*Z5?K)K!$MO+2--+-@;6TWB2)3 MK;'EYD)U*&EGJ73++;EZ%9E.(Z\]J&VB-(Z+J.5"!N74Q^YT.54;VPB)=QK, MIFVY?IUCH[:S( GV@7NQ6EL7B,IIQU?X@/9W=Z?)BP:66K0HC5 2-"YGP54R MF6J^T/W-63.[Y*-<9_8=OG9GD MU<98U>[ I* 5LE_YR^X>#@"C^!U N@.D7G=_D%?YC5M>3K7:@G;9Q.8,7ZI' MDS@AW:,\6$V[@G"V9!=P(Y]16J5?)_! ;UYO&@2U? O#IU]\T:#Y/(TLG>AP M4;5CG_?LZ3OL20JW2MJU@>^RQOI_@HBD#GK3O=YY>I+QEK\"2T)(XY2=H&-# M^^\PU4:B-MWQY#=!@N5WU/O:7WD^F6ZY60!AI<$C2^N*1>UGVW M]XY5G>^PA;+4K]YX MQ2&GD@( !(& 9 >&PO=V]R:W-H965T-Q5#,N@V+F]VYT,5.M%5S"C2:FK6NFGQ<@U'X>),%AXY9O=]9M M1,6L85NX WO?W&A<10-+Q6N0ABM)-&SFP54R763.WSO\X+ W1S9QF:R5>G"+ MK]4\B)T@$%!:Q\#P]0A+$,(1H8Q?/6\;!Z1LC55U#T8%-9?=FSWU=7@-@/8 MZG5W@;S*3\RR8J;5GFCGC6S.\*EZ-(KCTGV4.ZOQE"/.%MD%62IC#6&R(M?& M/>BK];PEHS#- M)F&2)&AG(1WGX3C.3]VT+,Q'<9CG$Y*&-$G"=$))$HF$N\B\ZF28IV M^FED,)-6VJYEA]UAX%UU??['O9N6*Z:W7!HB8(/0^.)R%!#=3:!N857CNWZM M+,X0;^YP:(-V#GB^4%B[ \!LH?@-02P,$% @ PC4/5_PP*GF, @ M\ 4 !D !X;"]W;W)K&ULK51-;]LP#/TK@C<, M&V#$MNPF;988:+(.VZ% T:S;6;&96*@L>9+E\H5HKN(0[34Q;UTR_K$"HPS)(@F'CGN\KZS:B?-&P/6S M/C1W&E?1B%+R&J3A2A(-NV5PGW>)[N0QB1P@$ M%-8A,/P\P1J$<$!(XW>/&8PI7>"Q/:!_];5C+5MF8*W$+U[::AE';]#7<^'P"B6,?Y-#[QL'I&B-574?C QJ+KLO>^YU^)< V@=0S[M+Y%E^ M89;E"ZT.1#MO1'.&+]5'(SDNW:%LK,:_'.-LGDW(6AEK"),EN3&68Z& %M.2 MR[TA*-R#+%3="'#[:R6M1B7-G&SP?I2M *)VY+I6K70@&@B7A6A+].62V I0 M=Q?.Y OBH8""R0*()VS(QQ]L*\!\6D06:W&,HJ+GO>IXTS=X)Y3<(I?*D!N) MR5X#1"C"J 0=E%C1LXBW[(6D24AH3-,S<.DH;.KATC?@NLJB025SJL0.(3N- MX-IQ;AI6P#+ ?C.@GR#(/[Q+IO'G,_RRD5]V#CW_#\=WJJ2S24^7Y!5W+WIT M%6&\BC!<120$SP48XRAON1!^]SW)PH3B%56'$N01)> M75$,CM%** UGTQ0A:9C@M9@EU-LT2=%.3AU =-2%->B]GS4&4Z*V74..N^,X MN^ZZ^*][-PMOF=YS:8B '8;&D]E%0'0W7[J%58WOZ:VR."&\6>%(!NT<\/]. M*3LL7()QR.=_ %!+ P04 " #"-0]7?+*Y#9," ##!0 &0 'AL+W=O M>%%:=^"GTYH5N$+[6"\U>?X!)><52L.5!(V; MF7<;3N:)BV\#?G+&SOT;^TVDG+FAE<*/&+Y[:<>=<>Y+AAC; /:O<5>SU7#B]3PK1/V/6Q M@0=98ZRJ^F1B4''9O=ESWX>W)$1]0M3R[@JU+#\SR]*I5CO0+IK0G-%*;;.) M')?NIZRLIJ^<\FR:7,)"&6N R1SNC.4D%,EB6G)9&*#&/< M0T_?_)-.$3\+?9IXVU?WB.![4ZU1OWHI*"*\@=N"O(*N'-2H,Y06]G<-XG@ MR7AP%,(JU5"$1K=LZ';"17@]#$;A,+E.X&(\'$7C810GL.R@:*>XZE99)F#+ M1(-$8*MX1O?8JGZXB&%T,X#X:G"JV_[18%%HT:X/0QR)1S=CA]/#AKKM!O-? M>+?>[IDNN#0@<$.IP>7XR@/=K8S.L:INQW2M+/%JS9*V+&H70-\W2MF]XPH< M]G;Z%U!+ P04 " #"-0]7FE2>&%\" "$!0 &0 'AL+W=O;F0C4HW1% M8@9I:.XYI4DV32<+74V55LK*HE+#69; MUUP_S5&H_8PDY'!P5VU*ZP_B;-KP#=ZC_=HLM=O%/4M1U2A-I21H7,_(=3*9 M#[Q_ S62GUX#>WQ8Q0+P@%YM8S<+?L\ :%\$1.QH^.D_0A/?#8 M/K!_"+F[7%;ZVRP.)W@MBEU>?&#KG-V5G&!7^" M-(F 49:>H4O[4J6!+GV&KLTL/E3#G$JQ91B<9O --C$-SW%&7 <9U#LDV:L7 MR8B^/:-OT.L;G&//_N.93DD_2WY:>JBL_[ _ JH0L.K_BY? (I:.HH2.@IVF M@V@\OH)/: QPX69#@+HI VIEE"MOCOX@<2@678U&WF*7T7!,'3Z)*$VC9-#: M";V,4GIUJH3Q46?4J#>A_PWD:BMMVR3]:3]BKMO.^N7>SJ<%UYM*&A"X=E!Z M<3DDH-N>;S=6-:'/5LJZK@UFZ<8D:N_@[M=*V&PO=V]R:W-H965T/%$4O]MH\VAVB@V]-W=IEL'.NNPY#6^RPD?9*=]C22:5- M(QVI9AO:SJ L!Z>F#D44S<-&JC98+8:]C5DM=.]JU>+&@.V;1IKG-=9ZOPQX M<-SXI+8[YS?"U:*36[Q']Z7;&-+"":54#;96Z18,5LO@AE^O$V\_&/RK<&]/ M9/"9/&C]Z)4/Y3*(/"&LL7 >0=+RA&^QKCT0T?AZP RFD-[Q5#ZB_S/D3KD\ M2(MO=?V?*MUN&60!E%C)OG:?]/X]'O*9>;Q"UW;XPGZT3L%!'!S$P'L,-+#\6SJY6AB]!^.M"V?H M5)&?6\VO8&/HBHU[!MF6\.YKKSHJNKN&>VJ LJ\1=#79,-C4LG4_F\*?G^5# MC?;-(G1$R0.'Q2'\>@PO7@C/!=SIUNTLO&M++'\&""F7*2%Q3&@M+B+>R6>( M.0,1B?@"7#S5)Q[@XA?@QLS"8RWLN11'A.0\@G]5U[:3!2X#>C86S1,&JS]> M\7GTUP5^R<0ON82^^M^7=([X1>CSQ(>Z^H^ 6X__&G@^8T)$)]*Z5W6IVJT= M&*BF,_H)/0<+/&)1'+,XSR%GF> L\QT@BQW%-F,'XM16G.#2C.4B R[(.F'S M? X?JTH5"%5O6N5Z@[\XD6$2L3R+2$J3A"51!#>]TR,99_KBT0)!93P[+K>_ MT4RRF,+FTRHRELU28I. F+,H)[]T!K=H";4H^J:OI<.2I@$5JE!RF#<\93R> ML22/@,^9(%*/.L&S7887A8*W;=N?.'3 M[C0?;\:Q\,-\'*YWTFQ5:Z'&BERCJW06@!D'UJ@XW0U#XD$[&CF#N*,9C\8; MT'FEM3LJ/L#TUUA]!U!+ P04 " #"-0]7KX,._64" !-!0 &0 'AL M+W=O_^Y_M\_R@]*.I "QY;H0T M"UI9V\["T!05--S+9*G;]W^%G#P9R-B:MDJ]2C,[Z6"QHY02"@L([ \?<$:Q#"@5#& M[R.3#BE=X/GX1/_L:\=:MMS 6HE?=6FK!9U04L*.=\+>J\,7.-8S._ MY-#[CJ:4%)VQJCD&HX*FEOV?/Q_WX2Q@$KT2P(X!S.ON$WF5G[CE^5RK ]'. M&VENX$OUT2BNENY0'JS&U1KC;#ZY(G=2OV%7B M'7\A21P0%K'D"BX9-B/QN.057%]9>"K?7"JQ)Z27":Z%9J;E!2PH]H@!_00T M?_$K2 M;!HD28J4-(BR29 P1TR"-$Z#)$XO[51X=L51T]XWLL&,G;3];1]FA[=BV;?( M7_?^H;GC>E]+0P3L,#2ZR4:4Z+YY>\.JUC?,5EG< #^L\+T#[1QP?:>4/1DN MP?""YG\ 4$L#!!0 ( ,(U#U>;_CO)< ( %<% 9 >&PO=V]R:W-H M965T*>"E _6=SX(@]7O>"B]?NMB#RI=R,%TKX$$1 M/?0]5Z]KZ.1^Y87>,?#8UHVQ 3]?[G@-&S _=@\*/7]B*=L>A&ZE( JJE7<3 M+M:QS7<)/UO8ZQ.;V$ZV4CY9YZY<>8$5!!T4QC)P7)[A,W2=)4(9OP^K0 M**X5]J=LC,+=%G$FGU^3#>] +\AMJWE=*ZBY.RY9C1OD$9Y!#$ ^?.=;]#\N M?8-U+=HO#C768PWV1HV0D7LI3*/)%U%"^2^!CX(GU>RH>LTN,M[S5Q*%E+" M11?HHND0(D<7O4$W=N9O\,:7 UKG6AP9XO,,=G06>L<+6'DX&QK4,WCY^W=A M&GRZH"^>],67V//__)ISU"U&VE-"CD(,][[*3J] M&C?CL/Q-'Y^<>Z[J5FC20870X'J6>$2-8SPZ1N[V0\N_Y^RD ;1235,EY\Z^>_>>W;O95JI'G2,:V%6ET',O M-Z:>^KY.Q=LNHALO OX5>!6O['!*EE+^6B=FW3N!980EI@8B\#I\X1++$L+1#3^ M=)A>7](FOK7WZ-=..VE9. [U%-8T;NG38D@,UC*JI8"A='6>XV# MJQW]*S3"8($"L\*7E2X%[4(CR+>\F<8L2&$03@Z C?J[VCDX$8?P+7*_/W%Z$,26X3H,(+M MK*FN>8)SCUI'HWI"+_[RB9T%WX_PBWI^T3'T^/]>[)"*HW4.JW"7;)<0EHU2 M5!D,E:N5?"ILYT[A&E-4O(3/P(83%@R#("";IL:0D;4RW""$;I<-([=.6.N' M 1N.Z7N)&1)T^AX9!NM.RFN-0?0MLJDGP-C8Y;;X7^GW]YEE%++SCM&(39QU MZ$7\-QU6H=JX.:(AD8TP;;/UN_VHNF@[]#6\G7.W7&T*H:'$C%*#T\G8 ]7. MCM8QLG;]NI:&NM^9.8U;5#: SC,IS=ZQ!?H!'K\ 4$L#!!0 ( ,(U#U>3 MHJCK&P, !@' 9 >&PO=V]R:W-H965T?.4 /")FEJ>R9)T[E^R%S&:>\^R[ 834&BDHB3?W\K@8G;<3R= M?H&5M/OTWB(]%CNEOYD*T<)34TNS#"IKV\LH,GF%#3=3U:*DE5+IAEL:ZFUD M6HV\\$5-';$XSJ*&"QFL%G[N7J\6JK.UD'BOP71-P_7S-=9JMPR28#^Q%MO* MNHEHM6CY%A_0?FWO-8VB$:40#4HCE 2-Y3*X2BZO9R[?)_PK<&<.8G!*-DI] M2=L:H9BHE!(V3_YD]#'WZE M@ T%S//N-_(L/W++5PNM=J!=-J&YP$OUU41.2/=1'JRF54%U=I7$4_@L<]4@ M?.%/:"[A@;Y[T=4(JH3;LD3?MH,<6'.+L,9@?L1@]>:/)(L_G. W&_G- M3J&O?N=['=-PL9]UF0HSCP'WQB67(2QC]/DW$P,CIWOZ,"M M&M1;[\D&1#&RH# M #J!@ &0 'AL+W=O/FD@#M]88=L Y%>]M]5F0FT2I+GB0G[7[]*#E)4RP-L"\6)9(/ M'Y(2/=UJ\V37B Z>6ZGL+%H[UTV2Q/(UMLQ>Z@X5:9;:M,S1UJP2VQED37!J M99*G:96T3*AH/@UG]V8^U;V30N&] =NW+3,O-RCU=A9ET?[@0:S6SA\D\VG' M5OB([H_NWM N.: THD5EA59@<#F+KK/)3>GM@\&? K?V2 :?R4+K)[_YULRB MU!-"B=QY!$;+!K^@E!Z(:/R]PXP.(;WCL;Q'_R7D3KDLF,4O6OX0C5O/HCJ" M!I>LE^Y!;W_%73XCC\>UM.$+V\%V/(J ]];I=N=,#%JAAI4][^IPY%"G[SCD M.X<\\!X"!9:WS+'YU.@M&&]-:%X(J09O(B>4;\JC,Z05Y.?F67H)WQ37+<)W M]HQV H_4]Z:7"'H)M[A$8[#Q.KBV%IT%IAKX3;"%D,()M'#QG2TDVH_3Q!$? MCYKP7>R;(7;^7NP<[K1R:PM?58/-6X"$$CEDD^^SN =NR"S95\2>2G% *$\C^"*(]#,@$;W"[?L);U@ MCF(3*@H_0Q73V*"UB$M:/6>A-JB<-B_ FK_HXM/+=U"7<4'ZJSR8OT76"ZLE M.CSRS,=%,,S'=5Q[!\Y-3_0VC+,P!+*BBBM2['#W>KK_K;!^T%BX"I[C.*7O M#V8,4^X%=LE#E<=C.B\'^(=<$R*?P8"%3$; MD?H3/#K-GT!W+D2EZ)Z(S\M'$IRJ5-!5+D(VXT ZBT=U/M ?5W%&ZYOZR]=. M3^#K,R'8<-X@]8Z+(?Y%%J=9$5_5HX]P4:=97'KI=YK^S7][2?T9575<92.2 MQF403EW;Y&C^M&A68'07X]S*]7\^$O<,?,2E ])"[)-;WT M<],,DW78.-V%:;;0CF9C$-?T,T+C#4B_U-KM-S[ X?&UL MC53;;MLP#/T5P0.�CB:YHV2PPT78?MH4#0[/*LV$PL5!=/DIOV[TM)CIQ M:370VB<)'F=)O& 4C,!TC EB8;M(KI-9\O"Q?N WPSVYL@FKI*-4D_. M^5$OHL0) @Z5=0@47\]P!YP[()3QM\>,!DJ7>&P?T+_YVK&6#35PI_@?5MMF M$5U'I(8M[;A]5/OOT-QQ8E.>"XZNF7@3X[ M1Y^1!R5M8\B]K*'^'R#&6H:"LD-!R^PBX@-])7DZ(EF2Y1?@\J$_N8?+S\"% MRN)#'\RI$@-"<1K!3=7,M+2"181C8T _0U1^_)!>)5\NZ"L&?<4E]/)='^B4 MZ(NPIT7[GKI'1FZ?0>/,DBJP&,=B" Z]L536*(+DHTER-2JF!5K%S724%Y.# MICZ:&=.Y[I(./SWN":NJ)Z):/ZPMI]*08C)*LH1DHRRY?@J=PRE<]AB M:C*>3B*BPV8(CE6MG\:-LCC;WFQPF8)V 7B_5'$AR&)BNQ8J:O:I1T4BA=,4M+ MO0Y-K9'E'E2),(ZBF[!B7 ;IQ.\M=#I1C15)XX>V_PS'%G3N;@(EDI MM7&+[_DTB)P@%)A9Q\#HL\4[%,(1D8P_!\Z@<^F I_,C^X./G6)9,8-W2OSF MN2VGP6T .1:L$?9)[;[A(9Z1X\N4,'Z$76M[0\998ZRJ#F!24''9?MG+(0\G M@-OH B ^ &*ONW7D57YEEJ43K7:@G36QN8D/U:-)')>N*$NKZ903SJ:#I ]+ MJ[(-_*A]FA:"23.&)54_;P2"*N"!<0W/3#0(,T/5\X8&WOUD*X'F_22T),31 MA=G!Z;QU&E]R&L.CDK8T<"]SS/\E""F"+HSX&,8\OLKXR/8P''R .(J'5^B& M75:&GFYX@:Z-+#PFP9P+L65(SC.X7AJ;FF4X#:A9#.HM!NG;-X.;Z,L5?4FG M+[G&GOZ_.N<47^4\K]@GU TQ/'&S^5AH1.#2(EE8T,PBQ/UDU*-Q]+D']R\U M=1OF('CA[&"/3!M(^C']H]?CK1+,7/H*]=JWMH%,-=*V][_;[5Z/6=LTK^;MT_/(])K3C198$#3J?QH%H-MV M;A=6U;Z%5LI20_II22\@:F= YX52]KAP#KHW-?T+4$L#!!0 ( ,(U#U<- ML8A:M0( % & 9 >&PO=V]R:W-H965TLFC8I(XGS F6 1+M-J[2JJ&SM9Y,<)&IB9[93Z+^?[82,JD"_X+>[ MY\7.'9,M%T\R1U2PJTHFITZN5#WV/)GF6%$YX#4R?;+FHJ)*+\7&D[5 FMFD MJO2([R=>10OFS"9V;R%F$]ZHLF"X$"";JJ+BY0I+OITZ@;/?N"\VN3(;WFQ2 MTPTN4?VI%T*OO!XE*RIDLN ,!*ZGSCP87T4FW@8\%+B5!W,P3E:,9K+$L#I&7\[3"=GM(D'L[WZ#^L=^UE125>\_*QR%0^=48. M9+BF3:GN^?8G=GYB@Y?R4MI?V+:QB0Y.&ZEXU25K!57!VI'NNGLX2!CY)Q)( MET"L[I;(JOQ&%9U-!-^",-$:S4RL59NMQ17,/,I2"7U:Z#PU"Z(!+!5/G^"N MMM>T*"F38UCJU\^:$H&O7YU+F)M[+-0+?/I-5R7*SQ-/:2$&SDL[TJN6E)PB M)7#+FKH8I$HGM&9??P0)/[7,_JB7E]T#GWV_NL<4WP6 M\[AB6.94+^#1?MV8P?P9A2Y6^+Y#D18282&*%.&&*5'H2DWA@98-PEVCI*(L M*]@&OL#!ZP1 DJ$[C'VX@" 8)&8DP\"-2-)[V C*#%>2[ /]07()OU#J#Y-W M0;BK"Z&#XL"-?5^3G*0D0$:AZ_L=910:RI%+HM$;QE&\CXL'P_@-8VLY@]"W MG!=P.8B')W1%[\D*(0Q[660PM#?A^D'B7B;!L6_$.ZCR"L7&]C()*6^8:@N^ MW^W;Y;SM$O_#VUY[2\5&/Q>4N-:IOO;J@&C[5[M0O+8]8\65[D!VFNN6C\($ MZ/,UYVJ_, 3]G\CL'U!+ P04 " #"-0]77/PT2Y<# #:"0 &0 'AL M+W=OJI:BNKMC-F/@T 7.VB$]N4>6D0V4C7"X%)M [U7($IR:NJ AV$:-*)J MO=F$]I9J-I$'4U%.UI^JTNRF7NZQ$C;B4)L' M>?P)NGR&EJ^0M:9?=NQL0X\5!VUDTSEC!$W5NE$\=W7X+PZ\<^ 4MSN(HOQ1 M&#&;*'EDREHCFYU0JN2-P56MO92548A6Z&=F4>*SE9'%(_MM3V5:UJ+58[;: M"05O%YAOR>YD@QK0@O"Y4J+= MZ+8>N75W9+\4+;\Z-0Y: CU /V$;1!6+0E M>_>\Q^O A9&TC58'HPU"5;OM+$ 5E1;K&MAW'^R@OY\$!E.U 0=%E];"I<6O MI<79O6S-3K-W;0GE:X( :]07BI\*M> W&>_%"XNC >,ACV_0Q7W=8Z*+K]"Y MS((5_LG* \XNI>@8DLL,]M\ZUGM1P-3#OZ,&]03>[-MOHC3\X49\21]?MBU [6V**8)NE+%RF3Y[$8 M=G[EXYM"?; E87)SV@2V5%6!)_YZ:-:@+-)5@WVB/H$5F#^!PK;''L#V3LOZ M!PBEK>T=2E=AOSJ(FOU2;>!+I]?GL#,_*RP3AF9GR6?*V1BKP_.OK<-J"V]*C0KY*$U[M/;[_8/E[G[7O]C[EX]]T)M*[S\ M&C;H&OK9T&/*O23,>71@( #L% 9 >&PO=V]R:W-H965TV'3E6SE\_$OL2H&#S M3?OO=X#C9E(::5^ @[N'Y^'NF.^T>;05HH/G6BJ[8)5SS2Q);%%AS>U0-ZCH M9*--S1V99IO8QB O0U MDRQ-SY.:"\7R>=B[-_EK= M@HW8?N-!;"OG-Y)\WO MKM#];.X-64F/4HH:E15:@<'-@EV,9LN)]P\.OP3N M[,$:O)*UUH_>N"T7+/6$4&+A/ *GZ0DO44H/1#3^=)BLO](''J[WZ-=!.VE9 M\E>Y![VZPTW/F\0HM;1AAU_FF#(K6.EUWP<2@%BK. M_+E[AX. Z5L!61>0!=[QHL#RBCN>SXW>@?'>A.8706J()G)"^:2LG*%307$N M'WT9PB6W%5Q3>BSK 9K*@"RE8BZ,VKSP!6;=-(I,0X+N%*V$)JVQJT M\/$'7TNTG^:)(V8>/RDZ%LO((GN+109W6KG*PC=58ODO0$*2>EW97MB^8) M6?[AW>@\_7J"WZ3G-SF%GO]GJH[1/WG!$XI'T'#1_Q6[KC9"F5!XH9"T^'TC(&)K1H-IYO0'FOMJ-G"LJ+?#8UWH/.-UFYO^ OZ M_S+_"U!+ P04 " #"-0]7%GD%TR$# !M"@ &0 'AL+W=O2%A$*D%39O4;E6K;A^F M?3#) 5&3F-D&VG\_VTG#6Z!,JOH%8ON>\_/?KKQA_$#, B1Z+O!0#:R;E MO&?;(IE!0<4YFT.I5B:,%U2J(9_:8LZ!I@94Y#;!.+ +FI56W#=S-SSNLX7, MLQ)N.!*+HJ#\Z1)RMAI8CO4\<9M-9U)/V'%_3J=P!_)^?L/5R&Z\I%D!I].!;.K"P9@0Y)%*[H.IO"4/(<^U) M\?A;.[6:/35P\_O9^QHKU()\[2]A MN3"_:%7;8@LE"R%948,5@R(KJW_Z6 =B ^"X!P"D!I!3 6X-<$\%>#7 ,Y&I MI)@XC*BD<9^S%>+:6GG3'R:8!JWD9Z7.^YWD:C53.!F3P$YJ&L.*!CE MXYH^(=?I((*)VX(>G8PFVVA;A:.)"6EB0HP[[X"[1O!:9@>-05TR0!>YNBFT M3 "I(1IR2#.)KI@0'31<< ZE;!-?[>>;_?1-7,:^'Y*HB_OVM_*"1P< MM%/V&LK>:3G0AXZ90\?7AZZ#2E42S[XS"8BT';?+X]Y_.W_:]'I[2GS?=WWL M[2C>M_-46(+P@&:_T>P?934TUQUX:RZ.0O7KT!-SFL# 4N5? %^"%7]XYP3X M<]MU>B5G6RJ#1F7PQK6Y7VJ>E:!#(AJ6IR,]MT1I>F@=B=CWK#J&W>P;UAU4K9ZPVJ M1NR:\FE6"I3#1&V&S[LJ&KSJ;:J!9'/SVH^95*?2?,Y4/PA<&ZCU"5/"ZH'> MH.DPXW]02P,$% @ PC4/5_7"EN#D @ H !D !X;"]W;W)K&ULK59K3]LP%/TK5C9-( %QGDV[-M( L2&-"5$Q/KO) M;6OAQ)GMMO#O9R&&KM;*--CQM" KF(.Z+:Z%KMD-2THSR"7E.1*PG%D_ MG,F9@PV@C/A+82=;962L+#B_-Y7+=&9AHP@8),I0$/W;PADP9IBTCG\UJ=6, M:8#M\A/[16E>FUD0"6>'&M=NX=DLZ_Q6ZQML1^BFXE'UV*H:@9#";81N'&(\][$_M;5MX-RX8!_[8 M"YJX/8E>(]$;E/@;I$2$Z6U&\@20WK"(+R1G(!/0#7V**\*PK3C"&+_0VXUR M,&Z'[W&%WJ8P\/_!> MY*(;YD>1-_;Z4S%J!(X&!=[I@_V8YL>%X GTZQLD>&\R/HELSVO4>(T^G(RH MN^(Q#GPG?)&-GC@G#-V1TY^.<2-Q/"CQ@N947R I6G&>]@H&UL MK59=;YLP%/TK%INF5NH*F(30+D%JTGT]=*H:=7MVP4FL&IO9)FG__:X-820A M51^2AV";>X[/N3:^'F^D>M8K2@UZ*;C0$V]E3'GM^SI;T8+H2UE2 6\64A7$ M0%#?A]2RQ\2[@-Z,;W6DC MZ^1)RF?;^9E/O, *HIQFQC(0>*SIC')NB4#&WX;3:Z>TP&Y[R_[->01_6&Y6$R_Q4$X7I.+F06Y^T,;/T/)EDFOWCS9-;."AK-)&%@T8%!1,U$_R MTN2A PCC(P#< / ^(#H"B!I Y(S6RIRM6V)(.E9R@Y2-!C;;<+EQ:'##A%W% MN5'PE@'.I(-+-)/::$1$CKYJPR S%%I$"2:6&D&F'T4FBY)3.SZ3PBA(O;Y& M<]A0><4IDHN&@HFL4@JB %1U0-D6M#<)W4YR=DL-85R?H\_H<7Z+SCZ>CWT# M[JQ&/VN<3&LG^(B3$*,[F&BET5>1TWR7P(>TM+G!V]Q,\9N,=^051>$%P@&. M>O3,WHW&;XB)VH6*'%UTA*Y)45]>:N"@'VB/@6M=DHQ.//C.-55KZJ6?/H1Q M\*7/U(G(=CP.6H^#M]C3=VZCOAS4Q$-';$^N=3J,!E=A&([]==?>8=P QTD< M)&WAU$X"O&>_)XX"!QU/J%: MOM^I-@552U>$-0BIA*D/UW:TK?,WKKSMC4^A_M?E^C]-?7FX(VK)A$:<+H R MN!R!*E47Y+IC9.EJVI,T4"%=RM*_P%02P,$% M @ PC4/5YIF6&ULK55=;]HP%/TK5C9-K=0UGX260:1".VT/G:JB;L\FN1"KCIW9#K3_?M=) M2($&U(>]@.W<_U>"/5L\X!#'DIN- 3)S>F'+FN3G,HJ+Z4)0C\LI2J MH :G:N7J4@'-:E#!W<#S8K>@3#C)N%Y[4,E85H8S 0^*Z*HHJ'J= I>;B>,[ MVX5'MLJ-77"3<4E7, ?S5#XHG+D=2\8*$)I)010L)\Z-/YK%-KX.^,U@HW?& MQ#I92/EL)S^SB>-90< A-9:!XM\:9L"Y)4(9?UM.I]O2 G?'6_;OM7?TLJ : M9I+_89G))\Z50S)8THJ;1[GY :V?@>5+)=?U+]FTL9Y#TDH;6;1@5% PT?S3 MES8/.P _/@((6D!P" B/ ,(6$-9&&V6UK5MJ:#)6&.)-$EV0FM=&$BHS<:<,P,X CJ@03*TTPTT\BE47)P:[/I# *4Z]' M9(X7*JLX$+DD-X6LA"510)A(>95A+!/$Y( '9>%4O"(?9IQ3D0*I!6MR=@N& M,J[/R5?R-+\E9Y_/QZY!6U:FJ"\O#3#J!]KZ'^F2 MIC!QL, UJ#4XR9=/?NQ]ZS/UG\CV/$:=Q^@4>_)V!:&[@K"]@GB/X"4%K>U- M6S#.[6I?.IH]!O4>MGNMD\@/(O\*3V&]Z_1]7!B&<32,NK@]$X/.Q."DB6DK M;5]P>L):GXEFCWA'G']]'41#[\!$3YP?!,,X[#<1=R;B#YP$UG"E%"K%\J]V MRC_=EO\%^06F3W[\+K>!'_I#__ ,>N(P<.C[!_+=G=96@%K5'5^C$.PW34%W MJ]VCPU-7'LP( $,' M 9 >&PO=V]R:W-H965T+BFX!?'/;F:$R=K (9P08OSM-+W^E2[Q>'Q0_]9X1R]K9F"AQ&^^L<7EQ:-G\&[9$XG"3X0&-"+WJQMR M\7Y(9?%F%3JLXF/9^MK1OG:TD8W.R':VAERUB?%PHCN94U.Q#.8>'CT#>@=> M^N%=F 2?A\S])[%G'J/>8_2:>OJS+M>@SVWMD/56+VGT7 _9I93._-VQH9@,I"6';W8(L=6Z.GI_,(JB$\BAH'@RC#GN M,<=OQ&2EJI%2@^NT>-*&,%NM\7&9+H,DC"_C$]27@9.$3F@4#],F/6WR*NVR M+24V<[?_5EDFR(Z)&O 3V"F>83^PJFM2H(<<) ,UI%[W M&ULK53;;MLP#/T5P1N&%MCJ6YH-F6.@23IL#P&"%-V>%9NQ MA>KB27+2]NM'R8Z7%DFQA[W8%,USQ$.3S/9*/Y@:P))'P:69!K6US20,35&# MH.9*-2#QRU9I02T>=16:1@,M/4CP,(FB<2@HDT&>>=]*YYEJ+6<25IJ85@BJ MGV; U7X:Q,'!L695;9TCS+.&5G ']KY9:3R% TO)!$C#E"0:MM/@)I[,1R[> M!_QDL#='-G%*-DH]N,./.6C;4P%SQ7ZRT]33X$I 2MK3E=JWVWZ'7<^WX"L6-?Y)]'QL%I&B-5:(' M8P:"R>Y-'_LZ' 'B\1E T@.2UX#T#"#M :D7VF7F92VHI7FFU9YH%XULSO"U M\6A4PZ3[BW=6XU>&.)N/KLA<&6L(E26Y-99A90 MJB63E2%8Z7M9*-%P,-B_[V67=[F;)FXQ+^D32^"-)HB0]D<_\G]')&\FD0W%33Y>>H>M+=*HN M'7!T&NA&=V(:6L TP-DTH'<0Y!_>Q>/HZRE1_XGLA<;1H''T%GN^AAW(%@Q9 M0Z$JR9ZQ2W# "!6JE=@G3!:\Q7^+!MDPSGU7H0V/!1CLKRTIAOZ#H?^@[[]3 MI>ORN?;YN"6UR^,X2:,HRL+=<55.Q*7CY#BN$QP>38\ 7?FE8C MS+]KO,$[ M[*T;/ZZO_#/<9]WZ^4O3+<,EU163AG#8(F5T]1FSTMV"Z0Y6-7Y&-\KBQ'NS MQIT,V@7@]ZU2]G!P%PQ;/O\#4$L#!!0 ( ,(U#U?ZE#,-;P( + & 9 M >&PO=V]R:W-H965T\WMWY))LI'K2 M!8!!SQ47>A(4QM3C,-19 173Y[(&84\64E7,V% M0UTK8+D'53PD& _#BI4B M2!._=Z_21*X,+P7<*Z175<74RQ5PN9D$4;#=>"B7A7$;89K4; DS,(_UO;)1 MV+'D905"EU(@!8M)\#D:3V.7[Q-^E+#1.VODG,RE?'+!;3X)L!,$'#+C&)A] MK&$*G#LB*^-7RQET5SK@[GK+_L5[MU[F3,-4\I]E;HI), I0#@NVXN9!;KY" MZ\<+S"37_A=MVEPV#CN B!X!D!9 7@N@+8!ZHXTR M;^N:&98F2FZ0GR:AL4+==6'6 MBKIJ1)$CHN[8"Z+1&2*8T![T]-5HLH\.;7&Z"I&N0L33T2-TK:$^%PUPT ]T M[]]8URR#26!?, UJ#4'ZX5TTQ)_Z3/TGLCV/M/-(_\:>'G95^JZ6VZZ>H1LE M=6\)&M[8\[J)L4X)H<,(#Y-PO>NN)X_2P6ATV>7M"1]TP@=O$\ZXG5/^V$X\ M).=:%_:2 <@GV?"&EV09N:G4?J?0W4$L#!!0 ( ,(U#U=E%P=6=@( $H& M 9 >&PO=V]R:W-H965T5(LPCJ*+ ML&98W2<"5!XWP87 ^NQJFK]P6_.*[-QAB*QRC$(Z(9/SI.(.^I0-NCE_8OWOOY&7&#(Z5^,U+6PV#SP&4.&=+8>_4 M^@=V?KS 0@GC?V'=UJ9I ,726%5W8%)0<]D^V5.W#QN P<4!0-P!XK> Y @ MZ0")-]HJ\[9NF&5YIM4:M*LF-C?P>^/1Y(9+]Q7OK::WG' V3\]@0M_:HF2R M0&"RA)^V0@VWF804. [J%!O4*@_S#N\%%]'6?J?]$MN7QO/=X M?HP]?ST1)3>-,EB"FN]SW-*DGL:ER"I/8DJ5* M7FUYVRRXOM\JV5*:]RO2H MRJE6*^XSAB(.&D4GVW(F@/?JU]7^T"\]CGP9GU$0=GFVBM-F[(3IA=<&A X)\KH[)+TZ#:Y MVHE5C;_\,V4I2ORPHK!'[0KH_5S1#G43UZ#_^\C_ E!+ P04 " #"-0]7 M&'!G>N$# #*$ &0 'AL+W=O,_Q()2"5[SK! C:R'E M6=#Z-? EG2^D'K#'PR69TV>.L&.1I4?^2UR806P[0/>" &@=TJH/;.+BG.GB-@U=%II92Q6%")!D/.5L# MKJT5FFY4P:R\E?RTT'E_EES-ILI/CH,[,.7J*^+R#9 B 7_^+-.ERJL<@&?U MC25E1@&;M3:W8)J10G9-PZ.NMZTBTH8%M6%!%9QW *Y7[RWXQ)D0)HDUJE^A MZBVW&B.,_1"%WM!>;:LQ& 9.Y.'0;PT[Q-V6N-M+_&\JA-I,<9F7&9$T47M MG0=Q2O0N,S&NX8(M(C"$KN]%S@YC@V& / ?"P,S8:QE[)X6ZBC'=Q+A0A][- M/TQ2$)B^IOM^U/_@=Y-:;U\$#!$,\6Y^]@TC['NA'YG%^JU8OS\]2J2)5Z^7 M/OL'8DEB.K)4,@7E*VJ-W_T& ^>#::=<"*PC,&@%!E?9.,%^8B(?H=V/\*A9 MAW38D@Y[2=^7:9:DQ1Q\SI>0?2UZDLN2THOV8ONJVF6XOT+DI MNQ1:5_:F@(#7J2 :V*!30GA.A'>/0I-AZ'F><^ PA)L2 O;7$-_H(HVS SGJ M=3T[1Q="ZPK=5![PM-+C[!SM5P?(PW!O4QTSZ]+>U!#P>!%Q]*KJQS@[4=>H M*>"FJ(#7J2H:V.TRV\-NA'9OJ^-V7>*ZL.B.;"Y>V'_SJL*T+FI-@;&W'G(Y MY?/J02Q S,I"UF^ =K1]=-]7;].]\7#PH&B:9K":J=[I]F:)^I7_1/@\+03( MZ$PMY]R%*B"\?CC7'&ULK57;;IM $/V5%:VJ1&K#W:Y2C!0[J=J'2%:BM,\;&)M5@"6[ M@QW_?6<73)T46ZW4%]C+G+/G#,QLLI7J21< R%ZJLM8SIT!L+EU79P547%_( M!FK:64E5<:2I6KNZ46*DUDBZ6H8:F8;JN*J]T< M2KF=.;ZS7[@3ZP+-@ILF#5_#/>!#LU0T

67%10:R%KIF U=TAB,-\'"\9_]J MO9.71ZYA($+P%A$< 80\(K=%.F;5US9&GB9);IDPTL9F!S8U% MDQM1FZ]XCXIV!>$PG5RPI:)_0N&.\3IG-\^M:.@K(3N[!N2BU.?L$WNXOV9G M[\\3%^E( W2SGG[>T0='Z/V W(2N3]%87CI@- XTM7FI&Y[!S*'BTZ VX*0? MWOD3[\N8J?]$]LIC-'B,3K&31R+-!#=5-V:T0\<6;7K&)O6C:1#%<>)N#CV, MQ(71-(J"(>Z5O'B0%Y^4MY!5)=#\L9JAI-)X I;Q1B O&;Q0L\L%MI25,>GQ MGY*\J>=Y;Y2?%/"OV76Z[6HM:LA!51>A=3,J"Z=M9-4#:V(SQ*I/YBAP7= *!, .VOI,3]Q!PP MW"GI+U!+ P04 " #"-0]7:55X\I4" -!P &0 'AL+W=OL!JIV%HQ76*HISUU1<\"9 56E&WA>Y%:84">)S=H#3V*VE"6A\,"1 M6%85YILIE&P]=GQGN_!(\D+J!3>):YS#'.13_<#5S&U9,E(!%811Q&$Q=B;^ MU2S2\2;@)X&UZ(R1=O+,V(N>?,O&CJ<%00FIU Q8/58P@[+41$K&[X;3:5-J M8'>\9;\QWI679RQ@QLI?))/%V+ET4 8+O"SE(UO?0N-GJ/E25@KSC]8V=A@X M*%T*R:H&K!14A-HG?FWJT 'XT0% T ""?4!X ! V@- 8M2JUVB<#(97:!YP;@\_P&\0E/&%9[07*"3:Y"8E.(4 MG:.G^34Z^7@:NU)EU#@W;=BGECTXP.X'Z)Y160CTE6:0[1*X*E6K-]CJG09' M&>_Q!H7^&0J\(.S1,_MK='!$3-@6+S1TX0&ZID1]=;' 03]0'\TK4>,4QHXZ M>P+X"ISDTP<_\K[TF?I/9#L>!ZW'P3'VY([1W'X<=VH'L06:</5>)[]A>[JZZAHRG_T="P-30\;FC'!KK!*2F)W)RAR0JX:ESH^U(*B6FF MC@&:5&Q)>[W:)%''Z[[)X;MJO$7L*(]:Y=%1Y5UAJING+[U?7O3^)827HW!/ M7$_4YW PNMQ3Z'8Z2P4\-PU7H%17Q1[:=K7MZ1/3RO;6IZK7V];\1F,OBGO, MF53=T P+=5\!UP%J?\&8W$YT@O8&3/X M4$L#!!0 ( ,(U#U>R7NV:Z ( P* 9 >&PO=V]R:W-H965T$ZGR^D7G#304WG< /RMIYP-7,MRS0OH1(YJQ"'V="Y M(/TQP1I@+'[FL!8;8Z2EW#%VKR??ID,':X^@@$QJ"JI>*QA!46@FY5SON-Y&HW5SB9QN?H(LOX$J;H\X/ZF 2(/KI1 M7]=T60!BL[U==#8&2?-"O$W-&)V]?3]PI7)%$[I9>^RH.=8[<.P5?40^ M^8 \[/D=Z/&+T=XVVE7R;0P\&P//T 4'Z)XD@I7XG4E <9>NR^-4O\F?KF T MH)X!Z3]QE08XBGWM_6I3]KZ='Y# )X&UVQ+H6X'^4:]&YCL"KGZ(FHE#G.PO_K\HVWG8%PMVX#%7-FYNF0J@? M;%G)IF3:5=NX7)K[?7<]Z8^2KG6"^Z.FTW&?#VCZI"O*YWDE4 $S=1@^CU0T M>--Z-!/):G,9WS&I2K(9+E2[!EP;J/T94\+:B3[ -H#I/U!+ P04 " #" M-0]79$K>3 X# !D"@ &0 'AL+W=O\JFQ$F(]-DT>KZ @_(*NH90K2\H* M(N20I29?,R")!A6YB2W+-PN2E48TT7.W+)K02N19";<,\:HH"'N^@IQNIX9M MO$S<9>E*J DSFJQ)"@L0]^M;)D=FRY)D!90\HR5BL)P:E_9X;FN COB1P99W MOI&R\D#IHQI<)U/#4HH@AU@H"B)?&YA!GBLFJ>-/0VJT>RI@]_N%_:LV+\T\ M$ XSFO_,$K&:&H&!$EB2*A=W=/L-&D.>XHMISO43;>M8'QLHKKB@10.6"HJL MK-_DJ4E$!V [1P"X >!]@'\$X#0 Y[4[N W U9FIK>@\S(D@T831+6(J6K*I M#YU,C9;VLU+5?2&87,TD3D3A!5J0'/@8S3-.TI1!2G1!Z+)>0'>P@;("=#8' M0;*?YR80DI01&;<;#>KM\-'MK,QNJ&E6''TI4P@V24PI?;6 M 'XQ,,.#C#?D&3GV.<(6=GKTS%^-Q@-BG#:;CJ9SC]#IC)VC4OZO9]^I !3V MY>AJF.27_;LOL37(TR#U-V\BU[+#T/'9^\0:PZO<9\36*8&O)XXL V8$0?WMF^];FO:"Q@_V]D/ZKP$1G46D(GFL)1',?3I'"1Y M:UU.1+;C=]3Z'9VB+J/#='N>'_BAMU>7GD#LNI8?C/KK$K0Z@T&=UV4BCVV6 M]?\F@]BWEN-$9#LVP]9F>(IRA(>'41@$CN/L5>,P#MM>,.K$[:BT5?>P.].Y M\>S_G:^UX+XLF)VKM "6ZI:$HYA6I:B/RG:V;7NN]&6_-S]3[5#/_*5MC6=2 M?M^*+5?JAN??UG7_=4-8FI4B#H6E_R#U3(ED%_KF0; M"$P%R/4EE9:;@=J@;2RCOU!+ P04 " #"-0]70[T-&5P# # "P &0 M 'AL+W=OICV8Y+:-2.S,=EOX][.=$%KB!H3:AR9V[CD^Y^8ZOJ,-XP]B M"2#18Y92,7:64N9#UQ71$C(B3ED.5#V9,YX1J89\X8J< XD-*$M=W_.Z;D82 MZH0C,W?#PQ%;R32A<,.16&49X4_GD++-V,'.\\1MLEA*/>&&HYPL8 ;R+K_A M:N16+'&2 14)HXC#?.R$4!QI@(GXEL!%;]TA;N6?L00^NXK'C:4600B0U M!5&7-4P@3363TO&O)'6J-35P^_Z9_=*85V;NB8 )2W\GL5R.G;Z#8IB352IO MV>8;E(8ZFB]BJ3#_:%/&>@Z*5D*RK 0K!5E"BRMY+!.Q!5!&[0"_!/BO =T] M@* $!.]=H5T"VB8SA163ARF1)!QQMD%<1RLV?6.2:=#*?D+U>Y])KIXF"B=# M[)VB*QJQ#-!/\@ABB&:JM.)5"HC-T81E.:- I="CESAT\:@*3P!JG0.%>2*/ M4&L*DB2I.$(GZ&XV1:W/1R-7*H5Z'35YO% Y'M.&Y7CMM-[.$E MQ,!):O-8 #L&J+].ZQ#WL*=^(W>]+;\>I[YI>"ML1UBG$M9I%#:31()-5@'K M[B[W6E,]"+?W*>I6BKJ-BIZ+HTS9,3(2$:$Q^LXB/6'=>#8/W;J\'K;8J,?Y M'N[L,]*KC/0:JWP*]_*H!(V^%C!#VK+O1;4%+&C!7LOIX[7J*:JD0-4>[G4VXFU!#9E M%F^=H;C1S4U5Y*H10TEQ3$I]G*+6#Z9L8<^F_/P-VC_XK]4OKG\Y?=RW^*T' M!KCG[?6KS]3=F9>##3>>(EIJ:;2\V+:2N]6F9, 7IMT3*&(K*HLCI9JM6LIS MTTB]FI_H5M,R?X;]X03;$$J_>F)Z+/=EZ:*WO29\D5"!4I@K&=YI3R6,%^UB M,9 L-PW4/9.J'3.W2]5B ]WA?U!+ P04 " #"-0]7 MT,BAEM<# "J# &0 'AL+W=O3FVEBRP9#*#"3P-W0N [WVH=,'82^@GBVYLH#DO^]*=HR) M?S0/><&VM+OZOMW5[C(]2?4CWP-H\I0F(I\Y>ZVSB>OFT1Y2EM_(# 3N;*5* MF<9/M7/S3 &+K5*:N+[GA6[*N'#F4[OVJ.93>= )%_"H2'Y(4Z:>[R&1IYE# MG9>%%=_MM5EPY].,[6 -^GOVJ/#+K:S$/ 61T65*P?EDRS^53)$U%& M&JV9%^M,JXWTN3!Q7VN%NQSU])QZ-^2+B&0*Y'?V!/F$K#&UXD,"1&[)Q^T6 M;&!J,F3%-) 51%)$/.',AN]J"9KQ)/] KLGW]9)<_?QAZFK$9TYQHQ++HL#B M=V'QR8,4>I^3CR*&^-* B\0J=OX+NX7?:_&!/9. _DI\SP]:\"S?K.WW@ DJ M5P?67-!AKG11FU\*Q4&[HKGZDSQC$=-W6.=;%-N&(3CFM@%C6%%8]A+8ZU-CO,BYPV5:R*P!N.- M^ 0Q*);8Q0T(V'+=!K\P']9@7:.'7X-O2E':!3VLH(>]669N*-AK:^!F@+51 M@- DYKBH0$30FH'A>V;@.QF[X#^J^(]Z0[="BTQ%>QNA2$',=2OA43-"_CAH MQJA-;C0<=(5I7,$<]\+$IH4M25QC-F%YC3'7-!,[ODFJM,,*>+"]L0W]N(DJ M#&\;X%O$J.]W8;^ML-_V8O^&=UF]/;5N&R":0)LR0>=-H-ZYMWEO 'H7_X-] M%&>5]D0H;5SZLHFP12R\2)=+C+7^2WLQ/E9%$H>X6LF!G%Q]E5B%J-?62N__ MQ^Q?].]6LK195WV*];)!MRD8T)'7R=<_\_5[@9U'BEIY[>H"I2WC^PJ&=T-# M_S7:=CE_T('6M.S+E7.#H_T=#AU;AJ5\M-4LMS:0I:!V=K#-220/0A?-M%JM MAN=[.S*^6E^8H;IE_8X&DP4-6G<&N%,,A^>CBRG^@:D=%SE)8(LPO)L1AE<5 M@W'QH65F1\6-U#AXVM<]_ID 901P?RN1<_EA#JC^GLS_ U!+ P04 " #" M-0]7PJ<\P,8# !3#0 &0 'AL+W=OY]^MJ$ M):0V*)7Z)L$P\_=O!H_'S ]B@>?%D+($7C5#(_#(+8+PFMO&S>W+L3V9SO%*,5W DD=V5)Q/,'8/RP M\+#W/FR5N>%G\YH\P K4E_I.Z)'?J12TA$I27B$!FX5W@Z]O\=0X-!;_ M4#C(WC4RH:PY?S2#C\7""PP1,,B5D2#Z;P^WP)A1TAS_M:)>-Z=Q[%^_J/_> M!*^#61,)MYQ]I87:+KS40P5LR(ZI>W[X$]J &L"<,]G\HD-K&W@HWTG%R]99 M$Y2T.OZ3IS81/0<<#3B$K4-XJ4/4.D1-H$>R)JPE422;"WY PEAK-7/1Y*;Q MUM'0RKS&E1+Z*=5^*L/!%?I8Y;P$]#=Y GF-5GJE%#L&B&_0$C8@!!3F&;J1 M$I1$I"K0)TK6E%%%0:+72U"$,OD&O4-?5DOT^M+J^)(@]>-FK7W K!DXPS]J3AM-LUGLLUCO'7-_WP_+-HHF/:,SW$F'.QG%-6N1 M5GNH%!?/B!3_ZBK1&XMR01Z5XM[\Z22R*&VK61@.84X[S.D/9)6O)6>@X$3N MPIU:(&$2V5EUF:7I$'#< ]C.^ MI.-++N+3FU5)I>DCSG69V"\SM0!MHR08XDL[OG24[RL1@E3J&;45ZH)+K7GC M,+'H;*O)\.N==7BS4;S[5Z2LWR^;32W7NQMU%LS,FOI[.-LBG0SF#@>G/A1< MA)>3FBK"Z/^#:[ 5.DMBDDZM+#KLABA[W1*/4JX4SQ\1KPV;1'H5F@5IZMN\ M<9J[=\I6LP\21=C>AAQV89+$@[D]]3,\VCXR1QM_B_X07+IQ0[O(IVEH5[G# M,$UB/,A[ZD]!*23=@%Z!ER M.EP%=M-ZAP,-(S/,<]=3@\WN+^TI\9Q66'I5:I?Q*8QFF, M+5C;+IGTS8ZH?N_$:SXW/A/Q0'5%,MAHO^ JT0+B>((_#A2OFT/PFBM]I&XN MM_JK!X0QT,\WG*N7@3E7=]]1V3=02P,$% @ PC4/5T8B=QH- @ WP0 M !D !X;"]W;W)K&ULK91=;YLP%(;_BN5-4RMU M,1_+AS) :A-M[46EJ%FW:P<.P:K!S'9"^N]G&X*H1J9>[ 9\[/,^G-?X.&J$ M?%$%@$:GDERI-J$C)24 M53B)W-Q&)I$X:,XJV$BD#F5)Y>L=<-'$V,?GB2>V+[2=($E4TSUL03_7&VDB MTE,R5D*EF*B0A#S&M_YR%=I\E_"30:,&8V2=[(1XL<%#%F//%@0<4FT)U+R. ML +.+E!:E)W85%"RJGW34[$(^K5N]7!6S4Q M[GJ+06\Q<+CP JXS-.:B%7X9%]H&6JJ:IA!CTR$*Y!%P\NF#/_.^CIGZ3[ W M'L/>8_@ONO&8@Y20V9^(;I4"K6[0=RG4J.V6-74LV^;'Q)\N@IGG1>0X=/1W MWF(^\P=I;:UD50AQR(_0F\OY.2_X 4$L#!!0 ( ,(U#U>LWCX3K@( $(' 9 M>&PO=V]R:W-H965T-JZA1:UV/755D!%557H@:.,VLA*ZJQ*S>NJB70W((JY@:>E[@5+;F33NS8 M0J83T6A6RTVAS8";3FJZ@27H'_5"8L_M6?*R M JY*P8F$]=2Y]3.=[/G4\(P@89-HP4/QM80Z, M&2*4\;OC=/HE#?"PO6?_:KVCEQ55,!?L5YGK8NK<."2'-6V8?A2[;]#YB0U? M)IBR7[+K8CV'9(W2HNK J* J>?NGSUT>#@!^<@80=(#@%!"> 80=(+1&6V76 MUAW5-)U(L2/21".;:=C<6#2Z*;G9Q:66.%LB3J>^?T7NJ>0EWRBR $GFHJHP MOJIAE,';RF"N06G/3].S_QO@R9^D]D1QZCWF-TB3V] MW8+$FT^R]FRT)X%@Z5":\AR/SI#[EC*QE*;D;-,P]I+H.IJXVT-C W'1Z#J, MXC[N2'/<:XXO:IX?:2V5:N@*CWN#9Q!KG1;9$Q&U+3@UHWQP_^(WRJ+8"[P3 M_6^C@L"[&1:?].*3?TLXH6BH,HV\9(VQ,60@&=B"V(]&IULP$!>-1G$V5;LMJ-%;8O>2F@LH;99X",'T@3@_%H(O>^8!?IG,WT%4$L#!!0 ( M ,(U#U&PO=V]R:W-H965T5\[.)]P$^*.WTP!N=D M)>6]FWROIM'0"4*&I7$,Q+ZV.$?&')&5\;OCC/J4#G@XWK-_]=ZMEQ71.)?L M%ZU,/8T^1U#AFK3,W,G=-^S\>(&E9-H_81=BQVD$9:N-Y!W8*N!4A#=YZ.IP M $CR$X"T Z0O =D)0-8!,F\T*/.VKHDAQ43)'2@7;=G/H&NB4$]B8Q,[ M>%QV268A27HJ20JW4IA:PXVHL'I.$%O%O>QT+WN6GF6\)8^0)1\@':;9$3WS MOT:G9\1D?0TS3Y>=H.LJ=*PN 3@Z#G0G]%(WI,1I9(^@1K7%J'C[)LF'7XZ9 M^D]DSSR.>H^C<^S%7')N3UWX X!JW6(%1@)V_\Y1]X$R]Y2NG6R+"U?P[:&I MUS')Z"+O@YZ)'?=BQV?%+H/*K@H5V&8'ZU:9&E60?DSL^)60-,FS?/Q"[]G, M__H1XH.#RU%M?#_34,I6F' 8^M6^95[Y3O%B?69;:>A\?VA"'[XE:D.%!H9K M2SD@OF.()4$L#!!0 M ( ,(U#U<+[Y2MN0( +P' 9 >&PO=V]R:W-H965TX[/N89[HQWC&Y$#2+0O:"EF3BYE-75=D>108#%@%91J)V.\ MP%)-^=H5%0><&E!!W<#SQFZ!2>G$D5E;\CABM:2DA"5'HBX*S ]SH&PW%=>WK" M!:._2"KSF?/%02EDN*;RA>V^0>-GI/D21H5YHIV-'=\Y**F%9$4#5@H*4MHW MWC=Y. $$HRN H $$%P _O ((&T!HC%IEQM8#ECB..-LAKJ,5FQZ8W!BTTIH!8AIXPX>@5TQK0O5#7 M;0(%^O $A,J/D:N5$HTGYLTI\[MJ<&U4P/TS$J9"_18II">$[C*0NLC./J8 M![V,S_B 0O\3"KP@[-"SN!D=](@)VZ2&ABZ\0MR,X_#UN.PCSU^(6+S.>, B)02%+]$'$OH\FR) M?,\PZ;*RC;V!%PQ'D;L]M7,E;G37QITI';5*1[U*'_>5JAF0(DHRK18= //. MR^GG&5H@"E!AOUWU%:?XT,6TN(FIYQ;&K;?Q;=ZVC&))*)&'+F.6Y.XLL6%X MD?[.(+\[]Y-6W^0V?2G9DA3*%!T(T+1+X^3?XR\$]D58=>Y)(2R KTU_$"AA M=2EM+6E7VQ9T;RKOQ?I:JO0+7 6H_8TP>)_J MF''?P!02P,$% @ PC4/5QIPP&7Q M P @1$ !D !X;"]W;W)K&ULS5AMD]HV$/XK M&K?3268NV+*Q@2LP ]RES8=KF3!)/@M[ 7>USR/MBSS<,_XH-@ 2/25Q*D;61LKMK6V+< ,)$1VVA52]63&>$*F&?&V+ M+0<2::4DMEW'">R$T-0:#_7U)Y1#F7) MV&,^^!2-+"?W"&((96Z"J+\=S"".)#0M_LE3 M241- 0<7%-Q2P3U7\"XH>*6"IX$6GFE8=T22\9"S/>*YM+*6/VANM+9"0]-\ M&Q>2J[=4ZG<' MDM!8O$?%NN[E]9WT0-+Y4:@^S2"J&G 5F J M1.X1T=2]:O&!')"';Y#KN)[!G]FSM=TKSG@5O9XVYUTP5U)DXJ50[)H5\^B] M%5L2PLA2X2F [\ :__8+#IS?3:#^(V,-C-T*8_>:]?%B0SA\F*I8BM",)2K! M"**/TH1SDJY!!;U$RP.JR\W)04]/]H1'-\>SI1XR*21)(YJN;]!?6;($?H.F ML*9IJJ;0E*C3&8*)SL+'0/N8YZ[=V.U[CN,,[5V=*(-8T.OY)[$&!7Y%@?\V M%'S3:4A)3W; 55I%]T_ 0RH S3D-X9G<%,[W:Z Q[G2],VJ,4H&9F* B)G@; M8CZEDE-53$+TE<29$77AF=\X$6ZW?X;:(-7#7?<"[EZ%N_=JN/]0&E(@JG(S M<,JB?(8)8T[IM4YWWV_'0%LJ""Z&0+]"W/]IQ.+ED+\3""8R^NWS['=Z_AD9 M!BFG$PS,9 PJ,@:OMOWW3UO*25%[*T),> >M;>WZK;UO"_FX+M6 BYU3%^&\ MWNX;$;_H")1>UZ/[G)"K(DTV:CT5?MN*>*_'UU)^Z6%]HSW/4 \-^+ _9^6Q&>0X[:#WNWTSJDQ2#7*9I.94TN(KW9C;UH32]<:Y<[!P2# Y^ - M@HWJV01_ZA7QZS6+QXW_3E[$[9[/<]J9\;KC+^RA\:F#Q#_?0OY !FTQ\[+\ MV>X)!QV_%2A7D?THH[PD3?GL_FI_GW!7U) M/IDI/DX\$*ZZ9H%B6"F3CFH*+,2+^WXQD&RKK\Q+)M4%7#]N@$3 'VB4'NY&<'0\\3'<;+D\,9G?[LB& M/E'^S^Z1B:-)A;(*8YID89H 1M=WHWMXLW ]F9!'? KI(:M]!K*5YS3](@_^ M6-V-'%D1C>B22P@B_GNA"QI%$DG4\5\).JK&E(GUST?TW_+F13//)*.+-/H< MKOCV;A2,P(JNR3[B']/#[[1L:"KQEFF4Y?^"0QGKC,!RG_$T+I-%!7&8%/^3 MK^5$U!*0UY& R@1T;@(N$W#>:%%9WM9[PLG\EJ4'P&2T0),?\KG)LT4W82*7 M\8DS\6TH\O@YYQ\568;,H(RI9A1IXC"GYZ3SD)H^QG\ Z\ 1.0R<&RVPD7CB M2=35) (?TH1O,_!KLJ*K)L!$S%@U;>@X;0_(B/B!O (,WP+D(*RI9W%V-C(4 M@ZLUQ#F1=[F4/LR(EYJ;>AB9JA MJ8IJU#>MZIL:Z_N@0[MJE3 M(M:9,!M[_LG"]$4UZZU)!F@FB62') GL((DY?RA+;*$UNT6J6_3M1"DQZAQ M>-IBBB[,FW91!2H! ,T*P!99>H;QBHL>H./S1PBKKN=/#Y1?0N$**M! -:=# MJ01HE@F7$,IM4452I!3JHI0Q?S"E+*$UNU52 M 9JUPGF4\MH*+7_4GRZ))@ZB3BD'E12 9BU@C53F88Y,T&NQLL?S(&8#R*1T M C0+A4O(%+19 L=>BTS:,!]U+)Q2#M#\;,Y9),F$N\ADS!],)DMHS1^B2CT@ MLWHXBTPE1N/!$[2YI WSNZB$E&) 9L5@BTH]PZ"S>%"V:H;")53/;ZWF?"A- M@P M)ZI9K](7J,=K@%Y!*;^+4E;-!EMHS6Z5C$ 6_ ;4MA*TE.H+:]:HA .ZCN?0 M,PP:1"DSUB7/*:RT!;;N3."VYR"N<_=D!?NBFO4JG8'[G(G"OD-=]ITY?[ 5 M_CV<":Q4!+;@3."VY3#5.!.:,/$KJDOYX=JKB>LX$SW#E#X>\(\L\#H)U8/D MGN5Q-&=#Z0ILW9C &L=A-@[0Z?IIPY#7L7Y*9> >8Z)\M]3-**O&A"VT9K=* M0F +Q@1N&PX8:]XPF<>ZM!8;P!O[G,4)?.B)(@V+J3@346!1J? M^NSF<2_M2\D6W.-W +]X_QMT<=2JWV$+K?D&6&D2UX+?8<88VK';MD4,>M-5 MQOG'+24K MRF2 ^'Z=IOQX( >H]FO._P=02P,$% @ PC4/5Z"_OA\9 @ E@0 !D M !X;"]W;W)K&UL?53;CM,P$/T5RT@()%2GZ054 MTDC;71 \5*JV I[=9-I8=>Q@3YI=OAY?TFQ!V^8A]HSG')^Q9YQUVAQM!8#D MJ9;*+FF%V"P8LT4%-;5Z!U-V2CNG9\2@.%7H'R[.&'V +^*/9&&>Q@:44-2@K MM"(&]DMZ-UZLICX^!/P4T-F+.?&9[+0^>N-[N:2)%P02"O0,W TGN +(G_ISN "DUP!I#TB#[KA14/G D>>9T1TQ/MJQ M^4E(-:"=.*'\I6S1N%7A<)B/9R.R<06_!,QI&P2F9X&K]";CFC^3R?@#29-T0FS%#=@; MK),A[4E@G5QA[3-\+<$(G+X.]#VRL TO8$E=$U@P)Z#YVS?C>?+YAJSI(&MZ MBSU_N0D;;H*W6&DC_CC'KD72*F%M^_^Q1MF1>!Z(?2>>7_LO8Z5(1NZB5 M&LPA=(0EA6X5QK(9O$/3W<5:>PF/';OFYB"4)1+V#IJ,/LXH,;$+HH&Z"96W MT^CJ.$PK]W" \0%N?:\UG@V_P? 4Y7\!4$L#!!0 ( ,(U#U>CU<:/!@( M .,$ 9 >&PO=V]R:W-H965T.SY_LQO M>Y*V4AUT!6#0J^"USG!E3+,D1!<5"*JGLH':KNRD$M384.V);A30TD."DR@( M9D105N,\]7-KE:?R:#BK8:V0/@I!U?D1N&PS'.++Q O;5\9-D#QMZ!XV8'XV M:V4C,JB43$"MF:R1@EV&OX3+5>SR?<(O!JT>C9%SLI7RX(+O988#5Q!P*(Q3 MH/9U@A5P[H1L&7]Z33Q\TH'C\47]J_=NO6RIAI7DOUEIJ@PO,"IA1X_"L0]X'>. M=)5Y6T_4T#Q5LD7*95LU-_![XVGKAM7N%#=&V55F.9.'LRGZ88]?']49;8PL M#NC#$QC*N/Z(/B%=404Z)<9^R@&DZ&4?.]GHCNPS/:,XG* HB.(;].K-='1- M$VMO\!@-'B,O%]^1Z_W<=;IOZ3 MV)7'>/ 8_TL]OS[#"5I)(60]09N[!]CIS;R>Z_53GLSF\R1,R6ELZD9:LEC$ M#T-:5RX974'7_L]4[5FM$8>=!8/I/,%(=2W5!48V_E9NI;%WW \K^Q<"Y1+L M^DY* (-=?5@( *T% 9 >&PO M=V]R:W-H965TU(J73.RIEZ%IM'("@^J11@/A^.P9EP&6>I]C9R\3[@%\>MV=N#4_*@U*,S?A238.@*0H$Y.09FEPW.4 A'9,OX MTW$&?4H'W-_OV+]Y[5;+ S,X4^(W+ZB:!%V%=1*%M95[6+2.6 MI5IM0;MHR^8V_FX\VJKATOW%)6E[RBV.LNAR LDKM'^&H*Y8!+.;I$8%^8< M/L']\A;.WI^G(=ED#A+F'?&T)8Z/$<=PIR15!K[* HO7!*&MLB\UWI4ZC4\R MWK%G2**/$ _CY$ ]LW]&QR>*2?I[2SQ=!KBNO3<-RG 2V M[0SJ#0;9AW?1>/CED*C_1/9*XZC7.#K%GLV[9F6R@)]4H8:Y,J1?7LL4)9:< M#,RL'\X6N$%MF !5>L_!5].FO/ IW8C99,EE='45I>%F7_>!L"B)QY_[L%91 MN/?R:]0K/Q ,Y&HMJ7U9O;>?.3>^U=[XIW86M:/CA:8=9'=,K[@T(+"TE,/! MI2U*M\.A-4@UOK\>%-EN]=O*SE/4+L">ETK1SG )^@F=_0502P,$% @ MPC4/5[<"\TQP @ 108 !D !X;"]W;W)K&UL MK55=;]HP%/TK5]DTM5)'OJ#=6(A48-5XJ%05=7LVR858=>S,=H#^^]E.2"D% MMH>]$%_[GN-SKNU+LA'R616(&K8EXVKD%5I70]]768$E43U1(3$V.P3A9" M/-M@EH^\P I"AIFV#,1\UCA!QBR1D?&[Y?2Z+2UP?[QCOW/>C9<%43@1[!?- M=3'ROGB0XY+43#^*S0]L_3B!F6#*_<*FS0T\R&JE1=F"C8*2\N9+MFT=]@#A M]0E U *B0T!\ A"W@-@9;90Y6U.B29I(L0%ILPV;';C:.+1Q0[D]Q;F69I4: MG$[#KSV8$%7 G3E/!3/>7 Q3X2',S97):X8@EJ\Y5S"OJXJA.4E-&$RIRIA0 MM40%%U/4A#)U"9_A:3Z%BX^7B:^-2+N5G[6"QHV@Z)2@".X%UX6"[SS'_"V! M;]QU%J.=Q7%TEO&>O$ <7D$41/$1/9-_1D=GQ,1=O6-'%Y^@:TMTK"X-L'\< M:%_S4%4DPY%GGJM"N48O_?0AO Z^'3/UG\C>>.QW'OOGV-,9UVA8-52$YL>< M-O"!@]LVLTZ#Q%_ORS^7\4;3H-,T^(NF3)0(FFS-13VE:_!NU_ F& 3!H;KW M>8?J_+T76:)R!7E"A@N M#670NS%Z9-.TFD"+RKW[A="FB[AA8?H\2IM@UI="Z%U@-^C^.=(_4$L#!!0 M ( ,(U#U&PO=V]R:W-H965T1%O$KK(H\J!4JCA-DE%<"JFCZ3CL+>QT;&JOI,:%!5>7I;"[&2JS MG42#:+_Q319KSQOQ=%R) I_0_U$M+$EQAY++$K631H/%U22Z'5S/!@DKA!-_ M2MRZ-VM@4Y;&O+#PD$^BA!FAPLPSA*"_#=ZA4HQ$/+ZWH%%W)RN^7>_1OP3C MR9BE<'AGU%\R]^M)=!E!CBM1*__-;'_%UJ!SQLN,V\*5ME M8E!*W?R+'ZTCWBA<)N\HI*U"&G@W%P66]\*+Z=B:+5@^36B\"*8&;2(G-;_* MD[?T59*>GZ:#4YAC(10LK,D0[J$C\99"SAK --W =G<*17R-\_G29ILG-G2DKH7=!&MPX(:(4Z%]KW>.2\\\CY!SWRE2X%LX*%HG+CY6IUR.!^T)D1-F>,1Z&IZEC' M:S;X;)BRQU_XQMQ0ILFZ/ $JBT+UV#+J;!G]3UO>\5AC2S_H^:>4FW8])CPJB;L[[O<4]CW'5/<;5!Q^CR3DV^R<'M\ZAD!^;MXC0FNG[SUMH:Q>B@PISU.&"2O M#3;YH!L>-#HORU"_^>O!)ML/2MDG'6CCH;(\V&04(Q1?WVO!T;@#)5^0S1:E MX+!M0V_OF-9HZB6-TX2F %N)C;&!$PUO%'KTKPE'+"G+_>Z0*^(W8P<%:A&& M*T<15VO?3"#=;C? W39CR^OQ9OI[%+:0]!P*5Z2:G%Y0%;?-0-4(WE1AB%D: M3R-16*YI"$7+!^C[RAB_%_B";JR=_@-02P,$% @ PC4/5Z5ZG-\J P M2A( T !X;"]S='EL97,N>&ULW5A=3]LP%/TKD1D32!-IFQ&:T5;:*B%- MVB8D>-@;38F>.REE^/KYVF'_@BQL-6EJK$OL?GW&/[!D<=U&8EV,V< M,1,M2R'K(9D;4WV*XWHZ9R6MSU3%I$4*I4MJ;%?/XKK2C.8UD$H1]SJ=-"XI MEV0TD(ORJC1U-%4+:8;DO U%_O8U'Y)N^I%$7FZL!*9* M*!T96Q0V71UEL;5O'=@UV3:MH:;I M97P']+?5O/:V[.MTHXK?*_-E8: MH.>_N\XS)IFF8MNTK?U#7N57.VY.GW_AV?U;V7<<-)E<'+['YL0]=)/I6S#Y M)K:[?Y FX^9LW#J =X[?-AK!:\Z0_("7)K%)&DT67!@NF]ZP$,VH3?L;3*^;MN]8-A>7.5NR M?-QT]6SBFI%MV*S-!81]Y,I=803C>"R, (;EP1Q@',_"\OQ/\^FC\_$8YJT? M1/HHIX]R/"N$C-T'RQ/F9/8*SS3+DB1-L14=CX,.QMBZI2E\PVJ8-V!@>2#3 MGZTUOMMXA3Q?!]B>/EPVH'\X3Q0 M4V%.DL"N8MZP)QA'L@Q#H!;#-9JFR.JD\ GO#_:4)$F6A1' P@Z2!$/@:<01 MS %XP) D<>?@WGD4K\^I>//KT>@14$L#!!0 ( ,(U#U>7BKL

-8?20$3;8T.P6BP^0"X99K>]9!:G;%U-&2P-D% MP'>/UMW?6GLOOE1EW9S.MFV[>[M8-,565ZJ9VYVN_9&-=95J_::[6S0[I]6Z MV6K=5N4B6"Z31:5,/7O_[G"ME5O0#=OJHC6V]CN['9^-?FQ^'.\VQ8-IS*TI M3?MT.NO_+O5,5*8VE?FJUZ>SY4PT6_OXAW7FJZU;55X7SI;EZ4P.!SYKUYKB MQ>[K#O)&W3;]GE;=7BD/],?===QO^*!?D9?1P.GT,0W[K_$T:[V9A"G]MB7^FZ'>+H=-D!ULW6 M[)J9J%6E3V>'4X2JU^*B;GV0Q,=ZN)0_M_NE_JL_KH=?W7I<$D/WUO@#[N.Z M!^>#///;MC1K_^UK\4&5JBZTZ(/;$, :3 8HW8D4@0P 9_D3(ZPZB^X=& MV(V_XX4ED!& C":#O&YM02!C !E/!GFFFBV!3 !DP@LIY^)Z7U7*/?7!,W>U M\?^I?%/_K2CLGD"F #+EA0SF TT7O:X'^M1NM1-7NM#F0=V6!#(#D!DO9#CW M#>3!GV/=$R$Z 40GO$317)S9YEO,+IK65/VC>*%<[45".T6Y1-WVDAP2_^.HT>H2&=2&:?G/C0J7+,@\PA MF=4AE_/>MI46-^K+F O)0G+;PNOBT'V(E6^B9[:J;.V?.^4TA42RD,RVD%X7 M5]T!_Z"M5-=<;YRJ&]47 *-0(EM(9EU([XN+:E?:)ZW[I.5>K/:NV*I&BU6I M*"92B&1VB/02&>@^[;J#'=LHB %21\"L#AEWG;+>:.?Z',MS4C2DBX!9%]+[ MXL97JIU8OR& 5PNP)F7;MHS6NST?[&TK1D"("9D5([XA+99SXK,J][C+2 M2]-E!4:5OC\/ MSZMY2H <$G [!)5%>4 QD40" M;HE S)!B(HD$W!*!F!$=^$ V";EM C%CBHG,$G*;!6(F%!-I)N36#,1,*28< M[N)6#L3,*"923LBM'(AY0C&1=T+NP@5@YOTHPW=,Y)YPPE&OO!]E^(Z)+!1. M:*%<4@N%R$+AA!;*);50B"P43FBA7%(+1A0?"ZN_177^U(/ M4UA^-\5$%HJ8+03'Y\?11!:*F"V$,6GW'B$+187G6@O8\HQ4062I@MA--BFB$ER$()LX5@6CQZ-A-DH8390CB1HP5P@BR4,%L( M8](".$$62I@MA#%I 9S 96B3UD*T $Z0A1)F"^'L?=32D8429@MA3%H+)# DHXYX20K7O^*8C 67<@W$OUS8>;><9TD_&K9\7JQR/,R+W9-SN>;G> M\3@D,D_&;1XTTC%^*)%Y,NXW<8XMVCL>3?@J3J^?17]R\_[=6F],K==_^Z]H M_/Y"E<7*B>ZCNY(,HKA; [W9E^69W_>I_M.J]>$]R,,[G.__ U!+ P04 M" #"-0]7PR792)0" #?,P &@ 'AL+U]R96QS+W=OQ[VAVY8?)Z.YV%=[<>Q^U77PV9?3LWPT';E M?+FR;?M3,UZ6_:[NFLU[LRNU+)=>]_$.Q#('9#N0&!W0+P# M@=Z">@N!WH)Z"X'>,GG9)M!;4&\AT%M0;R'06U!O(=!;4&\AT%M0;R'06U!O M(=!;4&\AT%M1;R706U%O)=!;46\ET%LG'TL(]%;46PGT5M1;"?16U%L)]%;4 M6PGT5M1;"?16U%L)](ZH=R30.Z+>D4#OB'I' KTCZAT)](Z3C]T$>D?4.Q+H M'5'O2*!W1+TC@=X1]8X$>D?4.Q+H;:BW$>AMJ+<1Z&VHMQ'H;:BW$>AMJ+<1 MZ&V3GY4$>AOJ;01Z&^IM!'H;ZFT$>AOJ;01Z.^KM!'H[ZNT$>COJ[01Z.^KM M!'H[ZNT$>COJ[01Z^V2S"8'>CGH[@=Z.>CN!WHYZ.X'>"?5.!'HGU#L1Z)U0 M[T2@=T*]$X'>"?5.!'HGU#L1Z)U0[T2@=YIL%B30.Z'>B4#OA'HG KTSZIT) M],ZH=R;0.Z/>F4#OC'IG KTSZIT)],ZH=R;0.Z/>F4#OC'IG KWS9+/W3^H] MC%_',MQZOM?X_)^D>KS<6VZ/ORZ_3Z*$JRO.]7W%\/074$L#!!0 ( ,(U M#U>-G,NK- ( %8R 3 6T-O;G1E;G1?5'EP97-=+GAM;,W;36[;,!"& MX:L8V@:6+%*DU"+.INVVS:(78"4Z%JP_D$SJW+Z4G 1HD1H)7*#OQH)-F][X]-QLD-[,?1=67X[Q9]^.PS9QMO/)ZM-IXYRU3DS MOSA_*7,N,.Z\=>/DX\2P\[<8V;\R. MU_MS=(=E'CY;'I??\>\S?JG_SCX$I \)Z:. ]*$@?6A('R6DCPK2QP=('_F& MT@A%U)Q":DXQ-:>@FE-4S2FLYA17&UL4$L! A0#% @ MPC4/5^7R]4#N *P( !$ ( !KP &1O8U!R;W!S+V-O M&UL4$L! A0#% @ PC4/5YE&PO=V]R:W-H965T&UL4$L! A0#% @ PC4/5P@>4NI !@ &QD !@ M ("!Q@\ 'AL+W=O"S?KQF ( -D' 8 " @3P6 !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% M @ PC4/5RZT&O]N! LA4 !@ ("![!T 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ PC4/5P#F2T'> @ M4 8 !@ ("!03H 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ MPC4/5T%M4_TD P O08 !D ("!1D@ 'AL+W=O&PO=V]R:W-H965T5 M]&;+WP( #@' 9 " @2=< !X;"]W;W)K&UL4$L! A0#% @ PC4/5Q$_IEDJ @ )P4 !D M ("!/5\ 'AL+W=O80 >&PO=V]R:W-H M965T&UL4$L! M A0#% @ PC4/5WZ.]IQL @ =04 !D ("!9VT 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ PC4/ M5Y# >&PO=V]R:W-H965T&UL4$L! A0#% @ PC4/5_AC>JW6" BQ4 M !D ("!-'X 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ PC4/5[!=,!=K @ <@4 !D M ("!;(X 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ PC4/5_\,B(W0 P 5P@ !D ("!Y)8 'AL+W=O M@" #5 M!@ &0 @('KF@ >&PO=V]R:W-H965T M !X;"]W;W)K&UL4$L! A0#% @ PC4/5Z=L M\92X @ )08 !D ("!D: 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ PC4/5V#6(S(* P -@< !D M ("! ZT 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ PC4/5W>XZPW1 @ / 8 !D ("! M);< 'AL+W=O&PO=V]R:W-H965T\ !X;"]W;W)K&UL4$L! A0#% M @ PC4/5W.O!(-Y @ D04 !D ("!.+\ 'AL+W=O&PO=V]R:W-H965TXQ2&GD@( !(& 9 " @:3$ !X M;"]W;W)K&UL4$L! A0#% @ PC4/5_PP*GF, M @ \ 4 !D ("!;<< 'AL+W=O&PO=V]R:W-H965T:5)X87P( (0% 9 " @?K, !X;"]W;W)K&UL4$L! A0#% @ PC4/5]/I^LK< @ 008 !D M ("!D,\ 'AL+W=O&PO=V]R M:W-H965T;_CO)< ( %<% M 9 " @3_5 !X;"]W;W)K&UL M4$L! A0#% @ PC4/5W8]!:F @ S 4 !D ("!YM< M 'AL+W=O&PO=V]R:W-H965T_= !X;"]W;W)K&UL4$L! A0#% @ MPC4/5W$:)61N @ J@4 !D ("!4.$ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ PC4/5US\-$N7 P MV@D !D ("!?>D 'AL+W=O&PO=V]R:W-H965T073(0, &T* 9 " @&UL4$L! A0#% @ PC4/5_7"EN#D @ H !D M ("!(/, 'AL+W=O&PO=V]R:W-H M965T:9EG)X@( (X' 9 M " @6CY !X;"]W;W)K&UL4$L! M A0#% @ PC4/5[#4U<>S @ 0P< !D ("!@?P 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ PC4/ M5V47!U9V @ 2@8 !D ("!Q 0! 'AL+W=ON$# #*$ &0 M @(%Q!P$ >&PO=V]R:W-H965T&UL4$L! A0#% @ PC4/5VE5>/*5 @ #0< M !D ("!,0X! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ PC4/5T.]#1E< P P L !D M ("!81&PO=V]R:W-H965T M&UL4$L! A0# M% @ PC4/5T8B=QH- @ WP0 !D ("!_R(! 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ PC4/5POO ME*VY @ O < !D ("!SBH! 'AL+W=O&PO=V]R:W-H965T8Q 0!X;"]W;W)K&UL4$L! A0#% @ PC4/5Z"_OA\9 @ E@0 !D M ("!;C@! 'AL+W=O&PO M=V]R:W-H965T (-=?5@( M *T% 9 " @?L\ 0!X;"]W;W)K&UL4$L! A0#% @ PC4/5[<"\TQP @ 108 !D ("! MB#\! 'AL+W=O&PO=V]R:W-H965TE>IS?*@, $H2 - M " 81& 0!X;"]S='EL97,N>&UL4$L! A0#% @ PC4/5Y>*NQS M $P( L ( !V4D! %]R96QS+RYR96QS4$L! A0#% M @ PC4/5YW,[B0O!@ 1SH \ ( !PDH! 'AL+W=O-G,NK- ( %8R 3 " >I3 0!;0V]N=&5N=%]4 ?>7!E&UL4$L%!@ !@ & 5QH $]6 0 $! end XML 101 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 102 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 103 FilingSummary.xml IDEA: XBRL DOCUMENT 3.23.2 html 99 246 1 true 32 0 false 4 false false R1.htm 000010 - Document - Document and Entity Information Sheet http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 000020 - Statement - Consolidated Balance Sheets Sheet http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets Consolidated Balance Sheets Statements 2 false false R3.htm 000030 - Statement - Consolidated Balance Sheets - Parenthetical Sheet http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheetsParenthetical Consolidated Balance Sheets - Parenthetical Statements 3 false false R4.htm 000040 - Statement - Consolidated Statements of Income Sheet http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome Consolidated Statements of Income Statements 4 false false R5.htm 000050 - Statement - Consolidated Statements of Stockholders' Equity Sheet http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity Consolidated Statements of Stockholders' Equity Statements 5 false false R6.htm 000060 - Statement - Consolidated Statements of Cash Flows Sheet http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows Consolidated Statements of Cash Flows Statements 6 false false R7.htm 000070 - Disclosure - 1. Summary of Significant Accounting Policies Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 1. Summary of Significant Accounting Policies Notes 7 false false R8.htm 000080 - Disclosure - 2. Accounts and Other Receivables Sheet http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivables 2. Accounts and Other Receivables Notes 8 false false R9.htm 000090 - Disclosure - 3. Inventory Sheet http://taylordevices.com/20230531/role/idr_Disclosure3Inventory 3. Inventory Notes 9 false false R10.htm 000100 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts Sheet http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContracts 4. Costs and Estimated Earnings on Uncompleted Contracts Notes 10 false false R11.htm 000110 - Disclosure - 5. Maintenance and Other Inventory Sheet http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventory 5. Maintenance and Other Inventory Notes 11 false false R12.htm 000120 - Disclosure - 6. Property and Equipment Sheet http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipment 6. Property and Equipment Notes 12 false false R13.htm 000130 - Disclosure - 7. Short-Term Borrowings Sheet http://taylordevices.com/20230531/role/idr_Disclosure7ShortTermBorrowings 7. Short-Term Borrowings Notes 13 false false R14.htm 000140 - Disclosure - 8. Accrued Expenses Sheet http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpenses 8. Accrued Expenses Notes 14 false false R15.htm 000150 - Disclosure - 9. Sales Sheet http://taylordevices.com/20230531/role/idr_Disclosure9Sales 9. Sales Notes 15 false false R16.htm 000160 - Disclosure - 10. Income Taxes Sheet http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxes 10. Income Taxes Notes 16 false false R17.htm 000170 - Disclosure - 11. Earnings Per Common Share Sheet http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShare 11. Earnings Per Common Share Notes 17 false false R18.htm 000180 - Disclosure - 12. Related Party Transactions Sheet http://taylordevices.com/20230531/role/idr_Disclosure12RelatedPartyTransactions 12. Related Party Transactions Notes 18 false false R19.htm 000190 - Disclosure - 13. Employee Stock Purchase Plan Sheet http://taylordevices.com/20230531/role/idr_Disclosure13EmployeeStockPurchasePlan 13. Employee Stock Purchase Plan Notes 19 false false R20.htm 000200 - Disclosure - 14. Stock Option Plans Sheet http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlans 14. Stock Option Plans Notes 20 false false R21.htm 000210 - Disclosure - 15. Preferred Stock Sheet http://taylordevices.com/20230531/role/idr_Disclosure15PreferredStock 15. Preferred Stock Notes 21 false false R22.htm 000220 - Disclosure - 16. Treasury Stock Sheet http://taylordevices.com/20230531/role/idr_Disclosure16TreasuryStock 16. Treasury Stock Notes 22 false false R23.htm 000230 - Disclosure - 17. Retirement Plan Sheet http://taylordevices.com/20230531/role/idr_Disclosure17RetirementPlan 17. Retirement Plan Notes 23 false false R24.htm 000240 - Disclosure - 18. Fair Value of Financial Instruments Sheet http://taylordevices.com/20230531/role/idr_Disclosure18FairValueOfFinancialInstruments 18. Fair Value of Financial Instruments Notes 24 false false R25.htm 000250 - Disclosure - 19. Cash Flows Information Sheet http://taylordevices.com/20230531/role/idr_Disclosure19CashFlowsInformation 19. Cash Flows Information Notes 25 false false R26.htm 000260 - Disclosure - 20. Risks and Uncertainties Sheet http://taylordevices.com/20230531/role/idr_Disclosure20RisksAndUncertainties 20. Risks and Uncertainties Notes 26 false false R27.htm 000270 - Disclosure - 21. Legal Proceedings Sheet http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedings 21. Legal Proceedings Notes 27 false false R28.htm 000280 - Disclosure - 1. Summary of Significant Accounting Policies: Nature of Operations (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesNatureOfOperationsPolicies 1. Summary of Significant Accounting Policies: Nature of Operations (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 28 false false R29.htm 000290 - Disclosure - 1. Summary of Significant Accounting Policies: Principles of Consolidation (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies 1. Summary of Significant Accounting Policies: Principles of Consolidation (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 29 false false R30.htm 000300 - Disclosure - 1. Summary of Significant Accounting Policies: Subsequent Events (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesSubsequentEventsPolicies 1. Summary of Significant Accounting Policies: Subsequent Events (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 30 false false R31.htm 000310 - Disclosure - 1. Summary of Significant Accounting Policies: Use of Estimates (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesUseOfEstimatesPolicies 1. Summary of Significant Accounting Policies: Use of Estimates (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 31 false false R32.htm 000320 - Disclosure - 1. Summary of Significant Accounting Policies: Cash and Cash Equivalents (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies 1. Summary of Significant Accounting Policies: Cash and Cash Equivalents (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 32 false false R33.htm 000330 - Disclosure - 1. Summary of Significant Accounting Policies: Short-term Investments (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesShortTermInvestmentsPolicies 1. Summary of Significant Accounting Policies: Short-term Investments (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 33 false false R34.htm 000340 - Disclosure - 1. Summary of Significant Accounting Policies: Accounts and Other Receivables (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesAccountsAndOtherReceivablesPolicies 1. Summary of Significant Accounting Policies: Accounts and Other Receivables (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 34 false false R35.htm 000350 - Disclosure - 1. Summary of Significant Accounting Policies: Inventory (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesInventoryPolicies 1. Summary of Significant Accounting Policies: Inventory (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 35 false false R36.htm 000360 - Disclosure - 1. Summary of Significant Accounting Policies: Property and Equipment (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies 1. Summary of Significant Accounting Policies: Property and Equipment (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 36 false false R37.htm 000370 - Disclosure - 1. Summary of Significant Accounting Policies: Cash Value of Life Insurance (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesCashValueOfLifeInsurancePolicies 1. Summary of Significant Accounting Policies: Cash Value of Life Insurance (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 37 false false R38.htm 000380 - Disclosure - 1. Summary of Significant Accounting Policies: Revenue Recognition (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies 1. Summary of Significant Accounting Policies: Revenue Recognition (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 38 false false R39.htm 000390 - Disclosure - 1. Summary of Significant Accounting Policies: Shipping and Handling Costs (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesShippingAndHandlingCostsPolicies 1. Summary of Significant Accounting Policies: Shipping and Handling Costs (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 39 false false R40.htm 000400 - Disclosure - 1. Summary of Significant Accounting Policies: Income Taxes (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies 1. Summary of Significant Accounting Policies: Income Taxes (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 40 false false R41.htm 000410 - Disclosure - 1. Summary of Significant Accounting Policies: Sales Taxes (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesSalesTaxesPolicies 1. Summary of Significant Accounting Policies: Sales Taxes (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 41 false false R42.htm 000420 - Disclosure - 1. Summary of Significant Accounting Policies: Stock-Based Compensation (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies 1. Summary of Significant Accounting Policies: Stock-Based Compensation (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 42 false false R43.htm 000430 - Disclosure - 1. Summary of Significant Accounting Policies: New Accounting Standards (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesNewAccountingStandardsPolicies 1. Summary of Significant Accounting Policies: New Accounting Standards (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 43 false false R44.htm 000440 - Disclosure - 1. Summary of Significant Accounting Policies: Reclassifications (Policies) Sheet http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesReclassificationsPolicies 1. Summary of Significant Accounting Policies: Reclassifications (Policies) Policies http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies 44 false false R45.htm 000450 - Disclosure - 2. Accounts and Other Receivables: Accounts and Other Receivables (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesTables 2. Accounts and Other Receivables: Accounts and Other Receivables (Tables) Tables 45 false false R46.htm 000460 - Disclosure - 3. Inventory: Schedule of Inventory (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryTables 3. Inventory: Schedule of Inventory (Tables) Tables 46 false false R47.htm 000470 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Costs incurred on uncompleted contracts and Estimated earnings (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsTables 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Costs incurred on uncompleted contracts and Estimated earnings (Tables) Tables 47 false false R48.htm 000480 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Amounts are included in the accompanying balance sheets (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsTables 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Amounts are included in the accompanying balance sheets (Tables) Tables 48 false false R49.htm 000490 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schdule of Status of Projects in progress (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsSchduleOfStatusOfProjectsInProgressTables 4. Costs and Estimated Earnings on Uncompleted Contracts: Schdule of Status of Projects in progress (Tables) Tables 49 false false R50.htm 000500 - Disclosure - 5. Maintenance and Other Inventory: Schedule of Maintenance and Other Inventory (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryTables 5. Maintenance and Other Inventory: Schedule of Maintenance and Other Inventory (Tables) Tables 50 false false R51.htm 000510 - Disclosure - 6. Property and Equipment: Schedule of Property, Plant and Equipment (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentTables 6. Property and Equipment: Schedule of Property, Plant and Equipment (Tables) Tables 51 false false R52.htm 000520 - Disclosure - 8. Accrued Expenses: Schedule of Accrued Expenses (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesTables 8. Accrued Expenses: Schedule of Accrued Expenses (Tables) Tables 52 false false R53.htm 000530 - Disclosure - 9. Sales: Disaggregation of Sales Revenue (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueTables 9. Sales: Disaggregation of Sales Revenue (Tables) Tables 53 false false R54.htm 000540 - Disclosure - 10. Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables 10. Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Tables) Tables 54 false false R55.htm 000550 - Disclosure - 10. Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables 10. Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Tables) Tables 55 false false R56.htm 000560 - Disclosure - 10. Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables 10. Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Tables) Tables 56 false false R57.htm 000570 - Disclosure - 11. Earnings Per Common Share: Schedule of Earnings Per Common Share (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShareScheduleOfEarningsPerCommonShareTables 11. Earnings Per Common Share: Schedule of Earnings Per Common Share (Tables) Tables 57 false false R58.htm 000580 - Disclosure - 14. Stock Option Plans: Schedule of Fair Value Assumptions (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfFairValueAssumptionsTables 14. Stock Option Plans: Schedule of Fair Value Assumptions (Tables) Tables 58 false false R59.htm 000590 - Disclosure - 14. Stock Option Plans: Schedule of Stock Options Activity (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityTables 14. Stock Option Plans: Schedule of Stock Options Activity (Tables) Tables 59 false false R60.htm 000600 - Disclosure - 14. Stock Option Plans: Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTables 14. Stock Option Plans: Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable (Tables) Tables 60 false false R61.htm 000610 - Disclosure - 19. Cash Flows Information: Schedule of Cash Flow, Supplemental Disclosures (Tables) Sheet http://taylordevices.com/20230531/role/idr_Disclosure19CashFlowsInformationScheduleOfCashFlowSupplementalDisclosuresTables 19. Cash Flows Information: Schedule of Cash Flow, Supplemental Disclosures (Tables) Tables 61 false false R62.htm 000620 - Disclosure - 2. Accounts and Other Receivables: Accounts and Other Receivables (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails 2. Accounts and Other Receivables: Accounts and Other Receivables (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesTables 62 false false R63.htm 000630 - Disclosure - 3. Inventory: Schedule of Inventory (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails 3. Inventory: Schedule of Inventory (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryTables 63 false false R64.htm 000640 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Costs incurred on uncompleted contracts and Estimated earnings (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsDetails 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Costs incurred on uncompleted contracts and Estimated earnings (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsTables 64 false false R65.htm 000650 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Amounts are included in the accompanying balance sheets (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsDetails 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Amounts are included in the accompanying balance sheets (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsTables 65 false false R66.htm 000660 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schdule of Status of Projects in progress (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsSchduleOfStatusOfProjectsInProgressDetails 4. Costs and Estimated Earnings on Uncompleted Contracts: Schdule of Status of Projects in progress (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsSchduleOfStatusOfProjectsInProgressTables 66 false false R67.htm 000670 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsDetails 4. Costs and Estimated Earnings on Uncompleted Contracts (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsTables 67 false false R68.htm 000680 - Disclosure - 5. Maintenance and Other Inventory: Schedule of Maintenance and Other Inventory (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryDetails 5. Maintenance and Other Inventory: Schedule of Maintenance and Other Inventory (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryTables 68 false false R69.htm 000690 - Disclosure - 5. Maintenance and Other Inventory (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryDetails 5. Maintenance and Other Inventory (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryTables 69 false false R70.htm 000700 - Disclosure - 6. Property and Equipment: Schedule of Property, Plant and Equipment (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails 6. Property and Equipment: Schedule of Property, Plant and Equipment (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentTables 70 false false R71.htm 000710 - Disclosure - 6. Property and Equipment (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentDetails 6. Property and Equipment (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentTables 71 false false R72.htm 000720 - Disclosure - 7. Short-Term Borrowings (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure7ShortTermBorrowingsDetails 7. Short-Term Borrowings (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure7ShortTermBorrowings 72 false false R73.htm 000730 - Disclosure - 8. Accrued Expenses: Schedule of Accrued Expenses (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesDetails 8. Accrued Expenses: Schedule of Accrued Expenses (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesTables 73 false false R74.htm 000740 - Disclosure - 9. Sales: Disaggregation of Sales Revenue (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueDetails 9. Sales: Disaggregation of Sales Revenue (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueTables 74 false false R75.htm 000750 - Disclosure - 10. Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails 10. Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables 75 false false R76.htm 000760 - Disclosure - 10. Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails 10. Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables 76 false false R77.htm 000770 - Disclosure - 10. Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails 10. Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables 77 false false R78.htm 000780 - Disclosure - 10. Income Taxes (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesDetails 10. Income Taxes (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables 78 false false R79.htm 000790 - Disclosure - 11. Earnings Per Common Share: Schedule of Earnings Per Common Share (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShareScheduleOfEarningsPerCommonShareDetails 11. Earnings Per Common Share: Schedule of Earnings Per Common Share (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShareScheduleOfEarningsPerCommonShareTables 79 false false R80.htm 000800 - Disclosure - 13. Employee Stock Purchase Plan (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure13EmployeeStockPurchasePlanDetails 13. Employee Stock Purchase Plan (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure13EmployeeStockPurchasePlan 80 false false R81.htm 000810 - Disclosure - 14. Stock Option Plans: Schedule of Fair Value Assumptions (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfFairValueAssumptionsDetails 14. Stock Option Plans: Schedule of Fair Value Assumptions (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfFairValueAssumptionsTables 81 false false R82.htm 000820 - Disclosure - 14. Stock Option Plans: Schedule of Stock Options Activity (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityDetails 14. Stock Option Plans: Schedule of Stock Options Activity (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityTables 82 false false R83.htm 000830 - Disclosure - 14. Stock Option Plans: Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails 14. Stock Option Plans: Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTables 83 false false R84.htm 000840 - Disclosure - 15. Preferred Stock (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure15PreferredStockDetails 15. Preferred Stock (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure15PreferredStock 84 false false R85.htm 000850 - Disclosure - 16. Treasury Stock (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure16TreasuryStockDetails 16. Treasury Stock (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure16TreasuryStock 85 false false R86.htm 000860 - Disclosure - 17. Retirement Plan (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure17RetirementPlanDetails 17. Retirement Plan (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure17RetirementPlan 86 false false R87.htm 000870 - Disclosure - 19. Cash Flows Information: Schedule of Cash Flow, Supplemental Disclosures (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure19CashFlowsInformationScheduleOfCashFlowSupplementalDisclosuresDetails 19. Cash Flows Information: Schedule of Cash Flow, Supplemental Disclosures (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure19CashFlowsInformationScheduleOfCashFlowSupplementalDisclosuresTables 87 false false R88.htm 000880 - Disclosure - 21. Legal Proceedings (Details) Sheet http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedingsDetails 21. Legal Proceedings (Details) Details http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedings 88 false false All Reports Book All Reports tayd-20230531.htm tayd-20230531.xsd tayd-20230531_cal.xml tayd-20230531_def.xml tayd-20230531_lab.xml tayd-20230531_pre.xml td_ex31z1.htm td_ex31z2.htm td_ex32z1.htm td_ex32z2.htm http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 true true JSON 106 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "tayd-20230531.htm": { "axisCustom": 0, "axisStandard": 7, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 416, "http://xbrl.sec.gov/dei/2023": 36 }, "contextCount": 99, "dts": { "calculationLink": { "local": [ "tayd-20230531_cal.xml" ] }, "definitionLink": { "local": [ "tayd-20230531_def.xml" ] }, "inline": { "local": [ "tayd-20230531.htm" ] }, "labelLink": { "local": [ "tayd-20230531_lab.xml" ] }, "presentationLink": { "local": [ "tayd-20230531_pre.xml" ] }, "schema": { "local": [ "tayd-20230531.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd" ] } }, "elementCount": 318, "entityCount": 1, "hidden": { "http://xbrl.sec.gov/dei/2023": 5, "total": 5 }, "keyCustom": 38, "keyStandard": 208, "memberCustom": 21, "memberStandard": 11, "nsprefix": "fil", "nsuri": "http://taylordevices.com/20230531", "report": { "R1": { "firstAnchor": { "ancestors": [ "b", "p", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "000010 - Document - Document and Entity Information", "menuCat": "Cover", "order": "1", "role": "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation", "shortName": "Document and Entity Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "b", "p", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessAndContractualArrangementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000100 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts", "menuCat": "Notes", "order": "10", "role": "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContracts", "shortName": "4. Costs and Estimated Earnings on Uncompleted Contracts", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessAndContractualArrangementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentPlannedMajorMaintenanceActivitiesPolicy", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000110 - Disclosure - 5. Maintenance and Other Inventory", "menuCat": "Notes", "order": "11", "role": "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventory", "shortName": "5. Maintenance and Other Inventory", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentPlannedMajorMaintenanceActivitiesPolicy", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000120 - Disclosure - 6. Property and Equipment", "menuCat": "Notes", "order": "12", "role": "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipment", "shortName": "6. Property and Equipment", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShortTermDebtTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000130 - Disclosure - 7. Short-Term Borrowings", "menuCat": "Notes", "order": "13", "role": "http://taylordevices.com/20230531/role/idr_Disclosure7ShortTermBorrowings", "shortName": "7. Short-Term Borrowings", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShortTermDebtTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000140 - Disclosure - 8. Accrued Expenses", "menuCat": "Notes", "order": "14", "role": "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpenses", "shortName": "8. Accrued Expenses", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000150 - Disclosure - 9. Sales", "menuCat": "Notes", "order": "15", "role": "http://taylordevices.com/20230531/role/idr_Disclosure9Sales", "shortName": "9. Sales", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000160 - Disclosure - 10. Income Taxes", "menuCat": "Notes", "order": "16", "role": "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxes", "shortName": "10. Income Taxes", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000170 - Disclosure - 11. Earnings Per Common Share", "menuCat": "Notes", "order": "17", "role": "http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShare", "shortName": "11. Earnings Per Common Share", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000180 - Disclosure - 12. Related Party Transactions", "menuCat": "Notes", "order": "18", "role": "http://taylordevices.com/20230531/role/idr_Disclosure12RelatedPartyTransactions", "shortName": "12. Related Party Transactions", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000190 - Disclosure - 13. Employee Stock Purchase Plan", "menuCat": "Notes", "order": "19", "role": "http://taylordevices.com/20230531/role/idr_Disclosure13EmployeeStockPurchasePlan", "shortName": "13. Employee Stock Purchase Plan", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "000020 - Statement - Consolidated Balance Sheets", "menuCat": "Statements", "order": "2", "role": "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets", "shortName": "Consolidated Balance Sheets", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000200 - Disclosure - 14. Stock Option Plans", "menuCat": "Notes", "order": "20", "role": "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlans", "shortName": "14. Stock Option Plans", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PreferredStockTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000210 - Disclosure - 15. Preferred Stock", "menuCat": "Notes", "order": "21", "role": "http://taylordevices.com/20230531/role/idr_Disclosure15PreferredStock", "shortName": "15. Preferred Stock", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PreferredStockTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:TreasuryStockTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000220 - Disclosure - 16. Treasury Stock", "menuCat": "Notes", "order": "22", "role": "http://taylordevices.com/20230531/role/idr_Disclosure16TreasuryStock", "shortName": "16. Treasury Stock", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:TreasuryStockTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000230 - Disclosure - 17. Retirement Plan", "menuCat": "Notes", "order": "23", "role": "http://taylordevices.com/20230531/role/idr_Disclosure17RetirementPlan", "shortName": "17. Retirement Plan", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000240 - Disclosure - 18. Fair Value of Financial Instruments", "menuCat": "Notes", "order": "24", "role": "http://taylordevices.com/20230531/role/idr_Disclosure18FairValueOfFinancialInstruments", "shortName": "18. Fair Value of Financial Instruments", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000250 - Disclosure - 19. Cash Flows Information", "menuCat": "Notes", "order": "25", "role": "http://taylordevices.com/20230531/role/idr_Disclosure19CashFlowsInformation", "shortName": "19. Cash Flows Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:UnusualRisksAndUncertaintiesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000260 - Disclosure - 20. Risks and Uncertainties", "menuCat": "Notes", "order": "26", "role": "http://taylordevices.com/20230531/role/idr_Disclosure20RisksAndUncertainties", "shortName": "20. Risks and Uncertainties", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:UnusualRisksAndUncertaintiesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LegalMattersAndContingenciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000270 - Disclosure - 21. Legal Proceedings", "menuCat": "Notes", "order": "27", "role": "http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedings", "shortName": "21. Legal Proceedings", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LegalMattersAndContingenciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NatureOfOperations", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000280 - Disclosure - 1. Summary of Significant Accounting Policies: Nature of Operations (Policies)", "menuCat": "Policies", "order": "28", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesNatureOfOperationsPolicies", "shortName": "1. Summary of Significant Accounting Policies: Nature of Operations (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NatureOfOperations", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ConsolidationPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000290 - Disclosure - 1. Summary of Significant Accounting Policies: Principles of Consolidation (Policies)", "menuCat": "Policies", "order": "29", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies", "shortName": "1. Summary of Significant Accounting Policies: Principles of Consolidation (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ConsolidationPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "UsdPerShare", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "000030 - Statement - Consolidated Balance Sheets - Parenthetical", "menuCat": "Statements", "order": "3", "role": "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheetsParenthetical", "shortName": "Consolidated Balance Sheets - Parenthetical", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "UsdPerShare", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000300 - Disclosure - 1. Summary of Significant Accounting Policies: Subsequent Events (Policies)", "menuCat": "Policies", "order": "30", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesSubsequentEventsPolicies", "shortName": "1. Summary of Significant Accounting Policies: Subsequent Events (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:UseOfEstimates", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000310 - Disclosure - 1. Summary of Significant Accounting Policies: Use of Estimates (Policies)", "menuCat": "Policies", "order": "31", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesUseOfEstimatesPolicies", "shortName": "1. Summary of Significant Accounting Policies: Use of Estimates (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:UseOfEstimates", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000320 - Disclosure - 1. Summary of Significant Accounting Policies: Cash and Cash Equivalents (Policies)", "menuCat": "Policies", "order": "32", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies", "shortName": "1. Summary of Significant Accounting Policies: Cash and Cash Equivalents (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000330 - Disclosure - 1. Summary of Significant Accounting Policies: Short-term Investments (Policies)", "menuCat": "Policies", "order": "33", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesShortTermInvestmentsPolicies", "shortName": "1. Summary of Significant Accounting Policies: Short-term Investments (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CashCashEquivalentsAndShortTermInvestmentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:TradeAndOtherAccountsReceivablePolicy", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000340 - Disclosure - 1. Summary of Significant Accounting Policies: Accounts and Other Receivables (Policies)", "menuCat": "Policies", "order": "34", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesAccountsAndOtherReceivablesPolicies", "shortName": "1. Summary of Significant Accounting Policies: Accounts and Other Receivables (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:TradeAndOtherAccountsReceivablePolicy", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000350 - Disclosure - 1. Summary of Significant Accounting Policies: Inventory (Policies)", "menuCat": "Policies", "order": "35", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesInventoryPolicies", "shortName": "1. Summary of Significant Accounting Policies: Inventory (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000360 - Disclosure - 1. Summary of Significant Accounting Policies: Property and Equipment (Policies)", "menuCat": "Policies", "order": "36", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies", "shortName": "1. Summary of Significant Accounting Policies: Property and Equipment (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LifeInsuranceCorporateOrBankOwnedTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000370 - Disclosure - 1. Summary of Significant Accounting Policies: Cash Value of Life Insurance (Policies)", "menuCat": "Policies", "order": "37", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesCashValueOfLifeInsurancePolicies", "shortName": "1. Summary of Significant Accounting Policies: Cash Value of Life Insurance (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LifeInsuranceCorporateOrBankOwnedTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueRecognitionPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000380 - Disclosure - 1. Summary of Significant Accounting Policies: Revenue Recognition (Policies)", "menuCat": "Policies", "order": "38", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies", "shortName": "1. Summary of Significant Accounting Policies: Revenue Recognition (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueRecognitionPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShippingAndHandlingCostPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000390 - Disclosure - 1. Summary of Significant Accounting Policies: Shipping and Handling Costs (Policies)", "menuCat": "Policies", "order": "39", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesShippingAndHandlingCostsPolicies", "shortName": "1. Summary of Significant Accounting Policies: Shipping and Handling Costs (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShippingAndHandlingCostPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:Revenues", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "000040 - Statement - Consolidated Statements of Income", "menuCat": "Statements", "order": "4", "role": "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome", "shortName": "Consolidated Statements of Income", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "lang": null, "name": "us-gaap:CostOfGoodsAndServicesSold", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000400 - Disclosure - 1. Summary of Significant Accounting Policies: Income Taxes (Policies)", "menuCat": "Policies", "order": "40", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies", "shortName": "1. Summary of Significant Accounting Policies: Income Taxes (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RegulatoryIncomeTaxesPolicy", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000410 - Disclosure - 1. Summary of Significant Accounting Policies: Sales Taxes (Policies)", "menuCat": "Policies", "order": "41", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesSalesTaxesPolicies", "shortName": "1. Summary of Significant Accounting Policies: Sales Taxes (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RegulatoryIncomeTaxesPolicy", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000420 - Disclosure - 1. Summary of Significant Accounting Policies: Stock-Based Compensation (Policies)", "menuCat": "Policies", "order": "42", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies", "shortName": "1. Summary of Significant Accounting Policies: Stock-Based Compensation (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000430 - Disclosure - 1. Summary of Significant Accounting Policies: New Accounting Standards (Policies)", "menuCat": "Policies", "order": "43", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesNewAccountingStandardsPolicies", "shortName": "1. Summary of Significant Accounting Policies: New Accounting Standards (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PriorPeriodReclassificationAdjustmentDescription", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000440 - Disclosure - 1. Summary of Significant Accounting Policies: Reclassifications (Policies)", "menuCat": "Policies", "order": "44", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesReclassificationsPolicies", "shortName": "1. Summary of Significant Accounting Policies: Reclassifications (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PriorPeriodReclassificationAdjustmentDescription", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000450 - Disclosure - 2. Accounts and Other Receivables: Accounts and Other Receivables (Tables)", "menuCat": "Tables", "order": "45", "role": "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesTables", "shortName": "2. Accounts and Other Receivables: Accounts and Other Receivables (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfUtilityInventoryTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000460 - Disclosure - 3. Inventory: Schedule of Inventory (Tables)", "menuCat": "Tables", "order": "46", "role": "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryTables", "shortName": "3. Inventory: Schedule of Inventory (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfUtilityInventoryTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "us-gaap:BusinessAndContractualArrangementsDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000470 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Costs incurred on uncompleted contracts and Estimated earnings (Tables)", "menuCat": "Tables", "order": "47", "role": "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsTables", "shortName": "4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Costs incurred on uncompleted contracts and Estimated earnings (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:BusinessAndContractualArrangementsDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "us-gaap:BusinessAndContractualArrangementsDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "fil:ScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000480 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Amounts are included in the accompanying balance sheets (Tables)", "menuCat": "Tables", "order": "48", "role": "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsTables", "shortName": "4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Amounts are included in the accompanying balance sheets (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:BusinessAndContractualArrangementsDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "fil:ScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "fil:SchduleOfStatusOfProjectsInProgressTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000490 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schdule of Status of Projects in progress (Tables)", "menuCat": "Tables", "order": "49", "role": "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsSchduleOfStatusOfProjectsInProgressTables", "shortName": "4. Costs and Estimated Earnings on Uncompleted Contracts: Schdule of Status of Projects in progress (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "fil:SchduleOfStatusOfProjectsInProgressTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "kbd", "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I210531_StEqComps-CommonStock", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "000050 - Statement - Consolidated Statements of Stockholders' Equity", "menuCat": "Statements", "order": "5", "role": "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity", "shortName": "Consolidated Statements of Stockholders' Equity", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "kbd", "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I210531_StEqComps-CommonStock", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "us-gaap:PropertyPlantAndEquipmentPlannedMajorMaintenanceActivitiesPolicy", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "fil:ScheduleOfMaintenanceAndOtherInventoryTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000500 - Disclosure - 5. Maintenance and Other Inventory: Schedule of Maintenance and Other Inventory (Tables)", "menuCat": "Tables", "order": "50", "role": "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryTables", "shortName": "5. Maintenance and Other Inventory: Schedule of Maintenance and Other Inventory (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:PropertyPlantAndEquipmentPlannedMajorMaintenanceActivitiesPolicy", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "fil:ScheduleOfMaintenanceAndOtherInventoryTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000510 - Disclosure - 6. Property and Equipment: Schedule of Property, Plant and Equipment (Tables)", "menuCat": "Tables", "order": "51", "role": "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentTables", "shortName": "6. Property and Equipment: Schedule of Property, Plant and Equipment (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000520 - Disclosure - 8. Accrued Expenses: Schedule of Accrued Expenses (Tables)", "menuCat": "Tables", "order": "52", "role": "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesTables", "shortName": "8. Accrued Expenses: Schedule of Accrued Expenses (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000530 - Disclosure - 9. Sales: Disaggregation of Sales Revenue (Tables)", "menuCat": "Tables", "order": "53", "role": "http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueTables", "shortName": "9. Sales: Disaggregation of Sales Revenue (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000540 - Disclosure - 10. Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Tables)", "menuCat": "Tables", "order": "54", "role": "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables", "shortName": "10. Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:IncomeTaxDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000550 - Disclosure - 10. Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Tables)", "menuCat": "Tables", "order": "55", "role": "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables", "shortName": "10. Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000560 - Disclosure - 10. Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Tables)", "menuCat": "Tables", "order": "56", "role": "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables", "shortName": "10. Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000570 - Disclosure - 11. Earnings Per Common Share: Schedule of Earnings Per Common Share (Tables)", "menuCat": "Tables", "order": "57", "role": "http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShareScheduleOfEarningsPerCommonShareTables", "shortName": "11. Earnings Per Common Share: Schedule of Earnings Per Common Share (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueOptionTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000580 - Disclosure - 14. Stock Option Plans: Schedule of Fair Value Assumptions (Tables)", "menuCat": "Tables", "order": "58", "role": "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfFairValueAssumptionsTables", "shortName": "14. Stock Option Plans: Schedule of Fair Value Assumptions (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueOptionTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfStockOptionsRollForwardTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000590 - Disclosure - 14. Stock Option Plans: Schedule of Stock Options Activity (Tables)", "menuCat": "Tables", "order": "59", "role": "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityTables", "shortName": "14. Stock Option Plans: Schedule of Stock Options Activity (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfStockOptionsRollForwardTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "000060 - Statement - Consolidated Statements of Cash Flows", "menuCat": "Statements", "order": "6", "role": "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows", "shortName": "Consolidated Statements of Cash Flows", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "lang": null, "name": "us-gaap:StockOptionPlanExpense", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000600 - Disclosure - 14. Stock Option Plans: Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable (Tables)", "menuCat": "Tables", "order": "60", "role": "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTables", "shortName": "14. Stock Option Plans: Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000610 - Disclosure - 19. Cash Flows Information: Schedule of Cash Flow, Supplemental Disclosures (Tables)", "menuCat": "Tables", "order": "61", "role": "http://taylordevices.com/20230531/role/idr_Disclosure19CashFlowsInformationScheduleOfCashFlowSupplementalDisclosuresTables", "shortName": "19. Cash Flows Information: Schedule of Cash Flow, Supplemental Disclosures (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R62": { "firstAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:AccountsReceivableGrossCurrent", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000620 - Disclosure - 2. Accounts and Other Receivables: Accounts and Other Receivables (Details)", "menuCat": "Details", "order": "62", "role": "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails", "shortName": "2. Accounts and Other Receivables: Accounts and Other Receivables (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:AccountsReceivableGrossCurrent", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R63": { "firstAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "us-gaap:ScheduleOfUtilityInventoryTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:InventoryGross", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000630 - Disclosure - 3. Inventory: Schedule of Inventory (Details)", "menuCat": "Details", "order": "63", "role": "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails", "shortName": "3. Inventory: Schedule of Inventory (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "us-gaap:ScheduleOfUtilityInventoryTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:InventoryGross", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R64": { "firstAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock", "us-gaap:BusinessAndContractualArrangementsDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:CostsIncurredOnUncompletedContracts", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000640 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Costs incurred on uncompleted contracts and Estimated earnings (Details)", "menuCat": "Details", "order": "64", "role": "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsDetails", "shortName": "4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Costs incurred on uncompleted contracts and Estimated earnings (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock", "us-gaap:BusinessAndContractualArrangementsDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:CostsIncurredOnUncompletedContracts", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R65": { "firstAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "fil:ScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsTextBlock", "us-gaap:BusinessAndContractualArrangementsDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:CostsAndEstimatedEarningsInExcessOfBillings", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000650 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Amounts are included in the accompanying balance sheets (Details)", "menuCat": "Details", "order": "65", "role": "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsDetails", "shortName": "4. Costs and Estimated Earnings on Uncompleted Contracts: Schedule of Amounts are included in the accompanying balance sheets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "fil:ScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsTextBlock", "us-gaap:BusinessAndContractualArrangementsDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:CostsAndEstimatedEarningsInExcessOfBillings", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R66": { "firstAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:NumberOfProjectsInProgress", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000660 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts: Schdule of Status of Projects in progress (Details)", "menuCat": "Details", "order": "66", "role": "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsSchduleOfStatusOfProjectsInProgressDetails", "shortName": "4. Costs and Estimated Earnings on Uncompleted Contracts: Schdule of Status of Projects in progress (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:NumberOfProjectsInProgress", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R67": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:RevenuesRecognizedForAmountsIncludedInBillingsInExcessOfCostsAndEstimatedEarnings", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000670 - Disclosure - 4. Costs and Estimated Earnings on Uncompleted Contracts (Details)", "menuCat": "Details", "order": "67", "role": "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsDetails", "shortName": "4. Costs and Estimated Earnings on Uncompleted Contracts (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:RevenuesRecognizedForAmountsIncludedInBillingsInExcessOfCostsAndEstimatedEarnings", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R68": { "firstAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "fil:ScheduleOfMaintenanceAndOtherInventoryTextBlock", "us-gaap:PropertyPlantAndEquipmentPlannedMajorMaintenanceActivitiesPolicy", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:MaintenanceAndOtherInventoryGross", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000680 - Disclosure - 5. Maintenance and Other Inventory: Schedule of Maintenance and Other Inventory (Details)", "menuCat": "Details", "order": "68", "role": "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryDetails", "shortName": "5. Maintenance and Other Inventory: Schedule of Maintenance and Other Inventory (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "fil:ScheduleOfMaintenanceAndOtherInventoryTextBlock", "us-gaap:PropertyPlantAndEquipmentPlannedMajorMaintenanceActivitiesPolicy", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:MaintenanceAndOtherInventoryGross", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R69": { "firstAnchor": { "ancestors": [ "p", "us-gaap:PropertyPlantAndEquipmentPlannedMajorMaintenanceActivitiesPolicy", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:InventoryDisposedOf", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000690 - Disclosure - 5. Maintenance and Other Inventory (Details)", "menuCat": "Details", "order": "69", "role": "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryDetails", "shortName": "5. Maintenance and Other Inventory (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:PropertyPlantAndEquipmentPlannedMajorMaintenanceActivitiesPolicy", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:InventoryDisposedOf", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000070 - Disclosure - 1. Summary of Significant Accounting Policies", "menuCat": "Notes", "order": "7", "role": "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies", "shortName": "1. Summary of Significant Accounting Policies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R70": { "firstAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000700 - Disclosure - 6. Property and Equipment: Schedule of Property, Plant and Equipment (Details)", "menuCat": "Details", "order": "70", "role": "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails", "shortName": "6. Property and Equipment: Schedule of Property, Plant and Equipment (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R71": { "firstAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:DepreciationDepletionAndAmortization", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000710 - Disclosure - 6. Property and Equipment (Details)", "menuCat": "Details", "order": "71", "role": "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentDetails", "shortName": "6. Property and Equipment (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "lang": null, "name": "us-gaap:OtherCommitment", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R72": { "firstAnchor": { "ancestors": [ "p", "us-gaap:ShortTermDebtTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:LineOfCredit", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000720 - Disclosure - 7. Short-Term Borrowings (Details)", "menuCat": "Details", "order": "72", "role": "http://taylordevices.com/20230531/role/idr_Disclosure7ShortTermBorrowingsDetails", "shortName": "7. Short-Term Borrowings (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:ShortTermDebtTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:LineOfCredit", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R73": { "firstAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:AccruedLiabilitiesCurrent", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000730 - Disclosure - 8. Accrued Expenses: Schedule of Accrued Expenses (Details)", "menuCat": "Details", "order": "73", "role": "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesDetails", "shortName": "8. Accrued Expenses: Schedule of Accrued Expenses (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531_FvByLiabClass-CustomerDeposits", "decimals": "INF", "lang": null, "name": "us-gaap:AccruedLiabilitiesCurrent", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R74": { "firstAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:Revenues", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000740 - Disclosure - 9. Sales: Disaggregation of Sales Revenue (Details)", "menuCat": "Details", "order": "74", "role": "http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueDetails", "shortName": "9. Sales: Disaggregation of Sales Revenue (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531_StBusnSeg-Structural", "decimals": "INF", "lang": null, "name": "us-gaap:Revenues", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R75": { "firstAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000750 - Disclosure - 10. Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Details)", "menuCat": "Details", "order": "75", "role": "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails", "shortName": "10. Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R76": { "firstAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000760 - Disclosure - 10. Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Details)", "menuCat": "Details", "order": "76", "role": "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails", "shortName": "10. Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R77": { "firstAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:AllowanceForDoubtfulReceivables", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000770 - Disclosure - 10. Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Details)", "menuCat": "Details", "order": "77", "role": "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails", "shortName": "10. Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:AllowanceForDoubtfulReceivables", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R78": { "firstAnchor": { "ancestors": [ "b", "kbd", "p", "td", "tr", "table", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:DeferredTaxAssetsGross", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000780 - Disclosure - 10. Income Taxes (Details)", "menuCat": "Details", "order": "78", "role": "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesDetails", "shortName": "10. Income Taxes (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R79": { "firstAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:AverageCommonSharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000790 - Disclosure - 11. Earnings Per Common Share: Schedule of Earnings Per Common Share (Details)", "menuCat": "Details", "order": "79", "role": "http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShareScheduleOfEarningsPerCommonShareDetails", "shortName": "11. Earnings Per Common Share: Schedule of Earnings Per Common Share (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:AverageCommonSharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000080 - Disclosure - 2. Accounts and Other Receivables", "menuCat": "Notes", "order": "8", "role": "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivables", "shortName": "2. Accounts and Other Receivables", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R80": { "firstAnchor": { "ancestors": [ "p", "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:CommonSharesIssuedToEmployees", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000800 - Disclosure - 13. Employee Stock Purchase Plan (Details)", "menuCat": "Details", "order": "80", "role": "http://taylordevices.com/20230531/role/idr_Disclosure13EmployeeStockPurchasePlanDetails", "shortName": "13. Employee Stock Purchase Plan (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:CommonSharesIssuedToEmployees", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" } }, "R81": { "firstAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:FairValueOptionTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000810 - Disclosure - 14. Stock Option Plans: Schedule of Fair Value Assumptions (Details)", "menuCat": "Details", "order": "81", "role": "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfFairValueAssumptionsDetails", "shortName": "14. Stock Option Plans: Schedule of Fair Value Assumptions (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:FairValueOptionTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R82": { "firstAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfStockOptionsRollForwardTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I220531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "reportCount": 1, "unitRef": "Shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000820 - Disclosure - 14. Stock Option Plans: Schedule of Stock Options Activity (Details)", "menuCat": "Details", "order": "82", "role": "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityDetails", "shortName": "14. Stock Option Plans: Schedule of Stock Options Activity (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfStockOptionsRollForwardTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I210531", "decimals": "INF", "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" } }, "R83": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531_ShareBasedCompensationSharesAuthUnderStockOptionPlansByExercisePriceRange-N8019001", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000830 - Disclosure - 14. Stock Option Plans: Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable (Details)", "menuCat": "Details", "order": "83", "role": "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails", "shortName": "14. Stock Option Plans: Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531_ShareBasedCompensationSharesAuthUnderStockOptionPlansByExercisePriceRange-N8019001", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" } }, "R84": { "firstAnchor": { "ancestors": [ "p", "us-gaap:PreferredStockTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:PreferredStockAuthorizedButUnissued", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000840 - Disclosure - 15. Preferred Stock (Details)", "menuCat": "Details", "order": "84", "role": "http://taylordevices.com/20230531/role/idr_Disclosure15PreferredStockDetails", "shortName": "15. Preferred Stock (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:PreferredStockTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "fil:PreferredStockAuthorizedButUnissued", "reportCount": 1, "unique": true, "unitRef": "Shares", "xsiNil": "false" } }, "R85": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "I230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:TreasuryStockCommonShares", "reportCount": 1, "unitRef": "Shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000850 - Disclosure - 16. Treasury Stock (Details)", "menuCat": "Details", "order": "85", "role": "http://taylordevices.com/20230531/role/idr_Disclosure16TreasuryStockDetails", "shortName": "16. Treasury Stock (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R86": { "firstAnchor": { "ancestors": [ "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:PensionAndOtherPostretirementBenefitExpense", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000860 - Disclosure - 17. Retirement Plan (Details)", "menuCat": "Details", "order": "86", "role": "http://taylordevices.com/20230531/role/idr_Disclosure17RetirementPlanDetails", "shortName": "17. Retirement Plan (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:PensionAndOtherPostretirementBenefitExpense", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R87": { "firstAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:InterestPaid", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000870 - Disclosure - 19. Cash Flows Information: Schedule of Cash Flow, Supplemental Disclosures (Details)", "menuCat": "Details", "order": "87", "role": "http://taylordevices.com/20230531/role/idr_Disclosure19CashFlowsInformationScheduleOfCashFlowSupplementalDisclosuresDetails", "shortName": "19. Cash Flows Information: Schedule of Cash Flow, Supplemental Disclosures (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "b", "p", "td", "tr", "table", "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:InterestPaid", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R88": { "firstAnchor": { "ancestors": [ "p", "us-gaap:LegalMattersAndContingenciesTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LossContingencyPartiesJointlyAndSeverallyLiableInLitigation", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000880 - Disclosure - 21. Legal Proceedings (Details)", "menuCat": "Details", "order": "88", "role": "http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedingsDetails", "shortName": "21. Legal Proceedings (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:LegalMattersAndContingenciesTextBlock", "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LossContingencyPartiesJointlyAndSeverallyLiableInLitigation", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "000090 - Disclosure - 3. Inventory", "menuCat": "Notes", "order": "9", "role": "http://taylordevices.com/20230531/role/idr_Disclosure3Inventory", "shortName": "3. Inventory", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "tayd-20230531.htm", "contextRef": "D220601_230531", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 32, "tag": { "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_AuditorFirmId": { "auth_ref": [ "r445", "r446", "r447" ], "lang": { "en-us": { "role": { "documentation": "PCAOB issued Audit Firm Identifier", "label": "Auditor Firm ID" } } }, "localname": "AuditorFirmId", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "nonemptySequenceNumberItemType" }, "dei_AuditorLocation": { "auth_ref": [ "r445", "r446", "r447" ], "lang": { "en-us": { "role": { "label": "Auditor Location" } } }, "localname": "AuditorLocation", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "internationalNameItemType" }, "dei_AuditorName": { "auth_ref": [ "r445", "r446", "r447" ], "lang": { "en-us": { "role": { "label": "Auditor Name" } } }, "localname": "AuditorName", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "internationalNameItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Area code of city", "label": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Fiscal Year End" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "gMonthDayItemType" }, "dei_DocumentAnnualReport": { "auth_ref": [ "r445", "r446", "r447" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an annual report.", "label": "Document Annual Report" } } }, "localname": "DocumentAnnualReport", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_DocumentFinStmtErrorCorrectionFlag": { "auth_ref": [ "r445", "r446", "r447", "r449" ], "lang": { "en-us": { "role": { "documentation": "Indicates whether any of the financial statement period in the filing include a restatement due to error correction.", "label": "Document Financial Statement Error Correction" } } }, "localname": "DocumentFinStmtErrorCorrectionFlag", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_DocumentFiscalPeriodFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.", "label": "Document Fiscal Period Focus" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "gYearItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.", "label": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "dateItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r448" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "submissionTypeItemType" }, "dei_EntityAddressAddressDescription": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Description of the kind of address for the entity, if needed to distinguish more finely among mailing, principal, legal, accounting, contact or other addresses.", "label": "Entity Address, Address Description" } } }, "localname": "EntityAddressAddressDescription", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "stringItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address, City or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address, Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address, State or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r444" ], "lang": { "en-us": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Registrant CIK" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock, Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r444" ], "lang": { "en-us": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r444" ], "lang": { "en-us": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation, State or Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r450" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityPublicFloat": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Entity Public Float" } } }, "localname": "EntityPublicFloat", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "monetaryItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r444" ], "lang": { "en-us": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r444" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r444" ], "lang": { "en-us": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r444" ], "lang": { "en-us": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "employerIdItemType" }, "dei_EntityVoluntaryFilers": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Entity Voluntary Filers" } } }, "localname": "EntityVoluntaryFilers", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityWellKnownSeasonedIssuer": { "auth_ref": [ "r451" ], "lang": { "en-us": { "role": { "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.", "label": "Entity Well-known Seasoned Issuer" } } }, "localname": "EntityWellKnownSeasonedIssuer", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_IcfrAuditorAttestationFlag": { "auth_ref": [ "r445", "r446", "r447" ], "lang": { "en-us": { "role": { "label": "ICFR Auditor Attestation Flag" } } }, "localname": "IcfrAuditorAttestationFlag", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_PhoneFaxNumberDescription": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Description of Phone or Fax Number", "label": "Phone Fax Number Description" } } }, "localname": "PhoneFaxNumberDescription", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_DocumentDocumentAndEntityInformation" ], "xbrltype": "stringItemType" }, "fil_AccruedCommissions": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": { "order": 5.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Accrued commissions, as of the indicated date.", "label": "Accrued commissions" } } }, "localname": "AccruedCommissions", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "fil_AccruedVacation": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": { "order": 4.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Accrued vacation, as of the indicated date.", "label": "Accrued vacation" } } }, "localname": "AccruedVacation", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "fil_AerospaceDefenseMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Aerospace / Defense, during the indicated time period.", "label": "Aerospace / Defense" } } }, "localname": "AerospaceDefenseMember", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueDetails" ], "xbrltype": "domainItemType" }, "fil_AggregateAmountRemaining": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Aggregate amount remaining, as of the indicated date.", "label": "Aggregate amount remaining" } } }, "localname": "AggregateAmountRemaining", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsSchduleOfStatusOfProjectsInProgressDetails" ], "xbrltype": "monetaryItemType" }, "fil_AggregatePercentComplete": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the percentage value of Aggregate percent complete, as of the indicated date.", "label": "Aggregate percent complete" } } }, "localname": "AggregatePercentComplete", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsSchduleOfStatusOfProjectsInProgressDetails" ], "xbrltype": "percentItemType" }, "fil_AllowanceForDoubtfulReceivables": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Allowance for doubtful receivables, as of the indicated date.", "label": "Allowance for doubtful receivables" } } }, "localname": "AllowanceForDoubtfulReceivables", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "fil_AllowanceForObsoleteInventory": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": { "order": 3.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Allowance for obsolete inventory, as of the indicated date.", "label": "Allowance for obsolete inventory" } } }, "localname": "AllowanceForObsoleteInventory", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "fil_AverageCommonSharesOutstanding": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShareScheduleOfEarningsPerCommonShareDetails": { "order": 1.0, "parentTag": "fil_AverageCommonSharesOutstandingAssumingDilution", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Represents the Average common shares outstanding (number of shares), during the indicated time period.", "label": "Average common shares outstanding" } } }, "localname": "AverageCommonSharesOutstanding", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShareScheduleOfEarningsPerCommonShareDetails" ], "xbrltype": "sharesItemType" }, "fil_AverageCommonSharesOutstandingAssumingDilution": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShareScheduleOfEarningsPerCommonShareDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "lang": { "en-us": { "role": { "documentation": "Represents the Average common shares outstanding assuming dilution (number of shares), during the indicated time period.", "label": "Average common shares outstanding assuming dilution", "totalLabel": "Average common shares outstanding assuming dilution" } } }, "localname": "AverageCommonSharesOutstandingAssumingDilution", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShareScheduleOfEarningsPerCommonShareDetails" ], "xbrltype": "sharesItemType" }, "fil_BillingsInExcessOfCostsAndEstimatedEarnings": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsDetails": { "order": 2.0, "parentTag": "fil_CostsIncurredOnUncompletedContractsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Billings in excess of costs and estimated earnings, during the indicated time period.", "label": "Billings in excess of costs and estimated earnings {1}", "negatedLabel": "Billings in excess of costs and estimated earnings" } } }, "localname": "BillingsInExcessOfCostsAndEstimatedEarnings", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsDetails" ], "xbrltype": "monetaryItemType" }, "fil_CommonSharesIssuableUnderStockOptionPlans": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShareScheduleOfEarningsPerCommonShareDetails": { "order": 2.0, "parentTag": "fil_AverageCommonSharesOutstandingAssumingDilution", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Represents the Common shares issuable under stock option plans (number of shares), during the indicated time period.", "label": "Common shares issuable under stock option plans" } } }, "localname": "CommonSharesIssuableUnderStockOptionPlans", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShareScheduleOfEarningsPerCommonShareDetails" ], "xbrltype": "sharesItemType" }, "fil_CommonSharesIssuedToEmployees": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Common shares issued to employees (number of shares), during the indicated time period.", "label": "Common shares issued to employees" } } }, "localname": "CommonSharesIssuedToEmployees", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure13EmployeeStockPurchasePlanDetails" ], "xbrltype": "sharesItemType" }, "fil_CostsAndEstimatedEarningsInExcessOfBillings": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsDetails": { "order": 1.0, "parentTag": "fil_CostsIncurredOnUncompletedContractsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Costs and estimated earnings in excess of billings, during the indicated time period.", "label": "Costs and estimated earnings in excess of billings {1}", "terseLabel": "Costs and estimated earnings in excess of billings" } } }, "localname": "CostsAndEstimatedEarningsInExcessOfBillings", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsDetails" ], "xbrltype": "monetaryItemType" }, "fil_CostsIncurredOnUncompletedContracts": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsDetails": { "order": 1.0, "parentTag": "fil_CostsIncurredOnUncompletedContractsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Costs incurred on uncompleted contracts, during the indicated time period.", "label": "Costs incurred on uncompleted contracts" } } }, "localname": "CostsIncurredOnUncompletedContracts", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsDetails" ], "xbrltype": "monetaryItemType" }, "fil_CostsIncurredOnUncompletedContractsBillingsToDate": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsDetails": { "order": 2.0, "parentTag": "fil_CostsIncurredOnUncompletedContractsNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Costs incurred on uncompleted contracts, Billings to date, during the indicated time period.", "label": "Costs incurred on uncompleted contracts, Billings to date" } } }, "localname": "CostsIncurredOnUncompletedContractsBillingsToDate", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsDetails" ], "xbrltype": "monetaryItemType" }, "fil_CostsIncurredOnUncompletedContractsEstimatedEarnings": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsDetails": { "order": 2.0, "parentTag": "fil_CostsIncurredOnUncompletedContractsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Costs incurred on uncompleted contracts, Estimated earnings, during the indicated time period.", "label": "Costs incurred on uncompleted contracts, Estimated earnings" } } }, "localname": "CostsIncurredOnUncompletedContractsEstimatedEarnings", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsDetails" ], "xbrltype": "monetaryItemType" }, "fil_CostsIncurredOnUncompletedContractsGross": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsDetails": { "order": 1.0, "parentTag": "fil_CostsIncurredOnUncompletedContractsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Costs incurred on uncompleted contracts, Gross, during the indicated time period.", "label": "Costs incurred on uncompleted contracts, Gross", "totalLabel": "Costs incurred on uncompleted contracts, Gross" } } }, "localname": "CostsIncurredOnUncompletedContractsGross", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsDetails" ], "xbrltype": "monetaryItemType" }, "fil_CostsIncurredOnUncompletedContractsNet": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Costs incurred on uncompleted contracts, Net, during the indicated time period.", "label": "Costs incurred on uncompleted contracts, Net", "totalLabel": "Costs incurred on uncompleted contracts, Net" } } }, "localname": "CostsIncurredOnUncompletedContractsNet", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsDetails", "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsDetails" ], "xbrltype": "monetaryItemType" }, "fil_CustomerDepositsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Customer deposits, during the indicated time period.", "label": "Customer deposits" } } }, "localname": "CustomerDepositsMember", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesDetails" ], "xbrltype": "domainItemType" }, "fil_CustomersMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Customers, during the indicated time period.", "label": "Customers" } } }, "localname": "CustomersMember", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails" ], "xbrltype": "domainItemType" }, "fil_CustomersRetentionMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Customers - retention, during the indicated time period.", "label": "Customers - retention" } } }, "localname": "CustomersRetentionMember", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails" ], "xbrltype": "domainItemType" }, "fil_ExcessTaxDepreciation": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Excess tax depreciation, as of the indicated date.", "label": "Excess tax depreciation", "negatedLabel": "Excess tax depreciation" } } }, "localname": "ExcessTaxDepreciation", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "fil_FinishedGoodsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Finished goods, during the indicated time period.", "label": "Finished goods" } } }, "localname": "FinishedGoodsMember", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails" ], "xbrltype": "domainItemType" }, "fil_IndustrialMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Industrial, during the indicated time period.", "label": "Industrial" } } }, "localname": "IndustrialMember", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueDetails" ], "xbrltype": "domainItemType" }, "fil_InventoryDisposedOf": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Inventory disposed of, during the indicated time period.", "label": "Inventory disposed of" } } }, "localname": "InventoryDisposedOf", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryDetails" ], "xbrltype": "monetaryItemType" }, "fil_MaintenanceAndOtherInventoryAllowanceForObsolescence": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryDetails": { "order": 2.0, "parentTag": "fil_MaintenanceAndOtherInventoryNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Maintenance and other inventory, allowance for obsolescence, as of the indicated date.", "label": "Maintenance and other inventory, allowance for obsolescence" } } }, "localname": "MaintenanceAndOtherInventoryAllowanceForObsolescence", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryDetails" ], "xbrltype": "monetaryItemType" }, "fil_MaintenanceAndOtherInventoryGross": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryDetails": { "order": 1.0, "parentTag": "fil_MaintenanceAndOtherInventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Maintenance and other inventory, Gross, as of the indicated date.", "label": "Maintenance and other inventory, Gross" } } }, "localname": "MaintenanceAndOtherInventoryGross", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryDetails" ], "xbrltype": "monetaryItemType" }, "fil_MaintenanceAndOtherInventoryNet": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Maintenance and other inventory, Net, as of the indicated date.", "label": "Maintenance and other inventory, Net", "totalLabel": "Maintenance and other inventory, Net" } } }, "localname": "MaintenanceAndOtherInventoryNet", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryDetails" ], "xbrltype": "monetaryItemType" }, "fil_N100111001Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the $10.01-$11.00, during the indicated time period.", "label": "$10.01-$11.00" } } }, "localname": "N100111001Member", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "domainItemType" }, "fil_N110112001Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the $11.01-$12.00, during the indicated time period.", "label": "$11.01-$12.00" } } }, "localname": "N110112001Member", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "domainItemType" }, "fil_N120113001Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the $12.01-$13.00, during the indicated time period.", "label": "$12.01-$13.00" } } }, "localname": "N120113001Member", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "domainItemType" }, "fil_N130114001Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the $13.01-$14.00, during the indicated time period.", "label": "$13.01-$14.00" } } }, "localname": "N130114001Member", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "domainItemType" }, "fil_N160117001Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the $16.01-$17.00, during the indicated time period.", "label": "$16.01-$17.00" } } }, "localname": "N160117001Member", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "domainItemType" }, "fil_N190120001Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the $19.01-$20.00, during the indicated time period.", "label": "$19.01-$20.00" } } }, "localname": "N190120001Member", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "domainItemType" }, "fil_N7012000Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the $ 7.01-$20.00, during the indicated time period.", "label": "$ 7.01-$20.00" } } }, "localname": "N7012000Member", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "domainItemType" }, "fil_N701800Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the $ 7.01-$ 8.00, during the indicated time period.", "label": "$ 7.01-$ 8.00" } } }, "localname": "N701800Member", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "domainItemType" }, "fil_N80120001Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the $ 8.01-$20.00, during the indicated time period.", "label": "$ 8.01-$20.00" } } }, "localname": "N80120001Member", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "domainItemType" }, "fil_N8019001Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the $ 8.01-$ 9.00, during the indicated time period.", "label": "$ 8.01-$ 9.00" } } }, "localname": "N8019001Member", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "domainItemType" }, "fil_N90110001Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the $ 9.01-$10.00, during the indicated time period.", "label": "$ 9.01-$10.00" } } }, "localname": "N90110001Member", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "domainItemType" }, "fil_NumberOfProjectsInProgress": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Number of Projects in progress, as of the indicated date.", "label": "Number of Projects in progress" } } }, "localname": "NumberOfProjectsInProgress", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsSchduleOfStatusOfProjectsInProgressDetails" ], "xbrltype": "decimalItemType" }, "fil_OtherAdjustments": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": { "order": 6.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Other Adjustments, during the indicated time period.", "label": "Other Adjustments" } } }, "localname": "OtherAdjustments", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails" ], "xbrltype": "monetaryItemType" }, "fil_OtherMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Other, during the indicated time period.", "label": "Other" } } }, "localname": "OtherMember", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesDetails" ], "xbrltype": "domainItemType" }, "fil_OutstandingChecks": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Outstanding checks, as of the indicated date.", "label": "Outstanding checks" } } }, "localname": "OutstandingChecks", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure7ShortTermBorrowingsDetails" ], "xbrltype": "monetaryItemType" }, "fil_PercentageOfTotalValueInvoicedToCustomer": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the percentage value of Percentage of total value invoiced to customer, as of the indicated date.", "label": "Percentage of total value invoiced to customer" } } }, "localname": "PercentageOfTotalValueInvoicedToCustomer", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsSchduleOfStatusOfProjectsInProgressDetails" ], "xbrltype": "percentItemType" }, "fil_PersonnelCostsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Personnel costs, during the indicated time period.", "label": "Personnel costs" } } }, "localname": "PersonnelCostsMember", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesDetails" ], "xbrltype": "domainItemType" }, "fil_PreferredStockAuthorizedButUnissued": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Preferred stock authorized but unissued (number of shares), during the indicated time period.", "label": "Preferred stock authorized but unissued" } } }, "localname": "PreferredStockAuthorizedButUnissued", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure15PreferredStockDetails" ], "xbrltype": "sharesItemType" }, "fil_ProvisionForPotentialInventoryObsolescence": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Provision for potential inventory obsolescence, during the indicated time period.", "label": "Provision for potential inventory obsolescence" } } }, "localname": "ProvisionForPotentialInventoryObsolescence", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryDetails" ], "xbrltype": "monetaryItemType" }, "fil_RDCapitalization": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": { "order": 8.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of R&D capitalization, as of the indicated date.", "label": "R&D capitalization" } } }, "localname": "RDCapitalization", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "fil_RDTaxCredit": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": { "order": 7.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of R&D tax credit, as of the indicated date.", "label": "R&D tax credit" } } }, "localname": "RDTaxCredit", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "fil_RevenuesRecognizedForAmountsIncludedInBillingsInExcessOfCostsAndEstimatedEarnings": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Revenues Recognized For amounts included in billings in excess of costs and estimated earnings, during the indicated time period.", "label": "Revenues Recognized For amounts included in billings in excess of costs and estimated earnings" } } }, "localname": "RevenuesRecognizedForAmountsIncludedInBillingsInExcessOfCostsAndEstimatedEarnings", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsDetails" ], "xbrltype": "monetaryItemType" }, "fil_SchduleOfStatusOfProjectsInProgressTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the textual narrative disclosure of Schdule of Status of Projects in progress, during the indicated time period.", "label": "Schdule of Status of Projects in progress" } } }, "localname": "SchduleOfStatusOfProjectsInProgressTextBlock", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsSchduleOfStatusOfProjectsInProgressTables" ], "xbrltype": "textBlockItemType" }, "fil_ScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the textual narrative disclosure of Schedule of Amounts are included in the accompanying balance sheets, during the indicated time period.", "label": "Schedule of Amounts are included in the accompanying balance sheets" } } }, "localname": "ScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsTextBlock", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfAmountsAreIncludedInTheAccompanyingBalanceSheetsTables" ], "xbrltype": "textBlockItemType" }, "fil_ScheduleOfMaintenanceAndOtherInventoryTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the textual narrative disclosure of Schedule of Maintenance and Other Inventory, during the indicated time period.", "label": "Schedule of Maintenance and Other Inventory" } } }, "localname": "ScheduleOfMaintenanceAndOtherInventoryTextBlock", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventoryScheduleOfMaintenanceAndOtherInventoryTables" ], "xbrltype": "textBlockItemType" }, "fil_SharesReservedForFurtherIssue": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Shares reserved for further issue (number of shares), as of the indicated date.", "label": "Shares reserved for further issue" } } }, "localname": "SharesReservedForFurtherIssue", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure13EmployeeStockPurchasePlanDetails" ], "xbrltype": "sharesItemType" }, "fil_StockOptionsIssuedForServices": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": { "order": 9.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Stock options issued for services, as of the indicated date.", "label": "Stock options issued for services {2}", "terseLabel": "Stock options issued for services" } } }, "localname": "StockOptionsIssuedForServices", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "fil_StructuralMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Structural, during the indicated time period.", "label": "Structural" } } }, "localname": "StructuralMember", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueDetails" ], "xbrltype": "domainItemType" }, "fil_TaxInventoryAdjustment": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Tax inventory adjustment, as of the indicated date.", "label": "Tax inventory adjustment" } } }, "localname": "TaxInventoryAdjustment", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "fil_WarrantyReserve": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": { "order": 6.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the monetary amount of Warranty reserve, as of the indicated date.", "label": "Warranty reserve" } } }, "localname": "WarrantyReserve", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "fil_WorkInProcessMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Work-in-process, during the indicated time period.", "label": "Work-in-process" } } }, "localname": "WorkInProcessMember", "nsuri": "http://taylordevices.com/20230531", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails" ], "xbrltype": "domainItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r193", "r430", "r477", "r490", "r491" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails" ], "xbrltype": "stringItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [ "r193", "r430", "r477", "r490", "r491" ], "lang": { "en-us": { "role": { "label": "Customer" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsAndOtherReceivablesNetCurrent": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Accounts and other receivables, net (Note 2)", "totalLabel": "Accounts and other receivables, net (Note 2)" } } }, "localname": "AccountsAndOtherReceivablesNetCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails", "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": { "auth_ref": [ "r13" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.", "label": "8. Accrued Expenses:" } } }, "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpenses" ], "xbrltype": "textBlockItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r12", "r433" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": { "auth_ref": [ "r474" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of allowance for credit loss on accounts receivable.", "label": "Accounts and Other Receivables" } } }, "localname": "AccountsReceivableAllowanceForCreditLossTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_AccountsReceivableGrossCurrent": { "auth_ref": [ "r124", "r194", "r195", "r422" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails": { "order": 1.0, "parentTag": "us-gaap_AccountsAndOtherReceivablesNetCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Accounts Receivable, before Allowance for Credit Loss, Current" } } }, "localname": "AccountsReceivableGrossCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r14" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued expenses (Note 8)" } } }, "localname": "AccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesDetails", "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "auth_ref": [ "r27", "r122", "r337" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails": { "order": 2.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.", "label": "Less accumulated depreciation" } } }, "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapital": { "auth_ref": [ "r45", "r433", "r493" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Paid-in capital" } } }, "localname": "AdditionalPaidInCapital", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r271", "r272", "r273", "r366", "r466", "r467", "r468", "r484", "r494" ], "lang": { "en-us": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid-in Capital" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Adjustments to reconcile net income to net cash flows from operating activities" } } }, "localname": "AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for option under share-based payment arrangement.", "label": "Stock options issued for services" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables": { "auth_ref": [ "r471" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails": { "order": 2.0, "parentTag": "us-gaap_AccountsAndOtherReceivablesNetCurrent", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Less allowance for doubtful accounts" } } }, "localname": "AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Assets": { "auth_ref": [ "r82", "r123", "r141", "r169", "r183", "r189", "r199", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r300", "r302", "r314", "r332", "r386", "r433", "r443", "r475", "r476", "r486" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets", "totalLabel": "Assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets {1}", "terseLabel": "Assets" } } }, "localname": "AssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r117", "r129", "r141", "r199", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r300", "r302", "r314", "r433", "r475", "r476", "r486" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Total current assets", "totalLabel": "Total current assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Current assets" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_BillingsInExcessOfCostCurrent": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Liability attributable to (i) billings in excess of costs under the percentage of completion contract accounting method representing the difference between contractually invoiced amounts (billings) and revenue recognized based, for example, on costs incurred to estimated total costs at period end or (ii) contractually invoiced amounts (billings) in excess of costs incurred and accumulated under the completed contract accounting method that are expected to be realized within one year or one operating cycle, whichever is longer, from the reporting date.", "label": "Billings in excess of costs and estimated earnings (Note 4)" } } }, "localname": "BillingsInExcessOfCostCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_BuildingImprovementsMember": { "auth_ref": [ "r69" ], "lang": { "en-us": { "role": { "documentation": "Addition, improvement, or renovation to a facility held for productive use including, but not limited to, office, production, storage and distribution facilities.", "label": "Building Improvements" } } }, "localname": "BuildingImprovementsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAndContractualArrangementsDisclosureTextBlock": { "auth_ref": [ "r89" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for prepaid health care service provider's significant business and contractual arrangements with hospitals, physicians, or other associated entities.", "label": "4. Costs and Estimated Earnings on Uncompleted Contracts:" } } }, "localname": "BusinessAndContractualArrangementsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContracts" ], "xbrltype": "textBlockItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r19", "r120", "r420" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.", "label": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsAtCarryingValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsPolicyTextBlock": { "auth_ref": [ "r20" ], "lang": { "en-us": { "role": { "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.", "label": "Cash and Cash Equivalents:" } } }, "localname": "CashAndCashEquivalentsPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CashCashEquivalentsAndShortTermInvestmentsTextBlock": { "auth_ref": [ "r472" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of the components of cash, cash equivalents, and short-term investments. Short-term investments may include current marketable securities.", "label": "Short-term Investments:" } } }, "localname": "CashCashEquivalentsAndShortTermInvestmentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesShortTermInvestmentsPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r19", "r63", "r139" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash and cash equivalents - beginning", "periodEndLabel": "Cash and cash equivalents - ending", "periodStartLabel": "Cash and cash equivalents - beginning" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": { "auth_ref": [ "r2", "r63" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Net change in cash and cash equivalents", "totalLabel": "Net change in cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashFlowSupplementalDisclosuresTextBlock": { "auth_ref": [ "r59" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for supplemental cash flow activities, including cash, noncash, and part noncash transactions, for the period. Noncash is defined as information about all investing and financing activities of an enterprise during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.", "label": "19. Cash Flows Information:" } } }, "localname": "CashFlowSupplementalDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure19CashFlowsInformation" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r434", "r435", "r436", "r438", "r439", "r440", "r441", "r466", "r467", "r484", "r492", "r494" ], "lang": { "en-us": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r44" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common Stock, Par or Stated Value Per Share" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r44", "r374" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common Stock, Shares Authorized" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r44" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Shares, Issued" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r8", "r44", "r374", "r392", "r494", "r495" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common Stock, Shares, Outstanding" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r44", "r333", "r433" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common Stock, Value" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ConsolidationPolicyTextBlock": { "auth_ref": [ "r40", "r424" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.", "label": "Principles of Consolidation:" } } }, "localname": "ConsolidationPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CostOfGoodsAndServicesSold": { "auth_ref": [ "r54", "r328" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.", "label": "Cost of goods sold" } } }, "localname": "CostOfGoodsAndServicesSold", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of long-term contract or program.", "label": "Schedule of Costs incurred on uncompleted contracts and Estimated earnings" } } }, "localname": "CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure4CostsAndEstimatedEarningsOnUncompletedContractsScheduleOfCostsIncurredOnUncompletedContractsAndEstimatedEarningsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_CostsInExcessOfBillingsOnUncompletedContractsOrPrograms": { "auth_ref": [ "r95", "r96", "r97", "r99" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 7.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of receivable reflecting the cost incurred on uncompleted contracts in excess of related billings.", "label": "Costs and estimated earnings in excess of billings (Note 4)" } } }, "localname": "CostsInExcessOfBillingsOnUncompletedContractsOrPrograms", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit": { "auth_ref": [ "r454" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails": { "order": 1.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Current Federal, State and Local, Tax Expense (Benefit)", "totalLabel": "Current Federal, State and Local, Tax Expense (Benefit)" } } }, "localname": "CurrentFederalStateAndLocalTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Current tax provision" } } }, "localname": "CurrentFederalStateAndLocalTaxExpenseBenefitAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CurrentFederalTaxExpenseBenefit": { "auth_ref": [ "r454", "r465", "r483" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails": { "order": 1.0, "parentTag": "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Federal" } } }, "localname": "CurrentFederalTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": { "auth_ref": [ "r454", "r465", "r483" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails": { "order": 2.0, "parentTag": "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "State" } } }, "localname": "CurrentStateAndLocalTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": { "auth_ref": [ "r465", "r482", "r483" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails": { "order": 1.0, "parentTag": "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Federal {1}", "terseLabel": "Federal" } } }, "localname": "DeferredFederalIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit": { "auth_ref": [ "r479" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails": { "order": 2.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Deferred Federal, State and Local, Tax Expense (Benefit)", "totalLabel": "Deferred Federal, State and Local, Tax Expense (Benefit)" } } }, "localname": "DeferredFederalStateAndLocalTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Deferred tax provision (benefit)" } } }, "localname": "DeferredFederalStateAndLocalTaxExpenseBenefitAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DeferredIncomeTaxAssetsNet": { "auth_ref": [ "r282", "r283" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.", "label": "Deferred income taxes (Note 10)" } } }, "localname": "DeferredIncomeTaxAssetsNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxesAndTaxCredits": { "auth_ref": [ "r65" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred income tax expense (benefit) and income tax credits.", "label": "Deferred income taxes" } } }, "localname": "DeferredIncomeTaxesAndTaxCredits", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": { "auth_ref": [ "r465", "r482", "r483" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails": { "order": 2.0, "parentTag": "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "State {1}", "terseLabel": "State" } } }, "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxAssetsGross": { "auth_ref": [ "r289" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.", "label": "Deferred Tax Assets, Gross", "totalLabel": "Deferred Tax Assets, Gross" } } }, "localname": "DeferredTaxAssetsGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesDetails", "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxAssetsGrossAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Deferred tax assets" } } }, "localname": "DeferredTaxAssetsGrossAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DeferredTaxAssetsNet": { "auth_ref": [ "r481" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.", "label": "Net deferred tax assets", "totalLabel": "Net deferred tax assets" } } }, "localname": "DeferredTaxAssetsNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxLiabilitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Deferred tax liabilities" } } }, "localname": "DeferredTaxLiabilitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DepreciationDepletionAndAmortization": { "auth_ref": [ "r5", "r174" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Depreciation {1}", "terseLabel": "Depreciation" } } }, "localname": "DepreciationDepletionAndAmortization", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentDetails", "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r477" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Sales Revenue" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r253", "r254", "r268", "r269", "r270", "r432" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for share-based payment arrangement.", "label": "14. Stock Option Plans:" } } }, "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlans" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock": { "auth_ref": [ "r7", "r36" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of share-based payment arrangement.", "label": "13. Employee Stock Purchase Plan:" } } }, "localname": "DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure13EmployeeStockPurchasePlan" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureTextBlockAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Notes" } } }, "localname": "DisclosureTextBlockAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r137", "r148", "r149", "r150", "r151", "r152", "r157", "r158", "r160", "r161", "r162", "r166", "r311", "r312", "r329", "r341", "r427" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.", "label": "Basic earnings per common share (Note 11)" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r137", "r148", "r149", "r150", "r151", "r152", "r158", "r160", "r161", "r162", "r166", "r311", "r312", "r329", "r341", "r427" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "Diluted earnings per common share (Note 11)" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r156", "r163", "r164", "r165" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for earnings per share.", "label": "11. Earnings Per Common Share:" } } }, "localname": "EarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShare" ], "xbrltype": "textBlockItemType" }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "auth_ref": [ "r285" ], "lang": { "en-us": { "role": { "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Effective income tax rate" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperations", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r8", "r114", "r133", "r134", "r135", "r143", "r144", "r145", "r147", "r153", "r155", "r167", "r202", "r203", "r230", "r271", "r272", "r273", "r293", "r294", "r304", "r305", "r306", "r307", "r308", "r309", "r310", "r315", "r316", "r317", "r318", "r319", "r320", "r321", "r354", "r355", "r356", "r366", "r414" ], "lang": { "en-us": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.", "label": "Equity Component" } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueByLiabilityClassAxis": { "auth_ref": [ "r41", "r80" ], "lang": { "en-us": { "role": { "documentation": "Information by class of liability.", "label": "Liability Class [Axis]" } } }, "localname": "FairValueByLiabilityClassAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresTextBlock": { "auth_ref": [ "r313" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.", "label": "18. Fair Value of Financial Instruments:" } } }, "localname": "FairValueDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure18FairValueOfFinancialInstruments" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain": { "auth_ref": [ "r9" ], "lang": { "en-us": { "role": { "documentation": "Represents classes of liabilities measured and disclosed at fair value.", "label": "Fair Value by Liability Class" } } }, "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueOptionTextBlock": { "auth_ref": [ "r81", "r108" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for a company's election to apply the fair value option for measurement and reporting of eligible financial assets and liabilities (as defined), as well as certain other eligible items (as defined) included in the statement of financial position, whether such option is elected for a single eligible item or a group of similar eligible items and is in addition to other disclosures concerning fair value which the company may be required to provide. Such disclosure might be expected to include: (1) for items included in the statement of financial position: (a) the reasons for electing a fair value option for each eligible item or group of similar eligible items; (b) if the fair value option is elected for some but not all eligible items within a group of similar eligible items: (i) a description of those similar items and the reasons for partial election and (ii) information of how the group of similar items relates to individual balance sheet line items; (c) for each line item in the statement of financial position that includes an item or items for which the fair value option has been elected: (i) information of how each line item in the statement of financial position relates to major categories of assets and liabilities presented in accordance with other fair value disclosures and (ii) the aggregate carrying amount of ineligible items included in each line item in the balance sheet, if any; (d) the difference between the aggregate fair value and the aggregate unpaid principal balance (assuming contractual principal amounts and fair value option elected) of: (i) loans and long-term receivables (other than securities otherwise reported at fair value) and (ii) long-term debt instruments; (e) for loans held as assets for which the fair value option has been elected: (i) the aggregate fair value of loans that are 90 days or more past due, (ii) if the policy is to recognize interest income separately from other changes in fair value, the aggregate fair value of loans in nonaccrual status, and (iii) the difference between the aggregate fair value and the aggregate unpaid principal balance for loans that are 90 days or more past due, in nonaccrual status, or both; (f) for investments that would have been accounted for under the equity method if the entity had not chosen to apply the fair value option, the information required for such investments, if material either individually or in the aggregate; (2) for items included in the income statement: (a) the amounts of gains and losses from fair value changes included in earnings and in which line in the income statement those gains and losses are reported whether or not combined with gains and losses from items required to be accounted for at fair value; (b) a description of how interest and dividends are measured and where they are reported in the income statement; (c) for loans and other receivables held as assets: (i) the estimated amount of gains or losses included in earnings attributable to changes in instrument-specific credit risk and (ii) how the gains or losses attributable to changes in instrument-specific credit risk were determined; (d) for liabilities with fair values that have been significantly affected during the reporting period by changes in the instrument-specific credit risk: (i) the estimated amount of gains and losses from fair value changes included in earnings that are attributable to changes in the instrument-specific credit risk, (ii) qualitative information about the reasons for those changes, and (iii) how the gains and losses attributable to changes in instrument-specific credit risk were determined; and (3) certain other disclosures as required or determined to be provided.", "label": "Schedule of Fair Value Assumptions" } } }, "localname": "FairValueOptionTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfFairValueAssumptionsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_FurnitureAndFixturesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.", "label": "Furniture and Fixtures" } } }, "localname": "FurnitureAndFixturesMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_GainLossOnCondemnation": { "auth_ref": [ "r462" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The gain (loss) is the pre-tax difference between the net condemnation award and the entity's adjusted basis of the condemned property.", "label": "Provision for inventory obsolescence", "negatedLabel": "Provision for inventory obsolescence" } } }, "localname": "GainLossOnCondemnation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_GainLossOnDispositionOfAssets1": { "auth_ref": [ "r462" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee.", "label": "(Gain) loss on disposal of property and equipment", "negatedLabel": "(Gain) loss on disposal of property and equipment" } } }, "localname": "GainLossOnDispositionOfAssets1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_GainsLossesOnExtinguishmentOfDebt": { "auth_ref": [ "r5", "r32", "r33" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.", "label": "Bad debt expense", "negatedLabel": "Bad debt expense" } } }, "localname": "GainsLossesOnExtinguishmentOfDebt", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r53", "r141", "r169", "r182", "r188", "r190", "r199", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r314", "r428", "r475" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.", "label": "Gross profit", "totalLabel": "Gross profit" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r0", "r51", "r87", "r169", "r182", "r188", "r190", "r330", "r339", "r428" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "Income before provision for income taxes", "totalLabel": "Income before provision for income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Consolidated Statements of Income" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r142", "r279", "r286", "r287", "r291", "r295", "r297", "r298", "r299", "r362" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.", "label": "10. Income Taxes:" } } }, "localname": "IncomeTaxDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r100", "r111", "r154", "r155", "r177", "r284", "r296", "r342" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Provision for income taxes (Note 10)", "totalLabel": "Provision for income taxes (Note 10)" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails", "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails", "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxPolicyTextBlock": { "auth_ref": [ "r132", "r280", "r281", "r287", "r288", "r290", "r292", "r360" ], "lang": { "en-us": { "role": { "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.", "label": "Income Taxes:" } } }, "localname": "IncomeTaxPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": { "auth_ref": [ "r285" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": { "order": 1.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Computed tax provision at the expected statutory rate" } } }, "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationOtherReconcilingItems": { "auth_ref": [ "r480" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": { "order": 5.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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 tax exempt income, equity in earnings (loss) of an unconsolidated subsidiary, minority noncontrolling interest income (loss), tax holiday, disposition of a business, disposition of an asset, repatriation of foreign earnings, repatriation of foreign earnings jobs creation act of 2004, increase (decrease) in enacted tax rate, prior year income taxes, increase (decrease) in deferred tax asset valuation allowance, and other adjustments.", "label": "Other permanent differences" } } }, "localname": "IncomeTaxReconciliationOtherReconcilingItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": { "auth_ref": [ "r480" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": { "order": 2.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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).", "label": "State income tax - net of Federal tax benefit" } } }, "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationTaxCreditsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Tax effect of permanent differences" } } }, "localname": "IncomeTaxReconciliationTaxCreditsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxReconciliationTaxCreditsForeign": { "auth_ref": [ "r480" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": { "order": 4.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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 foreign tax credit.", "label": "Foreign-derived intangible income deduction", "negatedLabel": "Foreign-derived intangible income deduction" } } }, "localname": "IncomeTaxReconciliationTaxCreditsForeign", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationTaxCreditsResearch": { "auth_ref": [ "r480" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": { "order": 3.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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 research tax credit.", "label": "Research tax credits", "negatedLabel": "Research tax credits" } } }, "localname": "IncomeTaxReconciliationTaxCreditsResearch", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesPaidNet": { "auth_ref": [ "r21" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Income taxes paid" } } }, "localname": "IncomeTaxesPaidNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure19CashFlowsInformationScheduleOfCashFlowSupplementalDisclosuresDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayableTrade": { "auth_ref": [ "r4" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 13.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Change in recurring obligations of a business that arise from the acquisition of merchandise, materials, supplies and services used in the production and sale of goods and services.", "label": "Accounts payable {1}", "terseLabel": "Accounts payable" } } }, "localname": "IncreaseDecreaseInAccountsPayableTrade", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r4" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.", "label": "Accounts and other receivables", "negatedLabel": "Accounts and other receivables" } } }, "localname": "IncreaseDecreaseInAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccruedLiabilities": { "auth_ref": [ "r4" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 14.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.", "label": "Accrued expenses" } } }, "localname": "IncreaseDecreaseInAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInBillingInExcessOfCostOfEarnings": { "auth_ref": [ "r98" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 15.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the liability reflecting cash payments received before the related costs have been incurred.", "label": "Billings in excess of costs and estimated earnings" } } }, "localname": "IncreaseDecreaseInBillingInExcessOfCostOfEarnings", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r4" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.", "label": "Inventory", "negatedLabel": "Inventory" } } }, "localname": "IncreaseDecreaseInInventories", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Changes in other current assets and liabilities" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherCurrentAssets": { "auth_ref": [ "r461" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in current assets classified as other.", "label": "Prepaid income taxes {1}", "negatedLabel": "Prepaid income taxes" } } }, "localname": "IncreaseDecreaseInOtherCurrentAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherOperatingLiabilities": { "auth_ref": [ "r4" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in operating liabilities classified as other.", "label": "Costs and estimated earnings in excess of billings" } } }, "localname": "IncreaseDecreaseInOtherOperatingLiabilities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInPrepaidExpense": { "auth_ref": [ "r4" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods.", "label": "Prepaid expenses {1}", "negatedLabel": "Prepaid expenses" } } }, "localname": "IncreaseDecreaseInPrepaidExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestPaid": { "auth_ref": [ "r463" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash paid for interest, including, but not limited to, capitalized interest and payment to settle zero-coupon bond attributable to accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount; classified as operating and investing activities.", "label": "Interest paid" } } }, "localname": "InterestPaid", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure19CashFlowsInformationScheduleOfCashFlowSupplementalDisclosuresDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryAdjustments": { "auth_ref": [ "r25", "r458" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails": { "order": 2.0, "parentTag": "us-gaap_InventoryNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of inventory reserves for last-in first-out (LIFO) and other inventory valuation methods.", "label": "Less allowance for obsolescence" } } }, "localname": "InventoryAdjustments", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryDisclosureTextBlock": { "auth_ref": [ "r204" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.", "label": "3. Inventory:" } } }, "localname": "InventoryDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure3Inventory" ], "xbrltype": "textBlockItemType" }, "us-gaap_InventoryGross": { "auth_ref": [ "r458" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails": { "order": 1.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Inventory, Gross" } } }, "localname": "InventoryGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNet": { "auth_ref": [ "r126", "r421", "r433" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Inventory, Net", "totalLabel": "Inventory, Net" } } }, "localname": "InventoryNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryPartsAndComponentsNetOfReserves": { "auth_ref": [ "r26", "r457" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date for elements of machinery or equipment held for the purpose of replacing similar parts in the course of repair or maintenance.", "label": "Inventory (Note 3)" } } }, "localname": "InventoryPartsAndComponentsNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryPolicyTextBlock": { "auth_ref": [ "r101", "r119", "r125", "r204", "r205", "r206", "r327", "r425" ], "lang": { "en-us": { "role": { "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.", "label": "Inventory:" } } }, "localname": "InventoryPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesInventoryPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_InvestmentIncomeInterest": { "auth_ref": [ "r56", "r172" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities.", "label": "Interest, net" } } }, "localname": "InvestmentIncomeInterest", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_LandImprovementsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Additions or improvements to real estate held.", "label": "Land Improvements {1}", "terseLabel": "Land Improvements" } } }, "localname": "LandImprovementsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LandMember": { "auth_ref": [ "r478" ], "lang": { "en-us": { "role": { "documentation": "Part of earth's surface not covered by water.", "label": "Land {1}", "terseLabel": "Land" } } }, "localname": "LandMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LegalMattersAndContingenciesTextBlock": { "auth_ref": [ "r70" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for legal proceedings, legal contingencies, litigation, regulatory and environmental matters and other contingencies.", "label": "21. Legal Proceedings:" } } }, "localname": "LegalMattersAndContingenciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedings" ], "xbrltype": "textBlockItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r49", "r84", "r335", "r433", "r464", "r473", "r485" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "Liabilities and Equity", "totalLabel": "Liabilities and Equity" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities and Stockholders' Equity" } } }, "localname": "LiabilitiesAndStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r15", "r118", "r141", "r199", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r301", "r302", "r303", "r314", "r433", "r475", "r486", "r487" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "Total current liabilities", "totalLabel": "Total current liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Current liabilities" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LifeInsuranceCorporateOrBankOwnedTextBlock": { "auth_ref": [ "r200", "r201" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for corporate (COLI) or bank (BOLI) owned life insurance including the amount of cash surrender value that could be received as of the date of the statement of financial position, any restrictions on the company's ability to obtain the value of the life insurance policy on surrender, or any other additional information desired to be disclosed.", "label": "Cash Value of Life Insurance:" } } }, "localname": "LifeInsuranceCorporateOrBankOwnedTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesCashValueOfLifeInsurancePolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_LineOfCredit": { "auth_ref": [ "r11", "r83", "r489" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Long-Term Line of Credit" } } }, "localname": "LineOfCredit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure7ShortTermBorrowingsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityAverageOutstandingAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Average amount borrowed under the credit facility during the period.", "label": "Line of Credit Facility, Average Outstanding Amount" } } }, "localname": "LineOfCreditFacilityAverageOutstandingAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure7ShortTermBorrowingsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": { "auth_ref": [ "r470" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for claims held for amounts due a entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses.", "label": "2. Accounts and Other Receivables:" } } }, "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LossContingencyAllegations": { "auth_ref": [ "r28", "r30", "r71" ], "lang": { "en-us": { "role": { "documentation": "Presents an assertion of a fact by a plaintiff in a pleading or complaint, which the plaintiff claims it will prove upon presentation of evidence at the proceeding.", "label": "Loss Contingency, Allegations" } } }, "localname": "LossContingencyAllegations", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedingsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingencyInestimableLoss": { "auth_ref": [ "r29", "r31" ], "lang": { "en-us": { "role": { "documentation": "Explanation as to why an estimate of a specified contingent loss cannot be made, resulting in disclosure without accrual.", "label": "Loss Contingency, Inestimable Loss" } } }, "localname": "LossContingencyInestimableLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedingsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingencyLawsuitFilingDate": { "auth_ref": [ "r28", "r30", "r71" ], "lang": { "en-us": { "role": { "documentation": "States the date the complaint was formally filed in a court of law, in arbitration or mediation.", "label": "Loss Contingency, Lawsuit Filing Date" } } }, "localname": "LossContingencyLawsuitFilingDate", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedingsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingencyManagementsAssessmentAndProcess": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Describes management's process to evaluate the contingency matter and to estimate the impact on the financial statements and ongoing operations, such as added credit risk or loss of customers, including pertinent information to adequately disclose the matter and significant assumptions underlying the estimates.", "label": "Loss Contingency, Management's Assessment and Process" } } }, "localname": "LossContingencyManagementsAssessmentAndProcess", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedingsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingencyNameOfDefendant": { "auth_ref": [ "r28", "r30", "r71" ], "lang": { "en-us": { "role": { "documentation": "Identifies the named defendant in a lawsuit.", "label": "Loss Contingency, Name of Defendant" } } }, "localname": "LossContingencyNameOfDefendant", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedingsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingencyNameOfPlaintiff": { "auth_ref": [ "r28", "r30", "r71" ], "lang": { "en-us": { "role": { "documentation": "Identifies the plaintiff in the lawsuit.", "label": "Loss Contingency, Name of Plaintiff" } } }, "localname": "LossContingencyNameOfPlaintiff", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedingsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingencyPartiesJointlyAndSeverallyLiableInLitigation": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Identifies individuals or entities that are co-defendants in a lawsuit, and who may have to pay all or a portion of any damages awarded.", "label": "Loss Contingency, Parties Jointly and Severally Liable in Litigation" } } }, "localname": "LossContingencyPartiesJointlyAndSeverallyLiableInLitigation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure21LegalProceedingsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_MachineryAndEquipmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.", "label": "Machinery and Equipment" } } }, "localname": "MachineryAndEquipmentMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NatureOfOperations": { "auth_ref": [ "r102", "r112" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.", "label": "Nature of Operations:" } } }, "localname": "NatureOfOperations", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesNatureOfOperationsPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r138" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "Net financing activities", "totalLabel": "Net financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r138" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "Net investing activities", "totalLabel": "Net investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r63", "r64", "r65" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "Net operating activities", "totalLabel": "Net operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r52", "r65", "r88", "r116", "r130", "r131", "r135", "r141", "r146", "r148", "r149", "r150", "r151", "r154", "r155", "r159", "r169", "r182", "r188", "r190", "r199", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r312", "r314", "r340", "r394", "r412", "r413", "r428", "r442", "r475" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net income", "totalLabel": "Net income" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows", "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome", "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.", "label": "New Accounting Standards:" } } }, "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesNewAccountingStandardsPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_NonoperatingIncomeExpense": { "auth_ref": [ "r57" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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).", "label": "Total other income, net", "totalLabel": "Total other income, net" } } }, "localname": "NonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_NonoperatingIncomeExpenseAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other income (expense)" } } }, "localname": "NonoperatingIncomeExpenseAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r169", "r182", "r188", "r190", "r428" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "Operating income", "totalLabel": "Operating income" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsCurrent": { "auth_ref": [ "r128", "r433" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current assets classified as other.", "label": "Prepaid income taxes" } } }, "localname": "OtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsMiscellaneousNoncurrent": { "auth_ref": [], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of other miscellaneous assets expected to be realized or consumed after one year or normal operating cycle, if longer.", "label": "Cash value of life insurance, net" } } }, "localname": "OtherAssetsMiscellaneousNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherCommitment": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Minimum amount of other commitment not otherwise specified in the taxonomy. Excludes commitments explicitly modeled in the taxonomy, including but not limited to, long-term and short-term purchase commitments, recorded and unrecorded purchase obligations, supply commitments, registration payment arrangements, leases, debt, product warranties, guarantees, environmental remediation obligations, and pensions.", "label": "Commitments to make capital expenditures" } } }, "localname": "OtherCommitment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherInventoryNoncurrent": { "auth_ref": [ "r456" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount as of the balance sheet date of inventories not expected to be converted to cash, sold or exchanged within the normal operating cycle (such as inventory related to long-term contracts or program rights).", "label": "Maintenance and other inventory, net (Note 5)" } } }, "localname": "OtherInventoryNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r58" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.", "label": "Miscellaneous" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsForProceedsFromOtherInvestingActivities": { "auth_ref": [ "r452", "r460" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash (inflow) outflow from investing activities classified as other.", "label": "Increase in cash value of life insurance", "negatedLabel": "Increase in cash value of life insurance" } } }, "localname": "PaymentsForProceedsFromOtherInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "auth_ref": [ "r18" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow to reacquire common stock during the period.", "label": "Acquisition of treasury stock", "negatedLabel": "Acquisition of treasury stock" } } }, "localname": "PaymentsForRepurchaseOfCommonStock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireOtherInvestments": { "auth_ref": [ "r61" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow to acquire investments classified as other.", "label": "Increase in short-term investments", "negatedLabel": "Increase in short-term investments" } } }, "localname": "PaymentsToAcquireOtherInvestments", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r62" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "Acquisition of property and equipment", "negatedLabel": "Acquisition of property and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PensionAndOtherPostretirementBenefitExpense": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cost (reversal of cost) for pension and other postretirement benefits.", "label": "Pension and Other Postretirement Benefits Cost (Reversal of Cost)" } } }, "localname": "PensionAndOtherPostretirementBenefitExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure17RetirementPlanDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": { "auth_ref": [ "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r431" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for retirement benefits.", "label": "17. Retirement Plan:" } } }, "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure17RetirementPlan" ], "xbrltype": "textBlockItemType" }, "us-gaap_PolicyTextBlockAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Policies" } } }, "localname": "PolicyTextBlockAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_PreferredStockTextBlock": { "auth_ref": [ "r73" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for terms, amounts, nature of changes, rights and privileges, dividends, and other matters related to preferred stock.", "label": "15. Preferred Stock:" } } }, "localname": "PreferredStockTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure15PreferredStock" ], "xbrltype": "textBlockItemType" }, "us-gaap_PrepaidExpenseCurrent": { "auth_ref": [ "r127", "r207", "r208", "r423" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.", "label": "Prepaid expenses" } } }, "localname": "PrepaidExpenseCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PriorPeriodReclassificationAdjustmentDescription": { "auth_ref": [ "r455" ], "lang": { "en-us": { "role": { "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.", "label": "Reclassifications:" } } }, "localname": "PriorPeriodReclassificationAdjustmentDescription", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesReclassificationsPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_ProceedsFromIssuanceOfCommonStock": { "auth_ref": [ "r3" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow from the additional capital contribution to the entity.", "label": "Proceeds from issuance of common stock" } } }, "localname": "ProceedsFromIssuanceOfCommonStock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "auth_ref": [ "r60" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Proceeds from disposal of property and equipment" } } }, "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "auth_ref": [ "r6" ], "lang": { "en-us": { "role": { "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.", "label": "Long-Lived Tangible Asset [Axis]" } } }, "localname": "PropertyPlantAndEquipmentByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "auth_ref": [ "r68", "r105", "r109", "r110" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure 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.", "label": "6. Property and Equipment:" } } }, "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipment" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentGross": { "auth_ref": [ "r69", "r121", "r338" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails": { "order": 1.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Gross" } } }, "localname": "PropertyPlantAndEquipmentGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r6", "r331", "r338", "r433" ], "calculation": { "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property and equipment, net (Note 6)", "totalLabel": "Property and equipment, net (Note 6)" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails", "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentPlannedMajorMaintenanceActivitiesPolicy": { "auth_ref": [ "r1" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for planned major maintenance activities.", "label": "5. Maintenance and Other Inventory:" } } }, "localname": "PropertyPlantAndEquipmentPlannedMajorMaintenanceActivitiesPolicy", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure5MaintenanceAndOtherInventory" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": { "auth_ref": [ "r6", "r105", "r109", "r336" ], "lang": { "en-us": { "role": { "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.", "label": "Property and Equipment:" } } }, "localname": "PropertyPlantAndEquipmentPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "auth_ref": [ "r6" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Schedule of Property, Plant and Equipment" } } }, "localname": "PropertyPlantAndEquipmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "auth_ref": [ "r69" ], "lang": { "en-us": { "role": { "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.", "label": "Long-Lived Tangible Asset" } } }, "localname": "PropertyPlantAndEquipmentTypeDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PublicUtilitiesInventoryAxis": { "auth_ref": [ "r457" ], "lang": { "en-us": { "role": { "documentation": "Information by type of inventory held.", "label": "Inventory [Axis]" } } }, "localname": "PublicUtilitiesInventoryAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PublicUtilitiesInventoryRawMaterialsMember": { "auth_ref": [ "r50" ], "lang": { "en-us": { "role": { "documentation": "Basic goods that are to be consumed directly or indirectly in the production of finished goods or services.", "label": "Raw Materials" } } }, "localname": "PublicUtilitiesInventoryRawMaterialsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PublicUtilitiesInventoryTypeDomain": { "auth_ref": [ "r457" ], "lang": { "en-us": { "role": { "documentation": "Tangible personal property that is held for sale in the ordinary course of business, in process of production for such sale or is to be currently consumed in the production of goods or services to be available for sale.", "label": "Inventory {1}", "terseLabel": "Inventory" } } }, "localname": "PublicUtilitiesInventoryTypeDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RegulatoryIncomeTaxesPolicy": { "auth_ref": [ "r90", "r91" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for income taxes, including investment tax credits, and the related regulatory treatment (for example, whether deferred income tax accounting - normalization - is allowed in rate making).", "label": "Sales Taxes:" } } }, "localname": "RegulatoryIncomeTaxesPolicy", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesSalesTaxesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": { "auth_ref": [ "r322", "r323", "r324", "r325", "r326", "r363", "r364", "r365", "r397", "r398", "r399", "r417", "r418" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.", "label": "12. Related Party Transactions:" } } }, "localname": "RelatedPartyTransactionsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure12RelatedPartyTransactions" ], "xbrltype": "textBlockItemType" }, "us-gaap_ResearchAndDevelopmentExpense": { "auth_ref": [ "r42", "r278", "r488" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.", "label": "Research and development costs" } } }, "localname": "ResearchAndDevelopmentExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r46", "r74", "r334", "r357", "r358", "r361", "r375", "r433" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated undistributed earnings (deficit).", "label": "Retained earnings" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r114", "r143", "r144", "r145", "r147", "r153", "r155", "r202", "r203", "r271", "r272", "r273", "r293", "r294", "r304", "r306", "r307", "r309", "r310", "r354", "r356", "r366", "r494" ], "lang": { "en-us": { "role": { "documentation": "Accumulated undistributed earnings (deficit).", "label": "Retained Earnings" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r113", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r239" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.", "label": "9. Sales:" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure9Sales" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueRecognitionPolicyTextBlock": { "auth_ref": [ "r395", "r419", "r426" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.", "label": "Revenue Recognition:" } } }, "localname": "RevenueRecognitionPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_Revenues": { "auth_ref": [ "r136", "r141", "r170", "r171", "r181", "r186", "r187", "r191", "r192", "r193", "r199", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r314", "r330", "r475" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_GrossProfit", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).", "label": "Sales, net (Note 9)" } } }, "localname": "Revenues", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueDetails", "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the components of accrued liabilities.", "label": "Schedule of Accrued Expenses" } } }, "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of supplemental cash flow information for the periods presented.", "label": "Schedule of Cash Flow, Supplemental Disclosures" } } }, "localname": "ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure19CashFlowsInformationScheduleOfCashFlowSupplementalDisclosuresTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": { "auth_ref": [ "r79" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.", "label": "Schedule of Components of Income Tax Expense (Benefit)" } } }, "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": { "auth_ref": [ "r78" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Deferred Tax Assets and Liabilities" } } }, "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "auth_ref": [ "r469" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.", "label": "Schedule of Earnings Per Common Share" } } }, "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure11EarningsPerCommonShareScheduleOfEarningsPerCommonShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "auth_ref": [ "r77" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Effective Income Tax Rate Reconciliation" } } }, "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure10IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfStockOptionsRollForwardTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the change in stock options.", "label": "Schedule of Stock Options Activity" } } }, "localname": "ScheduleOfStockOptionsRollForwardTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfUtilityInventoryTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of all information related to inventories for utilities.", "label": "Schedule of Inventory" } } }, "localname": "ScheduleOfUtilityInventoryTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [ "r168", "r169", "r170", "r171", "r172", "r173", "r174", "r175", "r176", "r177", "r178", "r179", "r180", "r181", "r182", "r183", "r184", "r185", "r186", "r187", "r188", "r189", "r190", "r193", "r209", "r210", "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r219", "r220", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r429", "r453", "r490" ], "lang": { "en-us": { "role": { "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.", "label": "Segments" } } }, "localname": "SegmentDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r55" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome": { "order": 3.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.", "label": "Selling, general and administrative expenses" } } }, "localname": "SellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": { "auth_ref": [ "r265" ], "lang": { "en-us": { "role": { "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.", "label": "Expected dividend yield" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfFairValueAssumptionsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": { "auth_ref": [ "r264" ], "lang": { "en-us": { "role": { "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.", "label": "Expected volatility" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfFairValueAssumptionsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": { "auth_ref": [ "r266" ], "lang": { "en-us": { "role": { "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares.", "label": "Risk-free interest rate" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfFairValueAssumptionsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod": { "auth_ref": [ "r260" ], "lang": { "en-us": { "role": { "documentation": "Number of options or other stock instruments for which the right to exercise has lapsed under the terms of the plan agreements.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Expirations in Period" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "auth_ref": [ "r258" ], "lang": { "en-us": { "role": { "documentation": "Gross number of share options (or share units) granted during the period.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": { "auth_ref": [ "r36" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value", "periodEndLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value", "periodStartLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "auth_ref": [ "r256", "r257" ], "lang": { "en-us": { "role": { "documentation": "Number of options outstanding, including both vested and non-vested options.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number, Beginning Balance", "periodEndLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number, Ending Balance", "periodStartLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number, Beginning Balance" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "auth_ref": [ "r256", "r257" ], "lang": { "en-us": { "role": { "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price, Beginning Balance", "periodEndLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price, Ending Balance", "periodStartLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price, Beginning Balance" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock": { "auth_ref": [ "r10" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of number, weighted-average exercise price or conversion ratio, aggregate intrinsic value, and weighted-average remaining contractual term for outstanding and exercisable options that are fully vested and expected to vest. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding and Exercisable" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "auth_ref": [ "r259" ], "lang": { "en-us": { "role": { "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.", "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice": { "auth_ref": [ "r260" ], "lang": { "en-us": { "role": { "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options of the plan that expired.", "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Expirations in Period, Weighted Average Exercise Price" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": { "auth_ref": [ "r258" ], "lang": { "en-us": { "role": { "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.", "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": { "auth_ref": [ "r253", "r255", "r261", "r262", "r263", "r264", "r267", "r274", "r275", "r276", "r277" ], "lang": { "en-us": { "role": { "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.", "label": "Stock-Based Compensation:" } } }, "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis": { "auth_ref": [ "r38" ], "lang": { "en-us": { "role": { "documentation": "Information by range of option prices pertaining to options granted.", "label": "Exercise Price Range [Axis]" } } }, "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain": { "auth_ref": [ "r39" ], "lang": { "en-us": { "role": { "documentation": "Supplementary information on outstanding and exercisable share awards as of the balance sheet date which stratifies outstanding options by ranges of exercise prices.", "label": "Exercise Price Range" } } }, "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions": { "auth_ref": [ "r37" ], "lang": { "en-us": { "role": { "documentation": "The number of shares reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices.", "label": "Number of Options" } } }, "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": { "auth_ref": [ "r263" ], "lang": { "en-us": { "role": { "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.", "label": "Expected life in years" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfFairValueAssumptionsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1": { "auth_ref": [ "r37" ], "lang": { "en-us": { "role": { "documentation": "The weighted average price as of the balance sheet date at which grantees could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices.", "label": "Weighted Average Exercise Price" } } }, "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2": { "auth_ref": [ "r76" ], "lang": { "en-us": { "role": { "documentation": "Weighted average remaining contractual term of outstanding stock options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Weighted Average Remaining Years of Contractual Life" } } }, "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails" ], "xbrltype": "durationItemType" }, "us-gaap_ShippingAndHandlingCostPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for the classification of shipping and handling costs, including whether the costs are included in cost of sales or included in other income statement accounts. If shipping and handling fees are significant and are not included in cost of sales, disclosure includes both the amounts of such costs and the line item on the income statement which includes such costs.", "label": "Shipping and Handling Costs:" } } }, "localname": "ShippingAndHandlingCostPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesShippingAndHandlingCostsPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_ShortTermDebtTextBlock": { "auth_ref": [ "r72" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for short-term debt.", "label": "7. Short-Term Borrowings:" } } }, "localname": "ShortTermDebtTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure7ShortTermBorrowings" ], "xbrltype": "textBlockItemType" }, "us-gaap_ShortTermInvestments": { "auth_ref": [ "r85", "r86", "r459" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current.", "label": "Short-term investments" } } }, "localname": "ShortTermInvestments", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "auth_ref": [ "r66", "r140" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.", "label": "1. Summary of Significant Accounting Policies:" } } }, "localname": "SignificantAccountingPoliciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_StatementBusinessSegmentsAxis": { "auth_ref": [ "r115", "r168", "r169", "r170", "r171", "r172", "r173", "r174", "r175", "r176", "r177", "r178", "r179", "r180", "r181", "r182", "r183", "r184", "r185", "r186", "r187", "r188", "r189", "r190", "r193", "r209", "r210", "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r220", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r429", "r453", "r490" ], "lang": { "en-us": { "role": { "documentation": "Information by business segments.", "label": "Segments [Axis]" } } }, "localname": "StatementBusinessSegmentsAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r8", "r17", "r114", "r133", "r134", "r135", "r143", "r144", "r145", "r147", "r153", "r155", "r167", "r202", "r203", "r230", "r271", "r272", "r273", "r293", "r294", "r304", "r305", "r306", "r307", "r308", "r309", "r310", "r315", "r316", "r317", "r318", "r319", "r320", "r321", "r354", "r355", "r356", "r366", "r414" ], "lang": { "en-us": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [ "r143", "r144", "r145", "r167", "r328", "r359", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r387", "r388", "r389", "r390", "r391", "r393", "r395", "r396", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r411", "r414", "r437" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails", "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails", "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails", "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails", "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesDetails", "http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueDetails", "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Consolidated Statements of Cash Flows" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Consolidated Balance Sheets", "verboseLabel": "Consolidated Balance Sheets - Parenthetical" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Consolidated Statements of Stockholders' Equity" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r143", "r144", "r145", "r167", "r328", "r359", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r387", "r388", "r389", "r390", "r391", "r393", "r395", "r396", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r411", "r414", "r437" ], "lang": { "en-us": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableDetails", "http://taylordevices.com/20230531/role/idr_Disclosure2AccountsAndOtherReceivablesAccountsAndOtherReceivablesDetails", "http://taylordevices.com/20230531/role/idr_Disclosure3InventoryScheduleOfInventoryDetails", "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails", "http://taylordevices.com/20230531/role/idr_Disclosure8AccruedExpensesScheduleOfAccruedExpensesDetails", "http://taylordevices.com/20230531/role/idr_Disclosure9SalesDisaggregationOfSalesRevenueDetails", "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "auth_ref": [ "r8", "r43", "r44", "r74", "r259" ], "lang": { "en-us": { "role": { "documentation": "Number of share options (or share units) exercised during the current period.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period" } } }, "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure14StockOptionPlansScheduleOfStockOptionsActivityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueEmployeeBenefitPlan": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value of shares issued during the period to an employee benefit plan, such as a defined contribution or defined benefit plan.", "label": "Issuance of shares for employee stock option plan" } } }, "localname": "StockIssuedDuringPeriodValueEmployeeBenefitPlan", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": { "auth_ref": [ "r8", "r43", "r44", "r74" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate change in value for stock issued during the period as a result of employee stock purchase plan.", "label": "Issuance of shares for employee stock purchase plan" } } }, "localname": "StockIssuedDuringPeriodValueEmployeeStockPurchasePlan", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockOptionPlanExpense": { "auth_ref": [ "r5" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncash expense for option under share-based payment arrangement.", "label": "Stock options issued for services {1}", "terseLabel": "Stock options issued for services" } } }, "localname": "StockOptionPlanExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r44", "r47", "r48", "r67", "r376", "r392", "r415", "r416", "r433", "r443", "r464", "r473", "r485", "r494" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.", "label": "Total stockholders' equity", "periodEndLabel": "Equity, Attributable to Parent, Ending Balance", "periodStartLabel": "Equity, Attributable to Parent, Beginning Balance", "totalLabel": "Total stockholders' equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets", "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders' Equity" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventsPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for reporting subsequent events.", "label": "Subsequent Events:" } } }, "localname": "SubsequentEventsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesSubsequentEventsPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_TableTextBlockSupplementAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Tables/Schedules" } } }, "localname": "TableTextBlockSupplementAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_TextBlockAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Details" } } }, "localname": "TextBlockAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_TradeAndOtherAccountsReceivablePolicy": { "auth_ref": [ "r92", "r93", "r94", "r196", "r197", "r198" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for accounts receivable.", "label": "Accounts and Other Receivables:" } } }, "localname": "TradeAndOtherAccountsReceivablePolicy", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesAccountsAndOtherReceivablesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_TreasuryStockCommonMember": { "auth_ref": [ "r34" ], "lang": { "en-us": { "role": { "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury.", "label": "Treasury Stock, Common" } } }, "localname": "TreasuryStockCommonMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockCommonShares": { "auth_ref": [ "r34" ], "lang": { "en-us": { "role": { "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury.", "label": "Treasury Stock, Common, Shares" } } }, "localname": "TreasuryStockCommonShares", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure16TreasuryStockDetails", "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_TreasuryStockTextBlock": { "auth_ref": [ "r75" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock.", "label": "16. Treasury Stock:" } } }, "localname": "TreasuryStockTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure16TreasuryStock" ], "xbrltype": "textBlockItemType" }, "us-gaap_TreasuryStockValue": { "auth_ref": [ "r16", "r34", "r35" ], "calculation": { "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Treasury stock - 567,751 and 558,834 shares at cost", "negatedLabel": "Treasury stock - 567,751 and 558,834 shares at cost" } } }, "localname": "TreasuryStockValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_UnusualRisksAndUncertaintiesTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the nature of the unusual risk or uncertainty, if estimable, such as the threat of expropriation of its assets by a foreign government, rapid technological obsolescence in the industry, risk of natural disaster from earthquake or weather events, and availability of or continuation of a labor force at a reasonable cost.", "label": "20. Risks and Uncertainties:" } } }, "localname": "UnusualRisksAndUncertaintiesTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure20RisksAndUncertainties" ], "xbrltype": "textBlockItemType" }, "us-gaap_UseOfEstimates": { "auth_ref": [ "r22", "r23", "r24", "r103", "r104", "r106", "r107" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.", "label": "Use of Estimates:" } } }, "localname": "UseOfEstimates", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure1SummaryOfSignificantAccountingPoliciesUseOfEstimatesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_VehiclesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Equipment used primarily for road transportation.", "label": "Vehicles" } } }, "localname": "VehiclesMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://taylordevices.com/20230531/role/idr_Disclosure6PropertyAndEquipmentScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" } }, "unitCount": 4 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482251/360-10-25-5", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "270", "URI": "https://asc.fasb.org//1943274/2147482989/270-10-45-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Subparagraph": "(d)", "Topic": "958", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "958", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(22))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "958", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r112": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "275", "URI": "https://asc.fasb.org//275/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r113": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "https://asc.fasb.org//606/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(13))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(14))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(18))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(b))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(7))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(8))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(9))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a),20,24)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(1))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(25))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(2))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r156": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "https://asc.fasb.org//260/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29,30)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(j)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481569/310-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r200": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "30", "Topic": "325", "URI": "https://asc.fasb.org//325-30/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "325", "URI": "https://asc.fasb.org//1943274/2147481463/325-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r204": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "330", "URI": "https://asc.fasb.org//330/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "330", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "330", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "05", "SubTopic": "10", "Topic": "340", "URI": "https://asc.fasb.org//1943274/2147482955/340-10-05-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "340", "URI": "https://asc.fasb.org//1943274/2147483032/340-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "420", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.P.4(d))", "Topic": "420", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r240": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "715", "URI": "https://asc.fasb.org//715/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(i)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iii)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(03)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(l)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(o)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(p)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(q)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(r)(1)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(r)(2)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "330", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480126/715-20-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "60", "Subparagraph": "(c)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480266/715-60-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "70", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480794/715-70-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r253": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "https://asc.fasb.org//718/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 5.BB)", "Topic": "330", "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(04)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(v)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(l)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 14.C.Q3)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 14.D.1.Q5)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 14.D.2.Q6)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 14.D.3.Q2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r278": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "730", "URI": "https://asc.fasb.org//1943274/2147482916/730-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r279": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "https://asc.fasb.org//740/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-28", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.C)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "270", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r305": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(i)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(iii)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(iv)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(i)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "40", "SubTopic": "50", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481303/470-50-40-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r322": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "850", "URI": "https://asc.fasb.org//850/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "850", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "850", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "850", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "330", "Topic": "912", "URI": "https://asc.fasb.org//1943274/2147482105/912-330-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(27))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "40", "SubTopic": "50", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481303/470-50-40-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.9-05(b)(2))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(22))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r334": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8)(a))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r338": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(11))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(23))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column A))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column B))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column C))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column D))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column E))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r348": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column F))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column G))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column H))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column I))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column J))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column K))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r357": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r359": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(h)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "205", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)-(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(16)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(17))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r376": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(19))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(2)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r378": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(2)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r380": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r381": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r382": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(e))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(8))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r388": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(e))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-05(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-05(4))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Subparagraph": "(b)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r395": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r396": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(2)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(2)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(2)(e))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r402": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r407": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r408": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r409": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r410": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r411": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r412": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(9))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r413": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(1)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r415": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r416": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r417": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(c)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r418": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(e)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r419": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "985", "URI": "https://asc.fasb.org//1943274/2147481283/985-20-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r420": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r421": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r422": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r423": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r424": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r425": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r426": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r427": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r428": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r429": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r430": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r431": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r432": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r433": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r434": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(b)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r435": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(a)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r436": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "55", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r437": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Subparagraph": "(d)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r438": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r439": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r440": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r441": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r442": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "830", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r443": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "830", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r444": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r445": { "Name": "Form 10-K", "Number": "249", "Publisher": "SEC", "Section": "310", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r446": { "Name": "Form 20-F", "Number": "249", "Publisher": "SEC", "Section": "220", "Subsection": "f", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r447": { "Name": "Form 40-F", "Number": "249", "Publisher": "SEC", "Section": "240", "Subsection": "f", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r448": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r449": { "Name": "Regulation S-K", "Number": "229", "Publisher": "SEC", "Section": "402", "Subsection": "w", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r450": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r451": { "Name": "Securities Act", "Number": "230", "Publisher": "SEC", "Section": "405", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r452": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r453": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r454": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r455": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483504/205-10-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r456": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(17))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r457": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r458": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r459": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(8))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r460": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r461": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r462": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r463": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r464": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r465": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r466": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r467": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r468": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r469": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r470": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//310-10/tableOfContent", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r471": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r472": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "320", "URI": "https://asc.fasb.org//320/tableOfContent", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r473": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r474": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r475": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r476": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r477": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r478": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r479": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r480": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r481": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r482": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r483": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r484": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r485": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r486": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r487": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r488": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "730", "Topic": "912", "URI": "https://asc.fasb.org//1943274/2147482517/912-730-25-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r489": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r490": { "Name": "Accounting Standards Codification", "Paragraph": "2B", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r491": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r492": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "205", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r493": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(18))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r494": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r495": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1,2)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.7(b))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.7)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.9)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r59": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "230", "URI": "https://asc.fasb.org//230/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r66": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "235", "URI": "https://asc.fasb.org//235/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r68": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "360", "URI": "https://asc.fasb.org//360/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r70": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "https://asc.fasb.org//450/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r72": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "https://asc.fasb.org//470/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r73": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "505", "URI": "https://asc.fasb.org//505/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r75": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "30", "Topic": "505", "URI": "https://asc.fasb.org//505-30/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r81": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "825", "URI": "https://asc.fasb.org//825/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(16))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(4))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(5))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r89": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "405", "Topic": "954", "URI": "https://asc.fasb.org//954-405/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "740", "Topic": "980", "URI": "https://asc.fasb.org//1943274/2147481974/980-740-25-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "25", "SubTopic": "740", "Topic": "980", "URI": "https://asc.fasb.org//1943274/2147481974/980-740-25-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "11B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-11B", "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-15", "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef" }, "r94": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-6", "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3)(c)(2))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3)(c)(3))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3)(c)(4))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Topic": "912", "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-2", "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef" } }, "version": "2.2" } ZIP 107 0001376474-23-000411-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001376474-23-000411-xbrl.zip M4$L#!!0 ( ,(U#U>G[B:+;OX "7V"@ 1 =&%Y9"TR,#(S,#4S,2YH M=&WLO6E7XTBV*/K]_@J]U5D-K&<;RP.8S*J\BR3):KIS.D!UG[IWO766+(6Q M*F7)I0%P_?JWAXA0R);!!H_@.W0EMAR*V+'G\>?_?3\(K%L1)WX4_K)GU^I[ ME@C=R//#FU_VLJ3J)*[O[UE)ZH2>$T2A^&4OC/;^]_O_]7,_A5_"K\/DE[U^ MF@[?'A[>W=W5[IJU*+XYM$].3@[O\9D]?NCM?3<._,*C^ D]W*C7FX=^B"]Q MA7K>$_G3]&0BW-I-='L(7\ O&DW]8!I7T]%0).6+P]>'^#7^IE&M-ZM-6_T2 MSG?C.$/]NYZ3=.DW\HO":Y(XG7P0/BP\U/,#_5#JC((H]L2M[XJDYD8#>K+> MSM\_#SCP6V\,(O+AHT/^4B^;1*V&??S0XOR$_L']M&=MW$C@A^*_/UQ^SA]/ MRY_/'SU,8R=,>E$\<%+ +%RI7:TWJHTC8Y$JW&AA(77#CZW3,>\PC:<>].00 MOE4/PI(_'@ )?MUUDAS>$\\7,!N_U8\F?MF#L*Q]^-]?/E^Y?3%PJOI"D7:$ MX\%__I]JU?H>1U[F"L_JCBSAW3@Q0"76*&-E"5"B=?[QU]/+)/-38251+[US M8E&Q3KU;7,^SSJ+!,$M%;%V$871+@$HJ\(=;J\!WPU'LW_13:__LP((M=:J( MA=;__?[]/_7VR9=/O__S]%___MC\;%]^OOK_:A;NG[9!;Z,M5*NPU=1/ _'^ M^O3WS]\NK8_G_[XX.[^R+KZ>657K$]R.9=>K_[*NSL\LH #8\<^'_(/_]?- MI([E1F$J0L":5-RGA\@5WEEN'UXBTE]^N_Y4[>Q9"+^J^#/S;W_9.^/'J]= MMGO6(:QR*"'6C;P1_,?S;X$EC0+@1IZ?# -G]#8$WH2@]>_?XK,BEO_V/4^$ M_&]XY&LV$+'O6J$SP-\*_^UY"#L=G<'K8B>X"#UQ_R\QVN,=WZ>7HO?+WL=& MHWY4M_]'$:_O_;+7<]S4WGM?Q_]S>#D3H#?"=@7,SVVN:>^][3I"(V5_R,7*S M0>%(UH^]6W?X=O(F^-][;WWGWZ??-OA&,;$HB?@KH 8X6\D M^;<)$3.L;1$+>.O$;APA'L["6.@7_1@W!L+!JRIY4+M///4UBJI?]A)_, S$ MWJ'<4V$?]'<29;'\\ZT\,!UN[,#TO2 4IW_Z'O[1\X%9T$E$*?\]N_C7&&H; M/Z0MF6L."?CT3^!P<8JX_)Z%[5&UCFAJ?,[[\=0S38W*^E-:7J]YJ(\W<=2+ M]9R1^7@ZMGOUZ1R[;]AVL[[&W3>JMEUMUI^X^V:]8[?7"_M.U6X_%?9KQIS& M,S#G8\-F$E_+(0HD;L] XHUGD3B=\7^NTO,_4/&9OGM7X^+'W%>P*HW,7R$>H"$&H'Y5F@;#^+;$W)O /V!F@0 M14ZZNY*-X/@[\EB)\CD&Y5//^^[XWD5XY@RW#\RP>Q_='F )JD/XJ1-LMI#= M@7Q=$G<'^0?\ MC9?-NRO:7 F]NYM5R&E[S;'\YW!>A3-?G#_.LB2MXO]$ Q%O@C*7Q.E;V%<4 MZTTQ8O3\X*W^:+-0H;$#YN(TL2F8"4H[OG@C6-E,4-4;W@IO" M)GY+_5:=]<>G]](C-Y!=R6X^R'S ZQ6OA@,X^B6_%D;Q2?F@7;9638;MW?07R?N?W'+^ MOT7?=X/MA;C:_V;C^ [*J[(_7X(&.7Z.S<;M'=17A^N?;C^,/OM.]RQPDD0' M^SZ*893X&P7Y3XX?_]L),L'[1??6B#8]&?E3N]]$+-_!>YWX_5W$212&(CB+ MDFV#=G'OFX_;.UBO#J^_I7T1;Q>(:RN#]D27@E;JI7:9RY M8-(ZP09!6&>??L 6AR))KG@) \+YOE] OO;N,M:7F3V5,DY%'"5#QQ4?10]@ M(K;K2L9W_X*H9'3[?D%4LKN,]5-&WXG%!R<1'M;/ M "RH_3)]FIQF:?^WT!,QE$O;O[%T[8 MC3I.VG@MEZM.NR/LW=V_<,)NPG%;K^9RU6EWA+V[^Q=.V+"L??QJ+E>==D?8 MN[M_X81]4D?#X[5NVM=[[6NN(?TPF]]EU[T0LEY=[&ODZ!WR44OEJ1W M5_M:B7J76O2"R7IWN:^8L'>I12^8L'>7^WH)>Y=:](()>W>YKY>P=ZE%+YBP M=Y?[>@E[EUKT@@E[=[FOE[!WJ44OF+!WE_MJ"?N8@?$J;EZ>]740]>YB-Y2@ ML]#GN_^>Q;+KVH#F?XOWN''X(?P3?Z0^I17P5\6?_W;UL?AK/XE:#?OX+7PQ MP\\9[F7O3^B;67:0>-_AKO!Q7L?S;P%+]$-?LX&(G32*Y]IF\5?XR4<11@,_ MG%CIT>T6?WAH;- XS_W;6 2$BDG?'UI.[,914*0*?%$MBF\. %*5AE(H]*_##'Y)H<"EZR2][N.#1GI5& M_.=76+:Q=[AY>SS>@CUVBGML;N(>3[9@CW:]N,G61F[2WH9--HJ;;&_D)IO; ML,E6<9-'&[G)]C9L8TMD'F-,9D MSLE&;K*Y#9ML;0,/:K2W8I?C4L?>R%V.2YW-W&5G*W9Y4KK+0]IF$F6Q*Q+Y M=U\X'KF8#L%8A__ _UI).L(=#)SXQ@^K@>BE;]NM8?KNSO?2_MMVHS%,]][_ M/%3/]:(P?6O7AZEU[0]$8GT5=]9E-'#"=[S"V_H[-PJB^.W?R,-5?X>^F:H3 M^#?A6U>$*O%]?G'ZVKZ]/K\ZN?#[OO?SXP(;](HK%@?:VLT3B.D/X51IG8N^]7:_^BW H7_7]DF#W][_91_5WSUP8H)$, MG=#\>;7G#/Q@]/;+E?5KE/9]%YYY#$RG89@YP:481G'Z,+AZ43QPTE_V?#A/ M(MRWW2@*NDX01&DWNL=#G1RWCMY-@A!WB3<'"/KUM]//UN7Y]V^7U];WWRZO M?CO]>FU=?[, BZ\!52V[:7V[M.SVOG=@??MD7?_CW#(07"/WZ=DU?FV?-%L+ MN*$%W8=YT7]D2>KW1GOO/T6QE?:%U?,!UP)K))S8$J$GO,?Q]SMY@,_9*3SS MS;SUL+L_/-OWG!&^3H1[[[\X(ZMI5RRL9)ZX'Q.)\%ZK_GVU[WN>"-\2\]W3 M5[AX0HCB+:>N[N,$=AT[8>*C+%T4D;5*B*QK$MKUY>G7JPNBJ!=*;#EEI1J\ M%L=,2'FP_D?_'U =C+_F?Z^I-S3L(U @&W"(059A0*FXI? MYQ2 ^@2/?J4GYY%U\,)JLW72F<2CS:3&4EW I,\NZ8[5;I2FT>"M/;RWDBCP M/2NGYH?!>"EN_ 11*?T*W\P#RNO3WS\#&7T\__?%&9#-Q=>S:1)P\2#8/[\' M#DV'L:*>%>M#6$YB)4/A8L#5L_S0\M/$^I7K*PW.JU::PGJ^B)1Z2)THQ@8/<>G M<=C.692%:3PZB[S9Y3@Q_P1_C8.3\1THR/%POT?QCP=1[##U'@&C?;+Y8+QV M[B]DSH!+H)R?R]E'U?KQR?%QY^1Q>!VF:#6N"P'W"4_ +8BG%II_9'%?N+Y M+HFUJ+<$U@%,P4!3>G-\XX3^7_3WP9HQ:?^B=EF[JEGG@V$0C<0RM$2KB%W6 MUZAV,($/A\2Y5NI.6"I[50_UA7_3AVW9M:,V+_$@TI\T-YY=G'I>+))$_N>S M'PI['E9Q4K>NG1%LV/H8^[=BG%]4'E/#Y'O/X)_?XNOH+ISGY5_!*NA;UU'H MW#FAYSSUY<1#OL7?05X <2]+U%CSRII.>UN0YWL$4 C^CS]\7%*/"9J6W:C/ M+F-*J'!M1+@_%UU]A'/'/F76S0,?^6O448&-Y<3"@76]"1YO,7PEE.=B+].)" 7"*;QQ7HYR M;!]-D,-T,? Y'V586,9C' MPRQ.,C2:T\B")T@;M!O[W0/D5^AB.G73M^L@.[O=K!VW%\_8-L0E<^VG ?DM MA./V+3=PDF1>W:+>J=DO&$"Q0RSK:C3H1L'<-GZ[=O)B0?-5NKP(=<2]V\>< M?@L(]Z[OPRC]"X%W)6%W0:";SU,S2\3L:/6:[3QX%$8I?/)GYB,[ BY$T<:8 M8M-).7MJHG]8_T4!XYQ9U8J&T\(1:X,QZM]1D(6I$U,4-D[6B4DK9U%W?4&A MBC'\VKQ< 5IRW;#HOR7Q-J']7KP_Y,,5,*D'V'T4R4)I'TG'=_[G9-,$@;] M6)[A -ALZ%G[#3YC5PC IZS[!YP GZ='X4>X"[D.)H DM G:I).DUDG=\IQ1 M4BO!T-W_KOY_ER8)5\& SK(X!@SCQ") .PP!9'/QH=\G_:[/89TY#T8&M\FB M<0K_0KH&DA[X:0I,0 1 VG$4P@)!,++$K8A'U@7JF(Y+KNN/3NI8GUB %MA; MOH8I44VU[%+<9)QC;5U5KZU]/.[QNT:S4=-ZFT])&T-,VE@VK^/]$GL;1L"E M%"\3R4%MC3)]9DHP+@7O1!+&1E%"7P=^ALZ-J'9CX?RH.CW8]ULGN .1\([M M*8"?C PUP<[M.NZ/FSC*0J\JH7I2Q_^K@-V!>\ ZC?Q^0/Z(JEQ!/X8.^(TP M*N6*>]!5U6P=/S<.N/?^ M<_DE6O,3_@K#EWOO3Q>[X1F=I N!^ P9KO$9'.PFBD?S)35PCQ8"ARL7H-2& M,>9 ;YC,C"NP+E6EEOZ55C[CA9=39?#R0L(7O0>D/N8-S.A70[N!K 7@)^A@ Y4Z2UA7 M@$O@DI^24@50.O!=P0A??N?#JQ$I0MAVA*1]ZR?$ST,G='TG0+&$N<3X,+8* M\YS82RS,VO*]::&%YKYS4"K_G^RP?3;,K07=76'K\KM&PSZW/SW%ZI,>*\E0 M,9:(NI8#-ASFQB$L :R81P]; OT=/3M__UNG81^_ PTU28!1XD<*U*+7$V2- MA#+Q"7_IHY$2PCTB;<918$5@4!K7F_/R#/N8Z4MLU5M&.L*5$W<=6+;Z[3X0 M(W*([=MMZ[?:%=9@'C>.,'?A ^>GU*&GKH!\ \#B7I^/&#S$&S*H8,/ =Y1 M2,&C'3N9YZ=R7[7''"F,'<]A:!=N+S[%5T;Q:0[X3X%SLW1^MGY6]" Z]ZPD M=X;"1N@)<4_5YG_SP*AVDY[C!,[WM'F_RP&07V+B*RW(,6Q24CRHM@K]Q"8&JUZS:Y_ MK-I <(M#VP6+W/6Y;I*^" *M[NZ7A*D++@I@50>+"XTLPA3"_2]?J5Y$(3 .I!PV4,.1 ^ZFTP'8XED+HKN[P"C<4D4>!5+ MQN<<8 :@VEE=WV/E+_F!XI46@QV33[RP#J5=R+/0NHIY[K#:SOO%.A>?B8*RD!HOD)J]6E&6DO6$N*9R M",ONBG*'!%VPO/6$$IGXSD^SFPSNTFYS7X6WUF-WPLE0E O%[7._Y?L8OZ1F MO8,M /4ER7Z[3[JG9J7=L"O-X^-IUY0')L8#$'5IK^LP@MW"< /^WT+(81$Y M6XT7$24I.UFQ1+R"->(;0B!EN_WX[>RW+^=?KZF6_=OE]V^7I]C(Z,/OUN7Y MI_/+\Z]GYTMN$[#:+/MFXV0!/NRYTB*5Z3%WOGOKV5M]+!C[Z-X_ :.QL%>2 M=:FD[M.=N8L _9S.W.>#L.25JSSO]SBZ'UE7RK!:+^Y\!SW%NKBX *8&VTD0 M,>S6:T&$1W+NUNLAG]8^[=OE%R;?BZ\?S_\[[^BSY CNX]';]MSW485%W@*8 MU)^2:34F6_3 P;^?7EY;%\9Y'\60XSEO8/;MS(>IS?K19FRD92_KALJD$E[9 MK^=C%S:MA'J]Z#4?&)>'5\B#+;NV 8A5YC##;SY]>O>@AO'I$_S6L?HQ&CU_ M<[!+,E9R_+)W!N;L#S3O;R(V\L$*AMWX+CNA_41ZH6OZC(128 3)%B=H^ !K M4D%M )(S;]N+_ID*P50ZY'64^3IFG+X@T&PM'K$L_^6%]2X> MBD<[\GPJ>7YX0>397#AB_19BL^T XV]@?/9Z%OHS*5;[2FAU\2#=T>I3:;7Q M@DBUM7"\^AY'0Q%CJLAKH8+HLWVPO'JL[AQ @LHU!54P_5J M2'3QH-R1Z%-)M/6"2/1HX7CUQ0\QR[8GTI'UT4_<(,+!L*^&4!)E &*8-/*( M1.Z/?A1@U<87K!F)$\H@Y!9#UO"Z$N'J G.T)](J$>OR!"/5F"F%:UF"";T5;+ M>((6RMY3HZXHI^.S*/2X!A>?N11)%G"1V[>AX*5?C3Q>_'7LR/S)9/Z2<@/L M^L(QZ[^P+L_'>N!;090+'P3J;\-)8YUVHRRUI/J.*06OA9J7 '1[IU\_E9X[ M+XF<%Y]$ELOCJ[Q"&,GZ*AL. _K;B4>O2NE> I1W]/MD^CUY2?2[^"RS,^HC M@QU-B&I! #LWL9!T_!_L8W/*748<:B$1JC]5M:]A5VO9_6H(??'7L2/TIQ/Z MBU*\%Y^C=L:MBE@Z4]J"]YJ"H4N Z(Y8GTZL+RE%UUY\TMHW:L-R$7(W /C\ MU9#IXF&Y762:9RWLTA9V:0LO6 38]9V;ZH*& M2MR9G/LNK%^Q^QD:8J_']EH\P+=+3FP6+;^H6N7%HU9.P&=&'\0=K>YH=0VT M^I)*KI: 6C*=;V1]NPM!TO;](285G(DX=6"A#R(4((+1X]H?@TT_Y)*N9: 6HJZB7 QD?=ZR/LEE8$M ;6^QW[H^D.0V4;T\I,0,E-!Q+=@5.]$\VNA7>UB M_??.P[KSL+Y@L?"2*L/LQ5>SGM_W_:XO\]5*$MFL*[:*O0S(L'L;V M+I-\)Q%V$F']*,42X255"]J++T/->Z)?90,XQ^BU,/[%@[+1>!KCAT/@3W[9 M:^P]U/2[N30H[[CO4KBOOM?F0_?::LX]%79%?*=;H)-M',OW?MES;(2' M\[RI,UW5\EV.CC.ZFS_[&$N ]A]9DOJ]$8_EDC/U:!2;'[HJ*4E/%25[&F.H M^(;?H_@'EI'\,PM&5J-1L>R3=IL,<*!P$=X .NL?>B*!EU7@O[X=VW3HR#3:UT-.1&+P/'[<-UQ*,*C8L;ZD!ODL89;251%W<1 M6HXGZ]*!C>6[504SB0AHR*JX]Q/:]C"./%C$0EI+*G1P!5'2:^G=+./*%S6PM&NXY;_+?6\1MAMXF.B+Q3F9 MR&$I98 &DB;^P ^<6-\,3T_M.[#5\"?!H. YS)24-7:9XXO#8: M8,Z O$UX/2#HQ(HXH-6V<,CG313[(GE'<^P"P.$KX2<#$*P? MG<%08'[AIR#S/=\%ZOF1P*N.6^\JUEGLA$QA%Z$'.XG1-?8AP]TFN$30JYYZ M!!G X2NBNU.DNRY]_]D'.L$8*9#_$'$?/ONWWV5)G;_X"Q.6IQ[BM$8Z-PX0 MS1QJ(2^/+S\'L>;?2C#A2.(@D#/_$E&$";,/X4DVH:^+I[43]!T11Z HN'Q0 M3_1$"*N8-V' 'GX6!-$=GI<'HK*)J"8.NL[0Z8**PH.=D4#'+[2XQYJUL=19 MNO(8UA1!C*P.3D[S0?.IZ0E/98S3_I^9\T-0_6#.,@E(L1C"/PG_ :!='*.8 M(J8-<1Z5A*R>Q2G_EB2HKF82>VEOR0!0 QCV?1H+Q'L>70N,UA 2B*S6'58Y M LG"&>R32J->1VKJ5X>H*-&MNG2G%7ES3&1VPZ*1CTX,E.__)04(8#&AA!0D M+,0(J2ICN(9S*$5,_F:?Z4N?)Z<\/Z>\+E,>G0RH_T;$R%\2107XIA(XF$>K M5SHG=1SR.=E!C9P4TAPMV M@!_^"!PO4,>\B9!3(4>@]\H?T)=IC(D9\"5*[*&F1V) CF9 8W=:D?-B)5LL M@*H,7?1>RZ$.EYV;+DC M-RCP&8DY/@Y3#ZV^<&Y'$W@A>:H'/#51[!)6SW"\ML-S=('UPU:0=HIZ"RL^ M6G6AGTC\-/4I1*1(E0AZ?J[5Y*S;,ZB?ELDWWAWQ[-U2GJJ RKJ,5,CDI-8$ M]IVPS,)N77$4PO70KZ,A@=Q*1@E-I0,.\0?W\X)%'#^N6)BI0V-_Z95PB;W4 MNE6[5=O78L:$&_ =UT^8,82,$PFZ0O<;T0J&08)8F/L]N(M&'GMSAF/0IA MPW=,T9&O]SXF.1TE46DUT&XE.DO^<>,D53A]C!HXJKX5"_GN#6,L)&\\1A)"P>X$\(F6Y]30)U%\6=8+;A$TI. X(Y(@(*X8T[X]133$ M*H(DFO-PN)^A;-PZ!GEM,.#A ))P"'P4N*S8.@4=V M5EZ3^]G,7$+B"51IY M'$2Q@<->GU*Y #=Y$SN@([#F-W!8"R=%MB F]947!#O3;X!6!B);>(-8?D-E M=83P))1ZN55X?1#<@I58>#]%:\DFY.3IP M3^JD4@G=,F%W7?!CX4%A)>:-J$'?.,AA"%BL(_3\F!0\$.\CTNBEG0@WACHG M?E3BJLME"[L9X6:PT[/QXZ)Y(KF\Y$R_79V..]S&-TJ\1$DDH9/MN!K88 MZ^S_=# B@@AP[?AW3F@Z#B:6IU6!P0$F9TEA6=*N& K ZE*LZJ2ZL41:WX @ MJ10OVN_'G:!!YI M;&J_B&+DIQEC3I'90+48;EIG[*NUP;&OE5,:6Q.Z[L3Z#6QH(+$_@/F=*;_Q M%GG3?;8E5"%-:I'Z+#$8S&8P,I'._BASB[,F##I>S]=&*;DHAD!&]_Z 8E%- MT$?WCW^J6$?Z_Q,MM>&?Z(% GGH+ELP!$@SJJ:S/HJAIU!O-J106%QW0^NUH M$9 V47!@^J2Q!XX[P1DJ(!R0/F/J8\SMV##$ TLI;RK"1!H^U.I8NI2U.W2[ MV"C&?^!F0%^O8'&5)] L8P[Z&:0\J'1;*AL42F/=9V(=@:) I[3$_=#G*&!J MN U3>AF6I+ W;"0_NN\UJ@ @.D@ 2YW7>GG1NN$U,0[R8DY1_]O&1* M1#'[\V)GB"Y9$?@4[4/79LX!$)=OHLA+M/B3-WY,-@HHG* 1"-K6 MY-*:M2 V8E@>59$O8%$U[0JQ0UH$_M%0F_@:8:"%'U0^@I3PP2$5!['=4P]_ MY&BX1O?)]2L&2.%&+1+O "I7^$-R/I"$A\51+T=_98=]#G D\6.",^XE>0AC M/$+^,1.<;B2LVPB+/P.?_;JF"8%^?&5T'HX;G!7^%[)W>7+ES\SHJJ5;EWV; M,G0#O_B#XF/L87559%/&";0K?R+DM1GBG,C]JY!G^C6WDD]1Y-XZ)! GH_LH M+56QW8;K)M0LT<$]=T4*2!46M'A)0J"4>&07&GX"C(VE:,[GJHPKUU*.;AG$ M(+0#$O%#CJPXK(93"$3:_^7OT%Y]O4=<]0;S6@CA2%VF ^\ 1<&Q>B>(Q&@ M*':=Q,^S5::] P-JJ(Z0,T[[6!(\$B!L16D[>@>LO'11.>$8(E*@/)SP*MHI MH]LD=(&^!7HLV2PAAYY3L$Q*=9^-UW78W 7@.#%RJW86$6GLRO8JQZ3)L-N];$,)L[H(O>6RG.*3> 8 MJ5VF-YZ<8V$H*4'[7'$G:X^4NQ83[ M;Z'6WLM":8[G]H44,B4$*C=D2F9R6QO0T-M+1:*RU\H.]4F]Q4\P$/"H0!X# M__V0GWUC5^HGQQ3]QR??G)RR>M1QE3^>&'P7!:D('8K@H^GL1<-4Y(]+I= #7*M63Y2*CHJ6V(@XM@LCG"F+.)\HTLY#D[. MN60+X\]C#A=3#X%O@'UF0T<&2>307 39/X034!OXU-K_^Y]9E+[[=O6/4_[7 M@09JG 5B\NX!5(,LN"$/#-D<%&91Z@!P/C!O_*1/(1?,S)):>J[!&^YN3 ^! MVXA&0DC;RA]@G Y88RA-EEL_4F]XO2R]99BX] 0/P[ 8&,$-3UB+^!E7> M5%B<(BH1THWBF-F8Y,@^)TQ(Z1.B$=3+\+/2J $+6 HSP+\QV@K_!B$M9')S MHF*>DEUR8A)PWX0U\;[S%T 7VW F5D-M+4AKI (AG MB/YZ\8V*++5?8&1)%BQ69_8I;%!%4I[[Z_0NTJ>PF$4$]LL M)F%POIKTQS'_OU597W[>;#]_AH(TR$(! (MUOLG[:2[P?CZH^_DM!%X0!;>< M%=$C7D&.R8VZK*^1+GKI!F*1"L<#Q7JMQ<%;.[^_QRC$Y0#P38'O8VI2GOR& M"-]S7%6Z$J$=,#*CIQBO\.\MQXVYA.,:3(0[5*NMBR3@C$7K*]!;/_^FDA?[ MJ2QXI,38QYP($$.]*,,B K@EZ>=!6LO\P--50)@9Y'A_."YY"]57IKPIWSX% M,S@SU.$:$)D//PPP?+-?/%>KTJK7K>3/#'?8$R(] $')7OJ'?F8W*^W)WQ$D MN.# 45NB6$+QQ^R&,7Y;!(U#*I_^?457*L+C -=A-AC2/\?M6;A0Z0.6TED# MZQL6-HR#DFN8&L7-1$"2*M/(21(QZ ;2VVUNJ69=(T_4*Z$;&-.Y+-1W^\*A MHHU;02!^K-TTT0?4I3#W>?[Q,.WCJ:=CG?0F'0)[.2A,(BA-8([J&BMCQN M6&4JRHM]\&9 4Z5 C2?$L-J/ F%YL<_YUD3/61Q*JY+8W#CN*CSDG&\_G_> M&SF!8"_7E[\#WWEW;7UPPA_3#"7ZN5$FP+\EZ[W")!8QJW,XE0C0&PC!I/WQ MGU+ /4O)\:5B=7F-/G*YD+@\%D<& E/BL1H6*..&A$PX4J&(,5#D',2@1%-E MOG%B3[EP$"6*9Q&:N1^,!VA6CG?H"A\%7D*>SV_+,&?I(IO HT&(,6R0<7"JJ"@9MW6K/91H;'0+7(>UPGD@9)LB%9=VI?=?7B2)2ZW M__7W Y['8'W^?*975"TY/'$/LK]F';7;1_;Q8:/>L*W]J]H9"-ZOM=]KL)O: M00$BIW0B!9"Y/9K/O"[8QZF,?#O4]@@-@Y "9EU,Z+H20T!;+(Y"'QZ>QNP^ M O]OP.%9"MRA\+8\4G-.P<@(K,9)Q8@4EUY5V345X$.@5N!!B\DU'@3#(0*F MS(89)>]B!6D5#9S"<[E:;*S\07ZHD5'I:,"\];9.;T684?*!LC(K=)$5%JE@ MN,3T$\N%XP_R8I-^<0,R/EU9$-H5SG'%:^RT:BD M0D"P*B@/+.0T-"789 ($!MBIET@DSS08P ,BD/5O44^^UE)UA;[,8C.Z#I"J MII*.%-0KF!Z$>MR0\H;8C2;-RI3=8737*%[)++[Z<(%((O]FWG* .8TLTV6. M,YW8! $?WM,'D;INA8I"E:-.%0*F447](!AAQ9](R <>1HA1>"Q=\%T!BDFI MCLN1N<0 E%NL,<; 2L"->G #N&]Y.KVT"?E\8P7X*'/@+9AR!T:*X*$(*:=! MR$KU=]9^]\ H)C_DPG:JY20%"+3';-"E.B,+@'YTY\",(VL_]?Z M5Q:G?QU@#BY[8*>@D*3EFG5*=*R/R)N: C?),S R : G9U$!&_P:2!RZ5\+@>X-'DP249 <6)*54-A7%F8+'W+*GU%@M?_+7^U(3RJORS V8 M*03$?51W&&Z\\0-#4,R6*R9G@0\$&-UFCQ'FW17+D _ZLZ2/ON$!R-*@8G1W M47[9BA5'44];^%J;PM0!E!H5+6/PUZ$+0AF8BYOQI*,[X"5))6^)P ZF.^6P MUW)F&O!,II1$9"DDQ1SIJ5;#F)+ACC.J\4SK'&'0!\O(81]9__83%U'LHZP. M5N:-$AK__O@QT5HD94-0O<-8AT+RZ5QG(64S)HGL;J47N?[R4:_!%Y-GZ:,R M)-UE;MYH@#.F'=<%$*K$CC&$M#PN@+CS$=*W9$AK#R!W1FR71>BQ% +[R+!L ME0A)_[1.P^0.V;$A2+2@*;VV>2WWY[$4PV>4TFZ&!M-(C.1 /AM ELJK,0-% MF: %:ITN(_.8'&5#()E@]798^EXJM>64]A6K3P5[X\&.N2@$D/B^JR(3B4P\ M3Q!O_".@LC1-3&H=T .R"Y6N463>1>EX$_"HF #1OO/<9/CH<]:;6NHJ&V)K M-7@$F(H1\3O#$4OH<,)"9)8YW6N+>@VJOZGMN>D0$W'$:H M^WK6/["'TVGHQ;#T/VO6=^'^J)!=DE)T_@_YT_+]P$JR(0R2M@16'W/MV)3B M^@1*-QUF*;%UY<(D>,7D#%6-Z+A98T+N,8Q?))D^P:JE\S^!76$(4K*(L4,B MD'A_S!FD,P!]I8&::()G_(9(IYVZ@T@GW\H4+TUG#Z_ <429,,$YW6.(9Q#UOIELI'G>@6P/YLF<1@E^K!8-O009Q6EV@[W8FG4C M#5T%)+#57$9[RF/%]*-O;AJA_\26F5!LKZE8L2];C] 2&"#$NN0H\4K8QD34;T5?*R=B5 M?1$DUJA4IVY;%/E3T9#=!01 M-LI2#(WV1;=3P9SAG""7>L%% V$TT\"O Y_;*=.#L@^([.95-4 >2RL.?< K-%GA=EJ4MG"_,#U0JQS:.EQC9;%,BTX$_K"RJ[LK '@^I! ME)!#?*,BG3.M7)HYNAE^Q^/7['><:T#'"B=T'"\NZ;?-]"1?T@55&*N>B>5= MBALLN' H:^6,8W+GP'@QAU.-$;]*(_<'=H8!H<(6/!L4%VBOQ5K'(]6'?VM= M"5 W_0W++B: R+-?Y)KQYFQPAE0O>45T)9AKZ7%V,W+SKZ=7'T__RU)Y0O*@ M4I1\5462IT:@&]O>Z(L"1=P)\&I/V3$,%_]?693RD[*(DE^ARB@3V@27T!NA ME60TZ$:@;9S^_M&4U-21FLOR^PJ2R1Z<^X; R-E8*MC"\)G"&B7BK_H'/Q8]-Y&K5 M[/9\([GF/]&C<\%LNU5KK&H;LTUYLQMV;8$[,D3+)\9BQ.IY9GLW&LO8SW, M-.=,P;G!TQ@#CQK?MT/IV;?1MFMSCFN=\9K^ ?Q]+O2MUSIKAT;K9$DT_3FZ MVTQ:?@ SYIS$N"2\L->/%4N"Q"1.[!@8;N.3'RG8F_6*YE[[A6 M+L8ZG1WO&C<:,5^ROR',J]&L'9_LF!>0;;O6W#$O="*T=LQ+.A".VQ/,ZY#" M53/%MF0:1+OQ3+I=9 SY'Q0+W_1Q *=3>B?F,RIUPK5G-M^PDKXC^]$4HLU8 MU]VLM!OU2JO5T(E1^6JR@)$3!4J:ADXLUJH?Y1,TS6:?^9KY5AY8"PL ^B*@ MJL4DC;$ "2LP'N\T2EFHL4GBEGUAR4)(36HV* M7:]OTI0+K'GP1.AM.H9^C2S72?HT"9O ZJF-&]4UGG #!_, O7P"2^#(,8QF MA_FR^\9&:#(I,N61[$E?=WZ-L-Q&\+ :Z@)+\[AP'C66E%&O(IE+$0KA;7"+ M()[?P,-XOL.)MR\YCGF5T2.":A+L3F6,[G7GAX]4\4'3260_=H>9AO6:7@<%Z[:IFK^IXH,L+,("JZIM=-,/1]3%"E]2CC9OJ3!\Q>'^HFQ>_B\IK UE'P3!0HZC5D3W1\WFFD.R0 MA&W>L",9#]<#RJ\B@!.XH[0/H+$/&X!9!UQ<'HJ[8*1DFSY/$8^N!+42.L6R M)!_._IT&HV+^,-[6]UC O<4J]4V!7O]H['O=5AX0)9_9S'<-;W[3!E,62]"I M?04-@BHY [=^Q-WF#6OIWITT10ABXG'H<8 MZ$49QN(>"3'1 \.*\GX:P#>7$T_-X),P*3FV.><[/_X$"F):.@HP22&N'[O9 M0(\[+U(K]=KW>]:^?X 8"3PFT@S,L^SV3SHM_4'%JH*/[?OF(M2+A3 ).WX2 MS2+GN,?B\!LY,XTNDD:IS_,2_Z#8VB=G\+KHT]EM#?5"DY5S8C\-0\96%Z0_]OUA M^;RH1Z9%&=J,(=J9 &DLHS"9+M?P=9Y8W;E4 J&U?!HK]K:*UNX[T\:C#V8K M#9@EW?AIJL]"MKA$[4B*L5AH3C'6H="1^SED]*&YL*:XH27CM7YHW7^MBZ1160UFU[ MHRHB.KN*B!F&4C#QX;6+,.$T;N)1BTVN7X.T[D78]YFL3+\U>%(;/$H[ XZU\0QI<[8? U6RU:D>/[N[=6*7[HO<_ M-V%/!J6>A!W+.L^"/"R[99:^#*'8&6@4-U$\6NBF9F4,:X[#G'1JQVNG_TW" MB3+5[&L>',AKUW@R@W)*8/L+:6*3]6D&-Z*A]"?=.7',S0!H ""96,LH'?7? M[SL'/Q_ZLR? +UM&+0!3.RX>ICUS]?TAQ$EY53GS/<5+[!A_$S.4C9O?% M(:;=;&*&QUHQ\[&LA.6SPU@,9(!"]_IY[H##LG=S7P^*G"'KI5;\['*8;@_M MBWO5;:2PX5[ Y6H3V:0#4(KYYP'2T)_=QS]E18[9OHTCS;/[CF?"F&:UW/+ M;AD)XI&*RK]]O6K5NAG3)D""Q?8.$EI.+'\74UA*JUD[>IHWY7ELHU&W&S(( M\FVH#?MG0J5F9TE:(>X\'%K*0O7:YWV4A;NU.K'2UAX M"Y%MP<)=0:*Z!.ANRYH@B1?,?*?BU]-#"85;4EU+$4F;]P_\8* MU]V2>UN."-U"0"R)O6\,(VK4ZRWK?# ,HI$0TD[1C;0I2,9;-?]WWS[8JCLL MAKJ6[X==,CNI;A7PB]&;%^ $WR[PC\4H7@#\&_91I7DT6>[#@13V/F?-4:HM5 MKM2Y7DY)EG/N2JI/RKH?2#55G8^*9_,$F1[-YN$TEF(=55GGBK66%\D1$9V] M^4=$+*P:"P=+Z/X-5T*F[^"\O9 '+SJI\\3A#QM>CF4V&/@S@R][F,)$E=?) M ?#Q7),.U>(TX,5.0Y439BWCZVS3Y<$O>-WC09(F?I^[P#8#]<5LL^Y, )) M3BT:'^NFGZ$B+/@A7LP3:DJ6A:,G*\#1'"&/%4)^T1/]@&_AX* L2=0 M]/0 M"4:)3PPBQ]@8!P4H+ AG M.A;%=T[L58,HHH8>B8*),7(KIR5J#"))R#JNR)67@DIRCSRV.A%W/(=1OM^N M5__%=<1ZZ!O."O<3.C\\D48\=AM'>K*DY/4>.*Y\H637^G,<^DP/_'P,$H%M2 J?@PJ"$*T M^"&VCW&=)"U^:LRAFWAAD@W$V-,)?F;@@GS?$/;LXYA@^15-BO?3+!4/8#0N M0&(&+XC'(E/@TKK)',PG%Y1Q+O-U 1$)[PU=!^G06,T/;Z/@EF?)1G%2L6(_ M^:%:/"14;M'B PXA><96Y/*D44YPY]ICUPEEG;T>&,HT00-RJ6F JHK' M6>&Q'%S(Z "XJ!X'@G=!!^0T8<+#28*^+-\F[4&.)JS@Q$',N,<9D7" 7H#3 M[AT]S?5&A#0P474\W[5U$12!$(/'@=F[CH 7S\=O<,SQ()*J"E2 MG>:,!JL*>!W8,T[)>X5 M$&[="=#JL8B5QFMJW!B@+I2/0N1;!]: 53E=,8J*4Q3)E*#&.>K2SG <[Y^9 M''X.J"<2ZOW K(/G' 8.IY=G- _-ZW.(#6T-^[\M5 M*?6=;1QNH^&'8]!B0I"(107_7'K,\WO3J*(&?_,"=-W4N0BN)D=/8N=FWQ $ M'U\5_K9(3ZB#=A'--JHN_V17E_^X:7;*4R;5B+K##401/ M^)*EG2L1N='J[0P.$A23Z&BFIA0]K8X51:36>$8("!P[QQH4<(HA]9FCCB_8 MRI X#%';;[6KFI(*2/>N*[CG6 Y18+[PMF$@"FR%%]574:3JTAU*>RY!EJIF MD@.7&&!#FER7L4AS&.:>E3\R[X87(-[N<$L9FF4MA^NR20KTG&\OF7%)! ^O MR';FP-2(G2*VF2"12%913(9[E:'^S&#^"L"W;*5G7V6# =HMV @.+IE:3L'A M2["6GZ^4:<^B>+V/8D3-.DV,3='\0>"F66P\/8P2%K+$X[4R'VEE7DDZ0X?1 MX(*]A1KVLCJ*51[!4[0-YDS/HLYQ8SQB7HLZ8A'DQ+@5L,T)TGK$K[YEDA/& M@I33)JMG\U>2 B8U-8D^ &P/J2Y'B $V(B,UK"M%-RJ5?N0EIE3CX<<\>M[T M6TS:Z69O3K,#AZO85PEFF7A.;TH,Q#'P%_%$@R"3V)<^A3ZWK/68))X$C%!7 M@(G=#<1V'> ;4*(Q4AO;E5"O+*-N-M9'2QASD7J5EIV@'J-1"(=RPY>2"P8-KT6^>T?M3#G='53_XANB9^'$:+-+B0<0 #68!(E#GGK& M>)QD?D=G)TT/U4&?U.8$#(B!G U._1XE >.A,^X5%5*3R2RG2R1&[JT9)K!U MW:O5H;YPW%W2A&%(!LP@"R4G2_*NAL;EL1&JA=8'"3(IY6BP>L"NYPK!2DJ: M1P_<=[B[IQ]E23#BYE3Y69&RKYL#%'M_P$0 /;BK$Q8YAP MISB^!K(1S5O@+7$WT)(MU0I9?9,'!8) X\K 'X:W@738FXNX&QJ(44AP5AB# M+1%ZV,)(1E: )%*!3*]7BC]XM#*X3:!3"7E(WJJ0A@%G:D4%T6(H#4EA6]R- M%64!6F\TXU?> ??N,V,[6'#L!/!AWI6Y7FM2&T >-=Q3G?DF=R/)4%UH.;8D MAMT-QW[3.,$D%B3_PC:(QM_81R5?-DK(7+OWF%U,?3\I@%JW*%J)(7!-*P6[ M_!9E8(B]1)4-KVZ@[)+DJ;=,GEV$J,\\OSW,NK:-TBB7'-3*.KJ3[2MEDP@W M2LB/%@H, ,%"?]%]47P5M%7S*:I)N)=J30^G*%;]L"+_A7%3?&K+;OB+0_Y> MS6S8T>1K (+"AFV[21C1#'0D:H"JTN^(/&6G3>50"_R>J)(/CQPC]RYU+.Y) MJJDRU>0L@>X(U];O2G0O4!_TP*30T M178/Y;4D@\_M2U"I_R!V$%G)$/WOH8A0[,8L5K?L1@F@ODD!0^JVG 4@.K&8 M)D3SBLT0\E&2JA9U 5 B< 5Q/"J7)4"=%@C9VA[^4>4[8_I"^U(IVM_ -S MGX94B3%D)2JF=![K!(@R16D]4'I;CI9K53K7@RV+1O MW8PAYSD0Q)3P?^"ZP6P7>?-=PY>@KB/?V8027="BQOS\I3$=@"Z2'5I,QE0 P:. C%FKYDXNE MA,TC'9!"[J%M66(#THN3* Y*AIV.ATSV%3:L7B!C?DT*7M5;"1KE32101 M=<2:W-Y&11[L^E:&'IZ'@6M ^M."3\8(P/D):W2(SM(R1S1W6$]2*$73+V"I M$#Z^B2+/P"=EUFI\EYE6^)F:S" M)="S]>I__UNG81^_2PH6/C=PPRV!Y'.5 MVDD^#OWZ*>=@.:C)F;0 IO,)RIX."2Q/3C!-HV9=D_#\(Z*"9&HI%^N])TH3 M1I]R,'5!)Y'.4 :N"4Z6\]K7@R MLA"9JJ:&1N#@ +F\ M]F+GF]3A@0H'-%EUPF45,&O6=\7()K>@-6A_H'OK&^] ^UCYL13&J.0(8]OL M]>(;*8=3\D0!^3R"^!29]TD^,M,_5L*%%7*8!#..^T9&86XG$2!1+PU!+@0 MR= AQ3S+%]!]K(L1??J50)72Y8%*+**8M=27 YUGYN9>6N(IS'@MK1045&7]!N)H]/ M%L?&'DE]598*S0W+K4[^":95\-&DC!P()Z%\&W7R-,*4 'D:BE$AP3Z"!AM!P]1IB*NJY8=%&E3C#'9$CI3SP#35$[IJ=( MW6$,88Q$#:8@#2),J+' >L !)?EH"[3< >A]X>2^ME*(ZVA M1KX_Z.+D 6F^&?EPO"1\!I#,,#F%]>[$'X!]$^=*1C$@1&EO% -)I4 MH(W=EFS6*.O72/;X(^J:.%2A#XS@HGE@]1H95JG(2\QU,;"-B H(&A@$"W+& MF8@45+I"PA4'DM5FT&C+W>>%E!A)(I361&-PR)E,^3A:'*JX'#MZ"^PM7XL" MR7HJC 8J,(D@0BZ>)X[)OL"*?&B"C<(O/\RIDB()Y/RFWQBAW>*&*-0J7U*^ MB]S^)73G,\.UH;LC51C$)PQ>6;Z+(F[)$C;^1 M6]/,DG0K4' BY6\G)J'BI8@YTS:FAD.Q3Y.VX_?&=L1[*<9@\U?I[> 6J3Z# M'/N*&TESWCS5&#Q7X0;X1NH,QQ40@EH:C^$R;0WG_Z@DCH($U@Q-7R0IE4P@ MB%7CH7R*@$R:[Q7KR/Z)YV]*-=)T+/4*VH.FI_%GY8YS.0F/@11OGOPT_@@/ M.8M\Z0;R\SF;#VZS =NL+VN;K?I,VUR&6P"ULY(\ 4M*:-E%*(O1%31FKX@'&E*M\F9\D9KN4I M=)@;&\BKIZ0JDMO\/LKU&KB488X12&^F*"MZO-:DU#39"% M%5R5S.S*(DHQ@%T[Y!/F%"O\HBO2.R'%*KTW+,U00SG!]27E&S,IRBLY![O< M57HBR3CT^N&79:'FO+QCBH]9^=MYBJ/CP4N[:?%3)TC0/BJ +]=CE\&_#.8D@F$]#_F* MZQDV$]HJ&H*X%T_QPFY/&LO ML-;0\3U.0G11!.;L=(/SD2\YA&WJNF5HZF-QQU!0S1]"DLUTRI9)LAZ.>B0= MRKF7&29L/T@IB9K -"*C!V49LD'R9LZ_44LV)?F"*3T5RB]>=@(T?%"GI(@5 MGMFP3*8FE? /C-RC@O@O>PW/S1N4I$WZ% FUFVHN)L MF%DP!4+*]9\8;*YP$6B[ZN@4KHWU62'7/"#"WS /D$XV%0O#L=K2FLE__4!J M%&B8\OTX;-A% HJ'X9 D 5MU"V!.#/Y_23_WLY(:;%88AC3H'/"/!E9)]V&AN/& M@OR,@8ILY!H;&LNI=#WK)^77AR36PH090F%1^-@)I"9@)8)T](HNM".MP1OX MH4_L D$M5]JVA&N3:^H)P5D7B,Y'V=3S U$L2O@D/ T"*LLU81T+H*[<#5S6 MTZ+HA,_7P JZ@929*E_3!=5K)(O26*4LLL=6@SJL\WAA9M*<&8JOI/'"&Q61 MM;<=Y+5#N?:VFDU.9KL9=:H'4\.$&GF M78HXRC@^8O3HY+F-O0BK5*T6E5K%?I(K]X]F&8T-#GVDZ10-1!UBOE=X4Z6@ MXMNV.O@B6[)-ZQAG0OE!R#:.V[7& GM S="GNG0?SV\6]H27=AIJFLT\;Y7A M<+[5ZC&-%YYA<%<7?6&4BF\=;A23<6W_HV!D.U@0 MKBWX8-O*V*XP?%;!(,A*$7(19*$P5-TN=:5:!"/Y^4?7T[JL+#I^ZZ#W-4O% MNT?3C&@?)-W?_'P(2SVRWC@D'G@!G_NXCFN?5)K-!G?PQ7?,VT5RW3QXW7A_ M%G$7)TYCPV*0'?YO%?XW*IV3Y@[_GXIM8(^"A4 M9S!V= OF%N='4)QW;;0P M2V?>'3%,"H/.CA*>K '-X07=T<5VT04J2.T=:3R5-&2R2Y+[YA'"SH9XDMJDIFGNJ&!^7/LJ5,!YA_5;A?6M2KVU-?;" MDP8]K#*P^\DHZR^)MZ&WVMH_#0*KY]]@,V#0IKBQH.IUB$DZO8<7P>PF#O%Q M&L@#^?VU@Y)@YR/AS5:S0PRB@(8M%4HJ&]_4F(WSV$?/'-HT([&7#9$:^)X7 MB/$-M9K:\_^VOOR16( ?UN_C%V5-1C#T 5J/':!I\U6M]@QGW#1@;.//EDR$ M'RH0PZQDB0=ZJK0X;JT:WD3ST^-LV>*3([*SJ5S=/P<.!T7]/V-LI2.E@V].6+LY6SA 0&P,CJ^%/3Z1(!MVI0&L?]O8V5-/ M.WN*PR:PG\E9G1O ?^S6K/RGLS;F\VL<)8GLZ?$TNW1&,Z(YO+>\*$//T$*R M'+="5<0NX$='S^2%VP_GI:N:)Y6CQG(TS>T'_M(UU:-*J_D<= M/]A/#N@#^]T!MVYK-G\::TP78+[OQ-LFFQG\AP?TM!O6=_4R[M9'_9R,;NIC M&]6Q2NJVTFJ;CR;.0+?Q"QRPNLT7S@,)ZD%3I3.5 26,PJKZ2P*BY*[3>TPWJ"B=6G7)#@:_C M3CJZW98S9;#JQM86EZY,I4B3X]_R;J&J"2=!*!9Z5(>%!>3#Q)SJF[S5DRB< MH +;C/%Z=':O (MKB'-L#ZDA19B4MEM)G#N@\,:Q0>%T91IM=4]JQB-LJ:"Z M$1IOS!L3WO4CQL1$")Y$*_P$9Q=Y!NF$;AF.TB(ROIJXB-8R8AI[A< MY_$%N*LO-=I5EVJ,#,'+R2? %SO#.']K.MB&G M%K54\+ Z7L_38F:!?:$?(XA*FG);&D3V6T&+7.[43F='R6."VKDJ$EYZE/)N&:+>/:Y,UJZN)F4[DKTP) MGJX6IJ4(\GA(_OAH-CBN+"EE+.MCGO2"CIV?9*-R)4H20^9#DE(GT*)3#DOK M'90D>AH^37%0+1K$]C3K^F$<6='NI' ]_FGKKO]**Q3S7?^B(=B>YKLHO]^% MO[ZY?5=W:NBE'UDO7>\=-D_6>H=%!]R85V9#^H8U7D3?L%5[JDAC9^4?+3?I MLOCMZM28C(O]XHN6:G'XA[8=3A/?,7[7^&G<)V'^]JMA)G1'8&M$-[$S[(-E M%8L;;A>\9 MC9V#L#(R=@;$S,+;6P VO=&616<^S7/%NSL^VD+%%"3L>C51 M>[W6!"5@;=FET62A]=Z:U+DZZ[V[AZR(C2S(Q&#!C9%.]TB>!/[9H@AN6RU6SE.=)C;!E_R M,09R/CN_FL8:4GR(!O#Y&&#!L6Q=&G%.&\)&"#P^2$XMU*/NN%L[1WU]#$PE M0]F^?4 SQA,"2$)S->@7/$]018V[(A0TXVQ\%)@.NIFCY ?8G(1/X./P:8J( MZB%W$E:W49 -!(\=ZXM@*'NJ\V_I%8PZC&]EJ%,<9%FTDK;+CCQ-Q\:"W7&L MWVZV,<]!A=E(OE.4#J-V:'0'D0X9IH8QB>,B"$1O&LW:L9KNH#NFIV/MTO7; M6L]\6[.1SY)0;WMC=VIV8<"$0=MJ59]&=>E0OA, DG@C88='B"'#.4_)R2.QD[IV$=):'8/ YJEHNW8-GB M[ II?YO3YD]+;'<]^JSD@!5U6T2?I;%8.<59#A>QVS^- 87M_'9]_/-&63#> MF&F>CS,P?0KIV !F$V1&_HGA>D!HX,?&JUL5.2&(!ET.@,WAD>7/'_YI>SF3 M[5:5]*2O564O58RI3ZH!6J7 (9-*0=8F/-_6R'#223&/Y,08.%8NB=68X[%^ M\]/2CF0*37%XYCHR:!;6BA][O:L^=;\:?>I.BWWJSG6?NF\3 M_M^GML5HG-166TS.'3$6V@QC=4CR<#YXP?'T=+_?RCV<[-Y\XCDWZQR->7+7 MV[7F.CSW>4>,&;MAV#5[(^']K&*4=K/6V$IJD:TPGLC!IHB4I7"P2^OOSF#X MSOHX!=5*][)4K]P;RZ[43V2QVYJW],8Z48TP9MZ)9!D+KH(NWQU#C/]7M:F> M>:.29ZR@V]QC.VDUE]&WM@"=,F_K!#4VZB7-UY9&C6,[E,5G_,>3*M!62!C MMJ8XSU>X"9 .\VR""7-QJ+U*"EDIK=V"R;O[ZS^9^D8R[7YF\^:O-W4"3O;/Z=S?_Z;/[6>K+U7K3-O[/SUVOG M7UF_2DM_2I+<2JWJ3@4P9$,L_*.*W6[/:^.WIF50+7Q_3$S&K)W-M!F6;">4 MFG^EI33CA%?6^7!GTI=*R?5;]//M@:EPQ;C\DJCJY?28F6?.G%G+TRPU_"OC M;0[R7P !)U$8BH"="%N6F/:-F^R$-T:;G#='E4Z=G-R/39(8]'<-[E+4VDLF),OMD_O[X\ MP+0QUPG<+*"V1EU"E6P8A3J+QDF2;##D7,Q8! P18]H(+)Y#2K5%0B2^!33$ M+$QZH>#U_50,"BT\8 _Z\L82J<:KOV"G]M%/E8E\'G,)([L6^R@U?BHV]=B0 M$L?FBRAQ7&Y7$\SF"UT_\!W5X&;ZH$&5QIBD3IJE43QB!.?T:?F4\7/Y=!EQ MT._66%VHUK <.,>[1YR4S9.V[$_W:.5$H]DQ70-+,3/GKHEK/%HJM*EE9G/5 MR\W=)W83_ /S724&J&;OR+IIMUDRKF;&\MCZ9@YMF?]V9RS DFSD>5P"^6Z& MRD I5^:$;E35"LQ\'J:R_L:^2QS6QR$HN](^)J^*NLGY1_8]J[MJYUF=38^. M*+CVHN^)NXRWFYWGW9)=?R:H2F]JE>1^#53."A8I<2*&A]&N\'SX$"P,5R@= M:Q74O4(:>5[WWX70R(IQ[<%!M4O!-9.83R8;BNL\"A0U+MB,?CI7#^PE"Y,G M,O_]1J>%7.7@B5W=5X;5Y4'*Y3/_)S+K_0;+U*?"]>71SZMS\Z= M9=OMZLEQQ?H1X@@1)Z$H##IMSS*9R/'/J)M8IVZZT>DNV HEC=P?UC?.55E MKY/U-=ZA/G )'2<:,G8$3HB3@GRWKS!%)[W8F!F%?V:P<,_'IFZ4 M)@$V)J8VF,MQO[9>#W (1\#\$"-+#(9!-!*"KQS'9*E/P$"-A9M&.69)$/.+ M,5^(VB%1_@UM$WOJB'L1NWY"6$=]T0#?15BEU!R* M.D[A'"]Q/X2];.>@'O-Z!\))LEAP/RX1)ISC@GEY #N?QB'IC#0",HWVZ0-< MJYRA-71&F+=&]VC<7&KU'#^6_<'P'G5/+$"G#%"'7D'#E3B)3C>LXU9)LJ,5 MHQE=@,(!'Y.__LQ\F7>E4% R(EQ2W',;)HV6SIT3>V4]N_2F/.M-BV47;?9- MHVYSYEVO!#!FBM^#W<%K8YG,"Z][73Q>&+<&9Q<.0+] _8P#NCFD)Y :J"DB MS\Y"N'P('/=']ADB8]7,;N*( M21FZ9 F-5'QX3?7#\\G]%HY*B\E$3@8)]<%DJH)M&#^;&#G'^R7 :&Q,^WZ< MCJH#P(2^;A Z& C/!X $(WA:N,)3=V1R:OQ; MBL4NG&\K1 M0X":=TPW:EYT"6D0QX*5!DZJ6P B$0ZH"6E.BV484,#8MT\H+NZT:N-3 A91 M6]RTEVK*E[OGJ:A@Q2\]KJ^CRM&DO'D@],P&(5L#GYP1+;(6^ME(7=8ZJ)PY M3DE#V2R\7W@S[]I1HSW/4.PUX?,26K"T9ZG"6RNB:FT&##HQIC2\2FP%PS;":N>C[Z,T+O=;+5 MOT0C-=JP7@=BKA@K[Y*Q'[3K-6/ M7A]FOSFJ'3!Y8DAQ1O89R0[_K/V,N$( MPAD(..$#Z:LB_>6N$V(0HTO.0>'B'!T:&H&.M2@D_Y#CNEGLN",]7<,"NH:3 M\)2U6#0E\#N_R/#"U4-TH;>-VX^#4;H+,UZKT^=#SE -<.&9^,C&L(#JBLDTU' MUM6#YER%E+^C+K516%TVY+-$X<(PJYG/,C:7;/,MJV=SZ,6G5[=P0XU.DUL# M/JTT:/O8_>9GE%)E$6!IJSGE5C:::F5&VHXBGTJ1G?:.(#>1(+%/XS81Y&>1 M)&]5+FZ>V+DCS*<29K->:>\(<^,(\Z36/MYFNL1\ZAU5/IDJ6SNB7 15;>) M@N8W$)L[^GJRU&ON#,1-%'M(@M-N92.I]BR(J%+"B(U3=E(46E]/KSZ>_M>K MI-D=16T.175J[8X:Z+]3B$S)K4,V?HITY@78HDRF)7)!7K M,QP$X_UGU(^.=(?/47A3O<;2J(^BFTXK7>ULQ*&*?>5YW,#("OP_,]_#LBFJ M,,),"NQM1)WD_32Q[J+X!_)?5\(C%,(SZYXPR8G3+08\O2#I1W%:I7(Q/[P5 M24KUCA7Z(\2VL!7,IL"Q4Y@2Y0K_%JFC(BP 75#XK+//3"DL(N V:,$;A&#CU=XR=[ZAO5 M8=N5=*,0GR (1Z-RUT?&-'#EUIMFI=GFL0YFJ_\W=J5Y0JW$R@8Q\$'.Y,P" M6M\MVX$?ND&&[PWA4'"DK.>X*>?3#!RW#Z2)F)7B5<)'6/%*@S-Q MR7TJW'X($+@9Y4_PW(XD$8,N8.\A+6'!XEQ+:,R:**WVPVO'G"(_U66] ^>' M*#\#((PSA/7N"=O@;6_LNJRBI2]-D!9)K'0Y2G[JFK2'US0)'RKN' ?,EHT1 M&8>Y@[!#T!'XND[X YC7 $\:2"[-74,KG,JERX4DHY@<)2!K ^&'S7K%.JIC M#?Y)W?+@2CY??/AVR568PR!+K 96H-2LB_$UZ3Y4+376:);^$%'DZMNGXN?- M(_@BGV;PSPPN4R,"G#VF M P*ABO72=P0G?":,6=FU%.$VT).+!2(MPLYG)] M!S#FQJ'7#@/AW90DS8%FP.-M>!0-_ %(#/].1_G:L&@1\O2:K/L']@^6 S^R M)(/?HFA@ONM&B,MDE -=!'[>/X N%!\I+@(\0MS17D)8*1@]Q&%G%[IK0&4Z MG\_-$YA]R#)N8AY!A,T85'.&2#[U@]KO0'Y(MOA+(^T=JMS\C+N\;C):*(:%?LHZ.7 ?DU"8DG,O5]^\A^UCB%U\G0J\VM9NB?-E\)0MX^8-]G]O/]RWBYIR6O-?DB"^=6]ES<:M91,FV MW$^;[T0)EMR/+69Q2X;6)1ZY2W3X#DC/)UT>2R01QHH2&6'(09PBN/R)=/N*EO9UTNJSP<3F0[.T$TD/,;,>N M5L&NGM]/?L4E4Q=&[7!JO=%1R)*ZR0K6044AM8I 4K'Z $VJHW)"5?67UY]6 M1:A')G[K4;%59:Q&L]/Z"9?$.FBL7Y6IF16+/^X5$GQXD*;=H*]BLQ9!-XX/ M E5?Y\J:5QT,P!_ELS$C+.W$L9_9@"<"@_'B434C5M'>B> 6!V&&:;]0EQJ( M6T%OR%>ELL1>D+EIAA6'/#T2[H*J\O"_7B94A5Z2.EP B 6\@5 ED?@53A:& MPU,I7N+@/$;2.Q()E)L8RZHE@''9C1XZ;9:3>GX")J+P2LISFXU&/N3V^+BA MAMQ&:$D*G,JIH3S6V__!0;<5G 4RY%K/AXL85P\N*@LZ577UET:!_IFNES_7 M]?+G1H'^N:ZL_Z#J[??__K=.HU%_=W9Q_H'^:;\[H!4^&!7Y^>\>?(-:Z\/% M^9E::P&SPA\"VP)+2.LIVUB)VC M6G,+J@Y+=)U&FTL.7UQUX2)PNL14.IUL43*'0M=IT9Z6F*92LN5VI=VF:(6U M\1VPVK7&JJ'3JK2.CK<#.G;1B%Q-WE,)R"S0L3LR!6!VD#5I0-#*,^KF-[KJ MRYA^\K/_OM%:>(AY24P.U;+YN=K""=-N;!/;6O#QFY5F\V@[CC^=+RT8)L>= MSN*XSHZMK)JM<*MJM-/6SESLRHEL/;;QU+4,YF(#;VUNQ_%7QEPZ1R<[YC+. M7(Z/MX6Y?!7IP@VQI2:WE)SAC?3X'5>..ELB^V>QV-8%QB, 8WT[P/ADTV[U ML,7\[Z/IG+(\Q>GE:,S[]P9C)S M+E&SMEZ-2PWTM3""SB-NL2\N!N'LXW>)B@8;G6G]L*S'M[7_\>K;P=H94NMX MXRER&_':Z)\9<])A1?#*I%+;EHA4:IK[K#QW*P.7$ M,H\/0.\9XMPJF2@-OQ1ADJ%5VJQ7CVBBRZ(F,RT3"4H2T/#BW^197I.Y[VI( M4C*>QRP3+!!Q!FK5U('KIX$K+KPS&F J-UQ"@!/-:'H7YIZG<>;2W:.\\'XG16Y/94FK;>@OS=RJ$, R?0L]W"*2V)O7F>$ M=0=0;!T34DS,T4'Z:37*OFO," 8^25KZ?CF]IQPJ<)['P+$,I%LN3X,;2;-$ MU1,HC+*XWW6A?D"$WGB5!(T?HKJ-GI^X3B"S[/MP^W+FDJ?&B^'DJPB^ MDI&5C^4>"O")>OQQEOEVV; ^]/Q;^ _\KWI%H;]!B]7W65+(*4'\$0VGT39B M>>S-6'XRX7Q*V F[7%::K8PT/YE?O7%[',\!5U;?+)>^-,^P0RJ@VT MCG_:D-N26A'9#/CN3"R>4!<-O3=VI=%I3T\Z6-D^CD_&=['&J_S.Y"8K,\T+ M]K3W J]Q!>KU4A7WF$<\-\'R MB"?T=O=AM=U0UBT>EF@:!YWHULLOP4#!:S#(7!LP:8D>6#(IHQN M0O\O-H#R^=;*U,?IUT)7N?^G+T+X96P-HR3QM=](&;&AN(E2'Z%F.0CM6S]! M\Q\69L/:A:/%CC1SP%U%CG=E*Y@KS@DIF$55<&0NSTM&X]R[ MI?:XL.6DS\.)]97]%O:B.,U"\F-4\@WA5%BWCQA%\U$1/:->"E>/ U75R4PC M_4U>9J+&YI+YAS]FXWS"_,>OK :6^:LR1GV0\@8"- 17/QR+7L#^ /B!;$+@ M:!5*U^G3<@4&/U%Z#XM]5WCO).,4EI-.&7E]+\I[DUJ+E*<.\2N@1XS^OHKE M]W(508]0IV'OZ#NDB;5J1JV04WT1[:QBEP '%A \BAN>8Y.;&(G6'@UO@.5+ M;Y]B-6-OUR.OU0X><<3@#R5K2OU8N:)F2,N? MAJF;@V@KAU>C77^B+;\43,M;VPC9VF8^,"YX.XW*4>N!:ML-QJ)[(J)8SWZ"T[+3='*>Y[<"IE8.J46FWQ]GY>@7AU)X03^3KZZH* MU ;_UB+AA@%4=ZIX/.6T1SQ_O6W^SPD 0($'($ W>\F\=@@G4?WK]_=63_P4YZ",.T)SG$5 M3_E&TRX9:_A&X2/,W>B$+'?/Q >)?A.)LVPN,I"Z';-K6/3BI&]IXKP)S3%1 MX P]]*?"8X=^D/X>7:_H'3:GT@^5O_P>^Q&9T\.D#$V>JLB]BBU X MVE!<@ECXM>.9KF(3UWDEP3N''!L6G/I%0Y)QF<_T=_4M*PX*97E5)'6WWG0]@BG;W,3)WU?/*']_49U.\VD:OV!2O14RURSJD:18XR7OK-B?41=+5 MELTBXG<;WH\.D*D?B!'35C@G:GNBRPN$?IIGK4B<_)[#/8X^ZD@V2N M^F*7R#/NWJLD,TMR_,^S^6[O>E.F.UQNJ_CY,MKO+:7Y/80A#K.<("EKGYCO MK&L!#G33P,3K+1OHIC?_S%*"Z1BWHBG8#H9.@K&9CC]+DJJSKE?/9I^,:,F[ M V29S%^+O3B,37=IEG&V2'EF=R+?F#UL8H(X*91Z?* W&\1H1L"Y>-C: ;L5 MM-1FEUUL6JRA]?^K+C$G#E;".6.L"B&LG$0$ Q>S5J4":MVC"*A-4Z>I M./;?/I@:?:XI.\Z.4\4B,E:Z@P:ZZ!7X]__&V XF,BG+(V7 +USQ[TLGM%P_ MQ#8RRN#)CS&.';P +]\[X4M#POS \KCUP]<'$%TN, U@BQ]$(@YH>@YA=3@H ML@+R>^QP@47+HVQ64.-@Y=180!__# 8%7T.'&'I,"4(02N5$'H-!5'*X8V"["0.?0W$HFC-L_]!#(M%<1B, M*BQ5TSMT"?QQ?@ T2OV(6# *CWW"CE%#^!G$\=:S8 L3F[XML:64U4\0YH+V MEV%*!NP8,"4I:@N5?V'9%%=K3?P%G __)YZ6B37U[#$IG::H)(,@I>$-J_6E M+76>""VFQ,R7S%[3 MM4#Z;J18(T&7-)02 &#!FS3BP+?9>QVAQ64-@J32MV;#.<1-7(_FI^4>?]1]F,&2]ADGW&^ M7F%]=F)6I5?+DI[$L4V28\/1"5*-G#*1M\@9/$XIR6#->-B7S@4KB%@QU4!\ M5&AYKEKZ]Q31Q=\IVQ%VGL2>T;Y7GVQ>.SC\!&N0Y0N\1\U>S9:PIA>(M?*L M^+; V]X0*0AKL/5*;3'LLL<,]"A?^6!&,']V6E;*E)MYFP..B)EB(.2>QH@P MJ05Q]8.U_ *@C>BH==Z%4!4USOAC&(_AUFA=/"Z>O0?_D&D-& %U8#&QX]LY M%:^PDK$38KTY7$$0TVIFEG$X#GFG@HTWN]$^ 6/C<>Q2 F$5]N-Q[#F6*3(* MXP!3([D]EVTMAW^Q1@X9+J!,]KP@EZ!FGW4F!4$J*[UPE'7,%3L/(>VS;2?]O M#:PS:=';F_CRV9EL5B1%8!-&3AH.41X1G QU-CD( J*(/7V/. Y^M0#>AL\@R7[!_?H M\#T\!L2TWV Y*?0J'R]NL5,G(.B-V!=7RI2S,_J[9V9X7 ?FF+SYP8NJQ!.; M_@J^I#>U9%/GU.'G>[-[FCWL?'DY[97>],@Q"3R1FT_I@F@G"'Z*)XZ>UGKH MF3'/:L3DB#EKQUGI&2TGW' QY5)MAQ8M4%F?!C*R39[FFY2P[]'58*(1D#=V MDV;-65$= T!%'P(KW0!4 M6]ID^R9570_0,_;=]Q;X$/0MS[\M\_PS&>9W@_M'Y>;FYO#.^G&)2QF)*E2T MIJIHP/*:#O]AMJ?62H*MJ*&EW9M8[=J4H<7Y^2[P?[RG?EQN1X$FP")[R.\> M=TDFVM_ \V+@^5\)H3"%:L8($&7DNS:ZG]@C1L2E@O;6BGQ,$]&;24LFZI[* M;@[6BP@*6YMR;&8]FHB;W*W*7W]/(2>KRTWH7@2$S?4_G]VJ,"UY!LN/=S4Y M,#01;6&W:GJ3]R3'"-',^'!ZYR G:* _6B-CH9L%X0?D(*;G237Q(S$]K\R8E$>V$& *#_NU# MY\.2U*BVUI4Y<"C9\^7MQ6^_7GU_?%"N;[Y=72J#!X52V>VU\OCWFP?E_NKN M]O[QR^JR?DUK= N4];<:O9(KK$6:67*N[67GVNKK,OO%)"NZ 57W!XJ7O !D M^76:RVZ$AL]\U2K^N*!NO[AZSWW;@X59)\)FHN _/?DV0DCFGAW M%S_!J[(AU&LG&%,)]1GW4;Y86,)8[4:KYJM]\M61,);>E,Y8%^A9A?=14^6< MM]-X&(%1M# VR J=*\%8<$%:D99!-6N5QUI[XJU%!D26MZ99<2U.T\KEM$S* M&95IEC\F21HJFU&5XQ)=R'W+>*3'R:[FD#UQR.N1"!]]ERSQ$/G6"_?%?5"N M?H\Q&7QS!MF7WM>KI=,^>>]86,_8)>M=8)7&-:O2.#"&TUJUI;5?ACM.;; E MG?^^^]B<$)XPQ8BY-0EG$I1 .-_$M;=?M_+5__G[S?G-XT,!QW'EQ&=!8I8Z MH2Q9D+%@+<;2M;1ZI3#6 #/G7%:NF48[,0I*Z_C>SUSS+=RS)*B)IQIB(7=! M<[[N)4<"2%1&\]U[0LNB;.6" #4/:3ZTL,93>EX?3C.R \]'_$[SS0":@%=%$',H^_?VRCVY4 MS-RHV6>&?0Z)?XCKC$'_%_6?P#]@-H3P,#,2R5\/), J[H'RC]C##AAWE,<" M:L+[8)?0FIR L"_06<3B*WJSV4N^E=8]P,=FGL%:JS2:;4R^8X-4:28[2R;C MV?D/!-Y"BX>IJXYOA_Y%_ ,/Z]]^\((R,&5;K:/2I;!^#VO*5@88J21E\:G, MP]OLX2PGCJXW\\<>^^-^Y6TFNZ<&C H"QJS#.6=^ M!N4O?^KIFL9+PQGP \'_PP13#$14ASO.:.9WP@7%>$#7^%]KM#)S#O^A+0),W Y+4J6'028X,7++91'@/T MA?%"%%7YWA@T%FGW.M7N-:;=NR2B52R^$F:+=CZF[/- ^SA0 X6M\)-XL*CE MX<]#@RU7!.OW:7*DT\^^?^R]): 7.1'102)F= MZF3=GT,AXQQ:1ES BFEA$)FZ A>ZTA/=;5D)L=87'"@\[NRW#8EM>"M2(=>O M<(7WAH@41O/_NOG06"-0"L-/Q/[V0P^8Q_/S_U.V^A\ MIFNA/VHZ_F@8GVEM>-('% 2AWAA%XQ592O@QY=%\AR4KE^35L0B8J#>>U>#Q MAELF^.]^;V'/^IKP+/[S\ N4^6 MUZEFKVMSFKU>3+/7M]/L!R6S/8O:5D:QK[F^(EQ_VDS?;-&?C<\DG$P %H% M6!V;RN%'\]G]:CQQ_7=".-_?Q; *')>%G*\6]-@WM )AL8RQW&5DNDQ&4'XJD.T$@"Y^P/AV;LA"J.[' M\F .AV:W*A"A=PZF@\^Q0\1I8X2F<>-CG,R]>/*].)R 5"Z $[^FTS+.\6O* M'2S/>I]*]V-:/971FC8U..Y^&CORT**0L:(UB]1(+,@.OR9/ ^E.#;\X,7)FZ"#6!_+2:CUAQH; MIK#AQ*&!12B;GW&0-N.WR.^]%( %Y@R@.#"+"$QI^$?L$45K\?* )4K# *,9 M]PWE?US0]*T_WM? !:8S7. 0(]IX>@H3>IB23(T.MI1^M2*6-0!4! !.VWS0 MJ?F@Z9\Y^VM-DG"V#!C@XI( #]*/1N_*/AO+@3U[\PC!0" /X.C2# M+61/*'#H10UZLRYJ('51PZ)%:-J"TH.E30W+*CU(HQ_I>&.+%CJ:HC(*3 56 MJZ@0,\ RX#!'<)_PA2ZMKMO+I2Y4K^I;JM M%6^JC&!\?_5+0]'U7J/3U#X. M/GW4M$]\]-Z&++RH_VI-(Q6BD9J3#^&6UN/D?U%5#97_5Q* 9H@,"OPZ]O$1 MOO7R&4>-PB985_,X"B.3>>G.5@P>KGE:;NW[SI?36DJ\FEY#3$TTZW4',MJB MT:?<%'5*62EL5??AJJ.UF1VUU6^P,L_]=DWQ- M\NNT-^04CFIT2"=T4V]'#&(X$'3/2@\PJR!4XI#V/@V(&<;!.__$F$0CW]XW M4[3::E-OUAQ1<\1NA(!B K>,\0?;<6/DD;4Y0#CY87=?FACDF-:J9V( !FC= MMA\C?R9JMVRQTM;45K\6*T?$1!GU.Y<2)6O@G)1JJCE(JED6A.TVVF6$8;^3 MB(;[QLO;A^E&T97JG4:_E'BQ5F"65BZ+=7HR@\>R=X_3M.&Y&?\K1L&J[O&;&[9;3:I62G'1NAG2&(96+&.BR,H:Z,D]> MB_X;A!:8)Z^.S?)H9'%410P6+@.U1K=?<]SQ<%QMLM144V6EZ7!,%J,V66KN M.S+ND^Z@W2$_M@[/H*D]PD?"JOLU:"Z1!8F]MDD#(FS*@)'$094S8+HUAQU: M@EQ]2X=P2]5(8]3K-,8#EYIU&F---$>6P;+OC"T#+(NN:K3:M>Y3D_S!IC'N MW"C75;U9^\YJEJF8&^V0\AQ;_;[:;ALU$QT/$]5!PYIJJARV*!HTU/<>I*AD MGB,H/49?;>DU9M?<5^P$T$GXZ@6WVA1K.AG?B%5B^]]M%\MWSEGIAN M]*Y<\*;]F&CCA(I)'_EO/WA1K,Q?_.#9])P_0-!-S?GKJ8K6[W95Q7_SF!!$ M KGPQ["Y]T8!\A!C(DZ6.F8+#O=,&?3VO) .H67C*'%B))O5@%Q/ KCF.] Z M'$L96)8?>Q$=ZN8$8V42$(O8\.J(/P6U%SH-XMKQ3,]R3#<=,1D6H ZM=]JT M851*%-RR(8'*!0FB9$)I7@?^^A:W,$WS MQR\\P(@#DJ?<9N>F:^+\U(<1(5&H*LA;TY](W6G,78?Q2_JYY1]\P'2$D>\" M^8=_^5-/U[H_*U>_QT[TCE]^7?K="S,<*=>N_P8+PD&P'^'CW_T(W7Z^'*]? MI]$Y<>K>/)[8+0-#@=D:#Q=_+RQ9NIU2F.S_G-]_4Q[-'[[GC]]!7XB(%U(6 MLD9D;"J7OA4CC=44=I@4=C'X5E4*NS!=2P#V-\=[>3)#4M/;@=/;Y=5U5>GM MD@P=SZG)[9C([=O@O*KD]LU\(FY-:<=":7?W5U6EM+N 8&Y!+4F/B.!:^R:V M"_^5!,H=IMMG[?!+M,.OP0Y7J(FK\7(B)7%0["21XV8ZA6.F%;A&DN@!G'V>6S4D\E&XD7 10\WOWP?//YV M?_4@F6GR-G-"#_[P]2[C_65YT[_'3I#QPB:1 L4/%*W]T?XD4JSA3W$ !B"\ MY^J'-3(]D%0#B^9D:GVCI<[D82LC,U3LV'U7+#,.01B!* KA[Q,_H&]_(DH( M&V39NPZ\_8F,3'?(L^T(RCD1]@YF^C&OQ2:@K$"@U& M:S6W[>OVX>OCX-_?;N^5RZM_WEQ+1F$5RNAMOX!-*W@D[#Z/VS[> M)W3\J0KGL ==JEH2Z0@8U="W)X_S]R]%R5'K];=]VWHMSS^'G^'!?C1Z5_[1 M4![\R8L_'SU>NF29QB O& 2#BZQQ9.WMKV@0/X-*!Z)S;G1304B302?K>04D MD,K\S>_FRM??JH0KWE18'>3-+LB$JB_X6"[XXUW@>)8S,=WY6RZL_!S3-=?* M5L4>\]>7)SOO!CC1?88_?S4]NUJ+KNYC:K57LMI[9\:N\G=B!N^UPGLJ"F_V MSD]/1![GG2Y(A%9.\89K)6BEK[R@4SSU>J-'_(D03SB^GXCKOPF']Q!DJO^& MC0LF) A]+T2_./>)SS4YH;%>'@NVS(EIL27@;WWV6TQW#N$C-B;Z5]117JW' MU&J19+7H'_[(4\[CX)F$X9J*44?^D# XK*4MPTI VBS]G-$';'VF]_X3 23Y MM:%/63YG"4I5+@&+K<@O[(G:EJ9V(YU7T\P,">0>Q#%3P6)[XR2N M?Y6Y52MN%7Y,K6-(UC&N&\I5@'V_ E#+S:A6,^2H&0,7/G_?4/[')>,GZX_W ME]-2-&:HZG1UC3DZ4&FZO&.+?.-:]S@I?%IJO8=@]OGAFM M?H\6/>01$O[>CP,1T6%-96;4(E:(YV471 L88-T\9#.]+OC] \[TX,UOE"&\ ME$:$ELW*,K:EZ1W7DL$UFF[H9R\QC*W1BEL4:?BL+9'HV*-\]\.&8AC&F::U MFCTX=OISK]5K]MG/NM;L=)K\9T/7=(TU!J+_[O0TO;GX@CF5/)SUBEQVJ="B MP6-^,0-S['MVZ0)S71_!,L5KREVPQ:*6OV/+AY_'PZ'I^BK]*$X7V/J)N?91 M14R;5FW:+#7@T M+=\I'HN@Y\9\!;L_MIV(-H" GRV+#6+#1%WV23'I][)J /T\CA9G]C_+HG7I"Z?> M'D[U$W9XT^(PPQ4?%,*[$>.#+.PX/,2.PXF[!OTT=,Z8Q[PU\V_T1$MBUN\I M\_IAYW"^"D\[@^V98[!&?&KR-\XU''1D^(S.UX (FK#.: M,C2=P(6-.YYBNJXRA@\$^%'X\P36%ZK<724> 4^V'=%=/'-!1>\GC%U^#_@_ M$\+\/PRH\%<%#I^N%6@ML"E182,L^F\^&V["2AZQ'_8S\> %+K85L2P<(I@D M5O_F.4FK:;J& "LBLL0K/8 (U3T00^[#PY M+C#M#"'R_N(AD+('6CA^4W#*+?7W37W7H3Q+?B [(!$*-A)H/?O0U8O$#H,T M4Q^9DL)C*-Z/?E+8@JE,V$###-$.<:!AD(X\I$2-"^"S#P67968@WK[2)CJC MB,O]CU,T_4GY>'F,-LE($:#PUE M2&SD+R5,*R5<\RU,V-V<3&#Q-.4MB%U>Q! DS>CS*BWP$TFU1<:/+QY)-]78 M-I*T>VF)N!E;>#\I72PZ6Z FSX8K3 ZQ"]W?0F\(5XM?X3]@^$+YFA[]&;,<,P#N@"S"<_AD>,"(8T"LH1I*QA M0 @N-1$>>&GB(VKR0#LFE-F" , *_O\P@%6EN\J07(CB=(I@4=E0X; M"-LDWC.P-_TCWRB*&;Y1+E\R9E9X&\B45,$H^%+E"4X;-RH$W20.)GBW\!".2/BI>5 B MPR%3'3P$K07PM_[>*27"+U =P /FH.CQ: Y?Q*'QWFV6W2PW1@6"$PS3%GR+ MV'' E#?@!=PR%3).^!(NI&IQZBL99 7YJUE.G5T/,C235S9#920.NBYQ9P]X M,9FO)#LD/TQX'#Q01:(Q%9 ($8HF!Q8$.K=-@W" Q":]<0818Y0L#(%M)[1< M/^3/++;3K)3E!TZC@NF:7DTW-J/D?;DJ&VTGATO .CHZR@8.&Q;OC*FF-C9M M@I'$5+BKJ'F^$=!=X7]G7H$DCUIMSG*% DP%449 /Q'7(:\<33,8 (>,QP9' MF8'.IT3WRFC@AZ="7J#LQ7#T@(+GKR:Z] [0*$498HF],$$P9GL!ZAV/8X_5 M2_+:3(1T\6<3N(JJ88'/Y"7H(P&E$F!]WTZE2C&AR$4Q[=>;>:\?S"IA4W_F MBA=[%_[%@<41KOF8T1?EH_:)VYL4JQC_A/C8++_2E_/-,> J;)72^3KZ)V#9 M5]]]Y;H*50L=:D6!6@96J_=,<26,G_[+Q)"*2T#;WR4_E/_&]O,4'M!;2?;) M+<<%UV3[A,E^TX5_4_T(]($W,"HS#";$8 'LC%GPF[\\'Q;J6%0/ M?.>77:TVO9TCB'4LAL*_.E\O?!"55XG$073_YGO/9X\$=.D+5*9,B_/*/7?^ MW(/$\$"\WQ/+?V:#-/[ZV?EZ> @*V[\D(5#O).OB80*![>B0=@/:_-A'^R1& M\++IQIZ8#P@GB"E:8614ITSB@%WS'P2-+W;S5+D&DB&47ERDEPCIQ4KI)52> M?=]F%A- "%B#)-?Z 0T(Y57(%-:8^@6Y4W ,FB1((WR%3?#Y5,7#IST'M&Z6 MV==L2;0W 5^HG;HE9IZ,?7<1P29N3/T?0M5BFB\>M6)&'-RSJA*NF"J>S +A M7\/5Y'U+2)0P^T%V\KB:R!>?%4SVW.0, MF$XKUOPM[UH"=(5@"I\7 9'$H!<'U+2C:B]5P)/C'#H_T#4SPI3"[%OI";#U M9.5[LJ5(^+_@TH.]M? MA'*>$B)21ZD0[0JJ7ER>&(H,8AG['L1.DJ$T!1+ M+I0C%.+9-P4V!:G>D9K;4XUG5(1"]$^A*R+<(+4\6^-E=&;+Q_(O-=/:;^*' M='E?S">0M'%$?D[?^? ^?O+=Z1(U-D8<[J1G_,R: )M<.N>),[EP)\ 7$;, M#\:$A!>B"]VSWID $UZ"-"I 12CW,Z#P@R-T_0EU%R:'W]B4&*IW2JFW0C@+ M4]"BSI193$-W\'C"W//TD*:\+8ST*&SYR@N8*,=Q9B'!8"S%W-!$C&8^6.R8 MRJ+)G/E@TZF_=TK\J8F[W?2F8BO,I9CU&68(%U5&[C;.X64>-T77'=7^S @' MCW+#$F6UR&"J0N6(JX.^7'XQ5/%'3Y[*J"3@,T4@0C^2QZ&9D3,'B5^)1PI).3F_M@$[8*Z M]1=<1T:?S(83T<'J/X4D>.7\+M[PY@P#*JI3;'JE.0!E=!!7R:(F\GH M/63:)3$78&GFHVET)':%/Q \^ 2 METZA15+FJ9 MS<-<;:KBFD\^Z-!H#V)2)&-A4/;/!(U05QG^V\VO]N!G/Y5&JNR'+$I259=F]FJ/S4;O25L>.Z5(WP"%4^3.6G M3D^%%V*JE_]&/TR#5X@$<'(8%%2I)CQ&>Y=X"6O#P3AD>G>!R&&6]=6UVYK(#PJ%ZH)&X< (5,3"1%%9Y4@-DXS..D MN,Z0G%GOEDO+$\D/X=N*W@B(>P7LIV@43N?&3#M\Z/+PI;@OE,F.11@4TA>$ M6&AG\TRWJ56E>6I9M] $7FAZ!&&&NM(SL?JLOU#H&R%/>1"',7NX-!",P9-G MGR8?T-@E+[UUV..5$1A/?D!U@#C$<969V.J4FPD?SKT;=&UA[>]!C0_HU(M0 M&J77,,U+8T(E[J%ZSBD)*W;6WJ?8VU=ZF-<^, MN2&(/4TT4SZ9MP!4A#-_. RG^0WX4I@R:'H<]#%D+/(I(YP&.#+NK1R^"JT1 M0!1STR6'<]"'P9&!)K]-^0_)#S2NS:Q),Z75H<(;O)+IO/,7SW]SB?U,%F>' M\D/+>C'@G-UWU KA2R$@^=G8?Z5A0*JMXK7,ZX=)9!8U]8CE):$Y?]"7P;(G M84R;;E'IV:='+(O(_Z%/, M=:HG26F3.+!&9BAR.F> C:K5'N9$L4PHFDR7*!LT/"\@T8R$CQ+.F1W_X1[; M)3L&Y.'$&SME2P"OFRPV\(:"(@XX@LXR^!MM.D1S29"@$HK./,P# ]ACV22L MT,/F"7H4 *;L\FI5/5>RGGKE41(HHJ5QT_,,)>5A,T=.BAOM7Z_5YF>#=WG0FZ5T>2BGG_VTT&LVNFWVW>1 M^6XU_GM4*5U$Y;]]:'U(6B$SA)_IAJQWVPV]C><\)0::#?C=K"#8JO%DD3Y! M]-1F&CCGKKK7;I2\YAYK_R/N4X1R"JVN:S2,'1SI7-MKT5Q\ABJZ#7V.+(P5 M9*&U-4%E,E>XZN0TW6CL_JV,FK:CE;5?RHED-R2P!3!LS4(7V=SPJ"- M+-;DJ^._IYI52R>!51VRJD<4%9;J/+I>,[ZDCR7)VYJ>NK*<,0 M"+TA7AP"HZ_)CVL?U\[DX" ,:Y$W?RF]O5[*!2]3-NGE?-GY[>0,R=K'=159 MQB+IU.+3=%8MLU^2EE(8^/3.EM=%QV!C>ZVDR1EF], [60NZG3)U4:]Y_O.8 M)Z%+%_'T]2=&]N@^7_[862I9\AY.FGW^"NYGN\;<50S$,4=;')X]F^;D"Q[J MP+/Q?Z[2$QU$%V808#,\3+*<\?W>"-];[#GL-[\]7'Y0;&(Y8],-X0/?K^'8 M+1-WTOR@T 38Z&\?G!_1%R\>VW[$/_KAJZ&VNVU5U_K"3R=6.67]X^GL!TEE M7'4'%_%3*7?<860D_X)U61>LZVI;ZZI-H[?PAG-O=P'BM1J=]@DAWL/(#R*6 M?8ZQKS :5P[NRL(ENG5L6W"3;KPT&-);0*4MM=ON'B0.E8(;12Y &DQH:K/? M55OM9HT2ZZ]@(/JQI&GE ;$(0/V3BZ4^F.3Q$2][Z/L1]GJE81C,2]?Q4MCO M[GUZ@%$T^?+Y\]O;6^/'4^ V_.#YL]YL&I\#^/-G\=D/RH^Q^\4UO>>_?2#> MV6\/'[[2+'>=WI[XU-=/)P%4XO1!QM[BV=^G1_^=1-S(68!<> ]#>&I'!@^U MU78;]*EFJ\:PK>Y&G[Z;KHR[::FM3D?M]#I2\*W?Z)P0O"6570M S) +8L8I M@EARQG=F0-D%\TA\#V4^,,KM\)XE:B[2P 2O].3@6+^EJ4:-8]M?SPR4]>5< M3Z_=4OM&6PJ4=1K]$X*RNX!,3,>F>=%>2$[#DN.;OF)[7JX029"T1E_M-&L[ M;KWCEV;(M3H]M=5;[,Y;!QLTX[3L.($.;,J'$ID_3@0AJ&[.8G1EPX.N]T"] MJ.%AC;.7YPLVVDO/?AULR(8N3P :+EA;(RR&2)H $#/ #IKA=,'_$S8JP-_F M&TLM6<82)1+'BXD]@-NV-&X]M;:UGDI/+-U/E WO[\:[HM=T.SSGEW3K_>8E M72>3]KRWP1WV,#+'J\PMK2G'-Z'I\)^>7AHHEIT*M8^HFIP+G3'0-$E!5+:2Y)(UD'\;I"DS\- MW;*NV=V$ G:8&,G2NI>V"5L6S6W+#82T3S$00LWAQ-W^W?>L0@%<39>4 M!=$T5*U5GGPY. %2]#YF%6E#SGUHS:YJ-.6(E4S4=L>8<)@W.V'# MQQ9#2440#S[X2!_^=K(23EA3RU=2N#O_IU9'4C2YE%E/: M,BZE3\.GW;8<3-E364V2C<\:!OE#VG\4M!0^C95"RTDP><9]_JL36L1U6=?3 ME9J#!'>ZUE2U$FW1@^/M]>]"7FBCV58-23RM[\_XN"1#0D60N+NF&WM&C^8.1? &M0DZ:::>G=K3%V3]UL&"+&YM5.:0D MGW9;2R]LE]@DSTT]0R8Z?TV5]E^C<^QM+A#2@?(M]Z&?DNS@KXH*#)&+W7S02J M88K.-!-PTZO;?4>!JE_1:25;)V5Q$_,=2WXJY8\X-/V!G^4=.\JR(^V:VM6Z M:N= RW$/0QDH=*,2"WQ;>D?M&7(*?/>>D[1S) MBDI:-+/#(].0&;7JG&+3A M1YW1 (M5\&I22M]::K/;4PV]O%3,@_.=%+Z06=>)E&(W0VUI+=70Y*12GE+5 MKLB(G9IAMC]G$Q7-*EI(AK:K^O MJZUN'6S:[%)FL$F7I%)INJYV.\9QJ%1UFG0% M86H7_UR 7CONWE!4:CETNN27,U 8IERJ_=FA=U@X/1[[J'7Y.'[LIU5%G?AA M2FAW9G ;/$1HH-(&J7!B9P>I.N*&=?G03L29]A7,"=]L5-AM-?3Z;9.X7 MRL3D$PUQY\'L@BPCT)-U[F.LIMJJXU=573#S-V6E*SAN4G+R_* MV=14H[4X>G-0#KD=-[\R'1L4.\4R)TYDNB>!" /;IF\R7=S]C7?!]EXB,&#_ M)1!ZASENH9SX8K$[D @1JJYWU;XFIQ7PB:'$/8E,.@I)79.A83HE=45#9Z*EZ>S%!UR4A$BY,7K>4MMIK-=5>7\Y(EA-# MH+WXANX#$@9A@'[\QCJOSE3SU= MTW[FZUJ*:.*;U,SB%A=W(I3GP6EWNFJW/>]H*."N*;Q>F:Z1=KNG]HSY;#+N M!U',B*9(G8Q6\W&-.RI[$EVSUU*[.<;[IQ-58+:^&WG5]6 NM=5F,_=N#@K, MZR0G3'(*IT*Y)%-/MUV6$V=6[3;79U]7NDN(,R0 H M\8;V-1UOY?7(JZLUP+AN@_ZZEWZ^98LN&2KO/M:X9O+E',77_0LV3/H<>/8N ML7&WG0UV2R9'4LJX+G%4M>.!ENVN<@*^AH-*LH;,A^]H^G3QO6Z MYB0D7\0/_-!;1KNA,7YWVWOE M\NJ?-Q=7#ZIR\_VBH0R^7RH/OYT_W%S>#.[_O:$CH:?CL>Q\4SQ//*N6Y0$! M /C,>K5. ^]K-POFK,[>H=%L[:WE(B!\_2-+2'I\D36>I1: M<3H\ 2H3K:BRJM%#HA!A^3MK #F/334=UG18/MHMOL\N>&KF5W:DU MF]*N=B7E%5I]>010MN2^]@,E&A'EG9A!J!#/!KCZU7Q7#$T]-,4O[Z8 B?6F M;ARN(EB4>2JJ&N::D$UL;;0;\)0L6X]=*!Z<-*MUIEIGDKO0!]/%&LK%4Y'Z M/0C.XN0V+4IE3-53=:.O]GKS MY8RU^*S%Y\F*3]$;CRUV_K]_"?PP5":!/W2B*@:X]B,VZ:GG]S2?N1VMBLDHQ;0ANRA5I?[>@=M=,_>)EV3T)B!M:(UG?:8%V[/IW>S!K+ MUYC#G [LC$!QNDQ/Z(K-#BD=A=1FOZ/VEG3EK4&H2B"T%K%(AZ5^7]5RIM,? M&"@]$#H*0%6>B4<"TZ7@9-ICQW/"*# CYY4DHWMJ?T,Q$.-G^@L[4:#.P=1Y M[@C->BJ0(/QGN^*?VO5P2(BX&>7)AL8.UGNJ72.OT>Y!@6/MA3@0Y>,@*&J5 M%^)V0I!-O6?%H:FV2NV*$+B6' U+0OX&QF?9XA,- 2R/+*$S7#DLN5D1V3'9 M P6H1+K''?N/J=WNO,E8B[I:U)VLJ,.%WD8C$@A1]I';D)7+$ZLI[' I;$J3 MNL$L;1)&- >R:E2V'ZWIQGN% T&?&!.(XHA*5YWZ/;77V2YO<(>*4\78;P^* M4U%"D:T]M=1V*V]^R4%I3E,H]*L36L1U38_X<>TO37!J13M&JBI\]SU_6H$O MY"@-Z4&>R5'FVUVY+33WY2N5;@L>H:]T/:*3#7W=OJHU#Q[[6$M,/Z/ILQ*4 M&OF*:6@;8IX,%:VCZOWMLFTJA7AU=&@UXNT-['J&VFD=?/Y.[2([$ OJ("AJ M56) .L13%]]=4+D>OBG\+M%Y@_,VZCC2,+0%8&!Z\ ? M7\!#'2^&C?'(@>^%Y_0PV><>\?"N?D2!":+ \PJ!A?27D+FB*TI31%T+JY=%<+XUH8[U<8%VWYOY]\RN\DXA*Z M' -XGY.;#JR!$5S%+C,W]5YWQY9RN3.BRA32.QUG=1"-CY82JWQ;&SLVU+9V M+=YK\3Z_UG,S="R%\#GCRH0$0%,X[9;-G%W0ZE#39/4Z5+BY3NP!L*]E"%M> M6[O[X=BQ;9=4P[M^8,J#&#-_1P(ZOI@214'3OY/%Z- 6C]C0!=#8NJ"OL']DL'[\I>!>WS[M09"%[7G5K#L#08 MYE=8$(A[DH'X.'ITU$"\+1 OH,(%4-P_2BC.CG?<[8QC"=XSZ8ON%1IKN+6G M1\ZZUQJD46 O&WN#2J"=XM,EY_BBM6?U1,;$T'T[/TKE@D,C\]W0<3(EM1I# M3XUF%8>>ZA^D#CU=/9 6D:309-3L%\^:B626,<>XTV.T6;6YJ,N!B8XUKL#8 MTV7SCZLR([3;T.?(8N5$N%:KT=Z];UG3C1,;@+[K[+2U@6%K%EHRN/,A\JV7 MD>\"EX1_^5-/U[H_*U>_QT[TOB;''?\-UDQ<.@G(F0QX(&Q=F3&8>Y?S&TVY MW)_^K?RBOG\JJQ831+[[OF2QE.^DW2D"M1H% M/2(E2:+"PE#O;'D9-.I/X-?HY47M94("Q[=WK*4<2."F7RAPD]7_F-XW[2V_ M86[R_SQ$5[\#&T[",\:,]'M24N>;FFIL.=JA/#5 QEUW2@R*=%<'15;?L+:# M&V[.]_L5-[I.3*35Z!0,B1P%V-V$86QZ%D&LHY'OD)86D?'$]=\).JW@CI1) M'%@C,R3*Q#6]2H%AJ:B%AT/LRS@ 87!'!<$_335"T[;5EH[?E79NQ.(>@QJLM\?86 MQN:*)(H9RM>IH^5($&VIU5$R6FE-7=7T[3(!BR#6/JYUGXA695_!.A#6:?1/ M",(VC.5DB5P^,LE@/?F,592 ]NL2OS,=^\SQE MSXD2F6P=K9[WBQFE97E5W MBU?'?SVP;62>&P]81XY04G6]J_:U$H8!';2C9RV?W**F1:X\>Z&/%K?7] MR[*I7N]KYJD4FD(2O#K6[ #UDPV% M#>S_QFS<5/CH ZG2UYIN0K'H[1!=%HB-%$V\D);XTQ.^90=\3\#J@"63!W:Z MC''NB>4_>_2)>X*XEM95]78=1UL#!/=$$#O2]/2FINI=.:J>L6]$75Z3T)10 MD[ D%%>XI%;KZ#OW?6X2"C2. <[7CP.68 ?W6UVUV=NN/9.\6&"U[Y5#\I+A M(T?@D&5#4M8"UZXP(4Y#7:TK."L6\+LGD>EX8#.()C=UR*\.^=4AOT(21O". M8!TI"<)MM==JJKW^=IVDC\]?M5;8KY2;,50PW=165T[)R8GYJ;*-\6N'U#KM MZ4LF:SF=ZT_,>52X77O)E[>XDWL-297*OZZV<5Z:TZ4,FF]A G9/U=OE1?3V M=K>55; JHOJNY[;N[L.NEI06+1DP9'""9#H_#/_(8T#,, [>5W4).5'GR&F5 M.QRO:^2C; $A^(9^D]7KP''0PSF3H_GVM;;:;,Y7[7PZ2@_)UAX-UKF'M0.EPC"VE@>E;(@R MU&:O!2!5BAYU?'Z4X]*3-\T"W+$97B>-;)N3N?.&]1O((NEKG!JMT)^=_I$L M>D%*FO#_^!$=NI+R]0>%9!J9\Y2O+63?W##D/;=N.;I.H]*&?+>;:K.OJ]TE MQ;\R)>9N">-DVI)*&Z/=,E2]W5:U)=6P2P1L,K=G]3 9OOVVGIM@OND0FW(> MLQ:YK3OQ*AUX59%A1UJ5AAU)DM_5(J]B4Y38E;?:;0J)6PQ5ZJS257HM]HJ# M&JK4;]+I9Q4=JM1K8J?Y"LY46KKJLL>T'O]+"U=6[677..A1W_UK&:ONVEYN M\ED/^YEL4Q1TMX:G)0.K+LQPI%R[_MNZ!1!'?V$U(-: 6 -B>?R5[>5>.3U4 MSK"O7>B?\H9][4(?W7S65PW'-1S7<+SC=-.=::BW$Q*8$688HB?QU8D<$GZI M-=(-@U^E(T-[%5UT>WLJG9-!!(<1)^JUY-;;E5M4MT6(2 :+2;O2T8_$YE5;&1-L>I.:_,#^KJ$I9P229 10YMSE8I$5F6 M+,MN&'YV"?XP\.S!V \BYP]S52="*;G-:JNKJZWVXFX(%19TI0BF36Y%MKS" M039=M25IF,W>I=8IH)?,#JZ'"VF9IIJ8_G_U ]MMDK)!K+2^J0<*8<5N0;J2 MO8]FI35D;;Z$<].&BWZ*%,((Y"00ZA?3\4*T.4EX"YR!9DCLA",T9&Z'EW : MR\%*9DZ_H1J=$G)0#Q2TUKZ88OA5>K58#54[@*J/2!V?%!?(0P'*L9T0J-)T M:=U:@/Z$Z%TQ/9OF]$^09$X&RY!C;KU+>B#TM;?# ?!0%&J[ S*P7<\H-WQ4?R)*%%/.MT M=#+&,!>^9Y.Q5\#U)1._^FT L!*&H546P&1<1ZU^G0Y279(A"0)B)X$=\\?1 M.+16"'.Q=1:L?,2-#SP;_O<"?NE$*V+0$E&JU6^IL_P2<=3_&A$ L6*@7Z\2#&I3DY-1]2)B'D0)MG AEX3] M[XTG3N4^.8KR8_&:UE2UG!#*4K! ML6B9Z_(J/X9">5(R/=X]M==;G%Q88^CR>RD-1MLM55\RPJE&T1I%#JID&..W8*CX%IEQYXTOM- MM:=W3TB%W3CVM.Q:2@-2H]-46_WY#.L:1FL8S8'1 $M/3]RQRH^AL%HJH5E, M!_/S2IB_7ED0E7\G\FLA6GI?[;5J!T"-GT6+8KE9/VWL6TO< B>*L/R@;KPK M>DJW0W2=W [34>+EPFT/AS(V:YU5W@V5YX0U^JI>9U$=T$N/O6)4'"0G5C;:HZ.WHW:[_;+P MOK3;VY/VO?G52<^A58UF3VWKBPO$UQ$"==_L6@;(D0%UW^S<:I]MQAAL+9 Q M=36L^V977 ^V=MHW>V#]'CM,9AY]NY<5)MZ=^4X;[C[Z]% "RFA<6A?4]O=>;_(H1G;NP49N#"+$)LWJ*[; M2S&RYH=R#6?R ,1W.Y2,-QLU!SD^="GM%F2C2_=XNA[L%EZ$;Q:#"N'(#Z*S MB 1CVO*)]] _$D!95U#2)+6;]!A*SW0Q5&P6;.0$#FK%I0@*_]("LG,V2\4S=U2^UVYG,-MD>6 MLN=#[A-[-KPZZ4BD]O312?E*:[=T^6&*)T.!Z94'8Y<>D6:UC@E^WLZ4H!SOM#:9CG"X[&/XS)]Z^5(K._BGND;?A"8 M9(K'0$=0E1Z%;.IJMWE*DRD,3$V%V00C-TM=\I36LZD4SZ A=78>VJ]EO5 M?JN]^ZU*1?DJHM?!I#2D/F-$*2SB=%#24Y?B? MJW3C]R2, L>*B(U_&'CV]"\RG[PC@>/;LY765S\L-[9!%8 ?Z#'?FQ&Y&@Z) MM;MATEI/[;9UJ;J0>5.3B@092]LF50CGBU! MI.ET'[N3::N>=^:2(2CJ7([]E&+^$8A*B27H[6Y;U7,,WG(DI5PB62TJUR"2 MGTJACIV+WEUJ46N)WF:C5YO,MR$;/(*JMGE/_5^?I MB.+Y$7P\\A'SZ(G0'K(\<<)TX?GP"YHNTP#0VFV&L;SKW\WU?HZP!S_\,$KN MF9$=/))?>),+L:9XF0:K4YKX?Q\^2UJD!;=% M!$=+;"=#43\YF.4OV*=;Y M@=/,S-;T#9')5!S[;Q],O87/-241UW_C,'*&[S,7:SNO\#_PW^(5606GS:B* MWOCT9>-QN>8D)%_$#U.:T9G6Y7R1XP*?LZ0!KV8EC*[GT;.V$:DD&W\<_/O; M[;UR>?7/FXNK!U6Y^7[14 ;?+Y6'W\X?;BYO!O?_WBP^G-W /$E=T__W#_ M9^A8V *'S69QO.<[.#G+(>$C M//C<79D/3,":F, SHR#FPUP<+R;V *P*JR5]9T!I6H,G4S[$8_CF.Z9Z9S:B MI#M1Q%8R]4;ET<&R@_YN1G% ;H>\=2RPR!J'6L(9LO7@R:4KVLDAR7WRH_D. M'U$NR:MCD1 $@6R DK@L_*2$0"$A# M!,8)'L0KP4H!9^RX9H -R^S8B@#01F:DC,Q7@@]Z5VQG."0X@E,Q)Q.@+79R M:$8K%BS*A[L/!7D^CDA(YI]H!IA!@G%P@C-G%=^C]T!13X$'DF>':.O ##W M/,;5AO@(=W@VL.FY 5L\C("KE<%3Z =/]._?G-_AD#8K0"ELTM2X:@:OCA6Y6WD6"-Z? !*5+I$([B\YY$?1PK> M^6^>@[^EDD;<-=PJ' 0L"<[74R@PX.EF[FCZ9C+D8BLF>RZGI0\A"A62:78. M'\09+.^XU?D%O(V 4A33I1WPII_C^M[SF>N\XCOH+%<%-N[8I %'[(':2X_% M]N$A8/$H40 "7(%3];&MQYL#9VLRC*-G'9HN?/ I\%^(!U]Z\Y2G=WP??"PE MI\9A,79/^_/\J>E-W8"#>B4@7Y0W,U2>B8=7@28@UA&R@YBBF=R+0CDGHQ-!P.__+-O>+6S7Z#7D](8_NJ['T0C94!%@JDJ5S%VG5.5 M 7(H;!E^A8MY I./G5@-]7MY-^4+NVF6A6_J<]3@K],37.9AI&JW0#95.]Y MWT2!*T'7N -983D3ETF J74>HLHQ8NA+21W);*4K2DA[2M^F&- YS3.4N)P( MA0:8X:#2OJ&8#>,GD J.B>(25!W+5^Z)Z8*\N?"#B<^E\T?VNT^" 08@TR4J;(U5IO)%VUA0S8:F]&.&;$< S 2;Y[%A7G2[E,2F M: ZUE(D?P1^1,P)B^6"ML2K= /L$6ZX?QE0MICR1RT1<4'H.W9#(2U(! EJZDRI2[!XTE )B:'0]C. A#&D\9X M)RKL;PZ(<3-U%$Q2&<54%01A^#N9<$2^0=*#QXP#S4,48RG3?MQYY9 MB0PT+).%!Q%C-G6*HQC2A6)P;0)N"1#"-N$#8G0MY? @9ED'RD-N8WID[U^! M]PU-95XLY.;,+_3$1OS+GWIP3S^;KZ;CTFBM\/#1/V@_YP"OJOSVD.EU0RQ M#JRD9^#$+44P\WSJ\86(&:A1H2^?Z7\$VX=-X(! _P(4!&$3 MCV.7;EAX?,;PS1'Q0N>5>N'],>S>(_3C-@'U**#0C+]7(O,':$;"J\27-K@4]-N)F/?)B[*/B MYP]Q!C$S/7RPE8-72NF.-XDC9BR*H$E* MS WE<>2$J8+R9-)W\+[MGO+N$!?(&SZ.T1E4WA,.\CUZ[T @-/LAY0^\+C03 M,;: ]H!XJY">U,DO63>>K;Q:!OF/@6D3 'G:S9M'-<-[8A&''AC3B'<(\F() ME/SIHI1T-8>H^DYMB"%$D&Z(4G2*EZ;'+;2LE4=^ "M'/"7-=5$YH_:5#Y0< MF32O/O&V">,L$^*9L'XHW$,2^$^41&.//\O!?R4>0^$!,;$./7BF7FTQ/IW9 M@X)RX0^FPKPR""N@S/MO5-,&KD$L]*BK$2-/83CF8(D\R;F';CIF_ %;@!6B M,2G6(;9Q+IR(S(ZE9^5@L"NS=:JR9<\+_44QK@'%E>_1[8K-PK+($ Z"8\D; M<&E$T* ?YFX=%YRWQ]F3P,^EMUHI2Q=5)2_R@VKY+Y-5'2!')VL'9,_P+M( MT ?0(JH%&!-^)E3#00E!RI"*EH0RRGYK2C(9.$$9GCJ?RGS#\3+6E M*GD9%XZWJA2IW67GPB5+K#+=;> OO\L=?C=-H)3*N!Z:55MM OJJY; X# ?> MR\SO\"ERRV&]2K">]1_]4\Q]PA7 MK23+KC('+G/'+1CC-"\,0JKIV"1(OT(5(!_=:%94+8?X/4NDN$_C9IN#^(SS MJE,&9?'U*ID%5XN@6+[V)!+_Y)G#F.9?X)5B>TXH0IGH&/B8B1MA+\\?#)!! M0?Z$F6"@+0!VFC.N)AHEQ10]1GF^&)8Z=D+Z=9Z8AA8Q6,F.Q7)?S"29!=U2 MJ5U"%?& #%UFDC!ZQK0R'AJ#KS)'3W8)&0OFB2CHCHA<%GLBO$A1WO+6]5UL=Q,#]"O1$D;:/?X)_II(15.<(SVCA+.I1<#W K^V'!V6T"C<=< KP@/&?)W4=*9V.']\DA>6 M+C)) Z7;!G+W\4=\K#C,AG(G6&A^"8FUZHQ1G0]8C"9Y!U#9K#"@GYY9-K.= MV8WDGU.B"NV4(Z[]['U2K]94XML\_POBR'+,#/'CO[F2R3Z$;"\RH_%&@;#A M)#UXTBMS[/$'9).;LO^F62,8B[<(O7=:J$8A:,*Z70M_R'. 'GCTWKF$LPW- M_:!N0.K#97@Y=")UP:Z6L,84? BODQLX?6W?/AP.*'1 20855Q70)[>02; ,\ *<8"> MV!$GW$ZG=3"I-4,P8B47@H.2(Z(Q#M=\\@%1$_:CWCH,%OSA>.E1+[9,.#KP$$88 MPYGQETP[^,72F6=BBP9JM)AN=39=%Q<18"?'$[A10(0LY_E*TXY SX&?&OT_SS[$0179>([ M:+AY]+.%EJG#,IME+;/5++3,Q8'R;!2X,J'R5N5#Y>U9:Z/+.F',?W(M,V0[ M"7DG&)Z+&L:6T?N$@8CBD6<_9+C>SWEP$G2PD18E)VL\,E,2T8/JTT2 MU'MR7)?%#VA@DQG'3%K-B#5X(,8EA"1.+>5,)0VM95%%#)L+.71Z)8(OB5

-'V1&F:I427<"BA%P#TF8I9MD\9<(UXB MD;&+6$9DQK([,J,BX5=%!@*#==F!VG M&:7 +/C@Z5UE%"6T09AF,+U#CYL(@HNF2P/GU\@U)%5YBE.S@V:(T9-2N5:! M0]*<,.3:2:IWLHM=!5S-O9IN187?3E*\](W8STO?%\5B=LL>&'#-IR0 MYD2^)KPX+:S&V4*SL#Q.;!E?F*=X8SH:TT9S%Y:W![[--6@D"SYJ8#G5P9S2MPZ/0M,)X0GL1,K5. D&BM<1**P4O>H904Q MR606H_,S\\:T5X1#BWDR]:;3)12Y:<99,?(X8S]0YXKG9W*:^0G,K&#^Q1E. MIFEB] 1G:A962+:*DM^6%9%/Q'7 $H13BUBX0UA$2?&&#Z=LTF);A-JG=V5( M[(2.Z+DBI5+Y'H-]Q9-5$FI%55Y4;T")%R2@)N!_@1-#V^$"V1FC(P@C>\PI#3@(E)?&2KBG&BZ2 M_ Q&.7VLDD^S_,U0ZXV,UE#0W<9K9V&5FAE$Q7 8&L&0N5F44Q:,6GS5B49 M)P?*P+RWDA\\\YN^*7&V4*^-T+B%E.8K1!5>K".J9K+0PPB$]#FJ +A/V 4% MA5M:(0I6\0TM[ *!@FE\U6 =G#A[1E>L9)=\@+9PEKIXY(W%&L6>>.XGV+!2 PA8JC:S\U-*Z MJMX65FY34W&F[JYSJ"H;JFE7/E33W4T1(SPITV>#W,LT$ M'["J 3BHTCK#HDPIIO SLY+UQLC=&@"BG=:C?1P\7'Q2GF/0^='(H&D;#HUN MTYXQ#@:#QJP,#QT&/+DGD[L[G0=2J:3*.]2BV92Z>R*[!)9!8X%!I MO%]2G%WB(=(@RATJ,7+]06DKHH!D?+"LO!V]C=P+,B+344[3]B) U&E=^\$% MK='ZYH?A(_YIIR=0@/JGNF6+9Z!-[O^\L':IB#K+E.>NESG=I&H;E.\Q#W2P"(=L&<^+F# MF_[SJ_E?//:SY.QES.MIJ^UV3^WWFW/C>HH-<5K HKOGOZ.>!]5IKIX'M1Y) MZ>615$O5^[IJ-/-(:NGLIYT"%TWNTK2?V6H"0OL,^EY5\*S2P',O3DO*Q#!# M[?=J^#E(N)!*"%J_J;;Z>FFHL9X>S(:S5'O>OFI/@>C@"$Y)"2-'32.JK6 MS".E?>@FE9Z=73D?2PZ9?"?1#K2?MJ&VFZU2X4<^"4C GY,;U[V.5K46-" Q,TJ,L 3S MV=CCQ QP1H7+)@2,B&MC'JS-*E:24OVT<@(S.K.#5\1KP MW\30P9NGJ3:5ZB&7--.K7)322(O*YWL5+LVWLT;$CEUR._PMHJ6AR0.JL#-) MT4<.8H64%DU>[+'3:S3K\.-V(E@K^P!EQQ^U;>WQ>_,MJ=HM;'AS4MN_BMPM M747N:(54Y 3'J(M6UKZ6\->O_R@Y;;;6E2?8H'AD450\Z2B $#:QIO:M5$26NL:)T)+H8K@D2 M!Q:7V 6,B//\!8]3!O481E-M877'48T;RA90B3R,AE 9\BG$@EP M4DCCVTBKF+OE@TB&J)ZG]SLI,^>AW]+*U65V3P9;*SN[7?*Q^8ISZ%6B;M7; M1+=:F!6QAVF?YSA- +2P@6>+OOFQZ0Z" 'MX4$&R71A^IA=W;^N.AZVTS;_H MGWR5]$^^$HV>@1Y^R_2-%ELK6D%,GWWC7=$VR[?#<]YZ&0Y)_)C^D7YV]Z7$ MLY>\H\A]KW"HN%CRUP&%[EO[B9*OGU!W:-'\WI81A?S);,4:R:]YKK((D0HZ MIMDI^8)LZ+@"AM@6;KT,HB6 MAQJ9(@XH]57-2W/1[@N\\BZ8WYX&S&&Y#5( MOCV-W9[$M$T=;/I.LY=S>Y7AU%1\B_$'50*[17R[U;TG6Q8*2]ELW )-M:GV M>GT);+Q#V;(-I^]^F>62A&QL,%1= V,[MUYN"VS8HRC=ZOQSO/#RV5!KJOI" M]UDM3DNX0=EKRQ5V]Z-_"7LIFT][:A/T M)KV7IS?MDDV/@"N77YQL]FR#PMN!B\O3YE),S#D/JGQ^ MTU7-T-2NEJ>+;*J>[N4*Y*NOU=F&?#*2S?TZJ+0&D%&>LZ+DRL3=]];-U/QE MAW70EMN6Q7K?8@7AS+".V+-YL^^ACXD7M,C0G(CVKHL\XWC):1D;?_D@(#?\ MU3?>XX@,,N\]9Z]]H&\]HB:;ZSC+.VL(C[)3,*6YP7O[6&GUNEK(=8%W2O. MKS,)M2)]BS;68P:>/>=&F8_BE>]KTW3X3V];9:97J@[?H>A05A^CQZ60X'(=WTF13GG]KOZT FV_K^ M2A? 51>W*]T26]S^-#9(O7U-UW$FZ]SM*]N@A"3@KOT2I?HE5HORTG/Z2I#V MM0NB'!?$[+\K,D^J4_EY4KW9=,-^J3PN>Z=,EI'UJTH!@X0BV MY6-W/MO.*WP0_GO:Z\-RE=LMD5 \3U/]N;UHBSX*NYS]K(ZNHJRS:9%[J9!+ MJ:T7E/E] ]6#@W HE;]4J;X:?@4RA1J0[1,)%O'V9N=8LD\F<]^+!3+;5QZB MK"H@N8L#LJ'XW4Y3*_D0\RE1Q@G.ZB^;GZ F)71: IL,GF'GSSBG>D("/#O1 M&[%P9@.[W9WR0++H.[;F"[[D;3C@3%_1'F+N O^\/@_LCLB+'M$Z)+[BB%K= MO".J%I'SJ=4!&9L.>BKV3N0_%;A"%A>\%VLNK5!0PP0=36WU%E4*[I/4)1R4 MQ'2UCMY5=4.*:[H$>N<\#X8D;6_K1Z;+QU;GM=#=.P\LOMET([?#1]S&/W$7 M-WP3C[X8>5,B\.OSDKO2P+_ID4D4!#F5F_."8,I/,V-6;F!HBB;TNK[8Z%QB M8Z)%*7&L[!Z<''PN,^]43?-3D_GTU-DQ-O_K!T[TCI"0R#_XZ96 88V57*;K M*OZ$>*(7=B@FUN.W,UZ0UE23:V6K#>VA]3C;;W(V=G:7N*-0(1YF_>3Z?6@S ME;0?>9H@]+1^))"YE_"U3P263Z^#_P+7P5_#L'J)].,[PL% ?$?7?L!3B=(\ M(FFA.SDQ&R,WV5NE1[7/O[US3B_"D M?H^="5:JXR\\8O^*Z/$K@$9$<. W&< N7FDCM3NPXJWW_?:0;XOR]:70.J%!]3VM=,\*X@S.5 MZOF=(:F2G8,)[\SBA$]QPA'LO>9Q[S:(OPR7RNV*J(/-NVCBUKJLM-.X^[;7 MM';8?.T[DA@J-XS6@IKD3;FSG%(Z"1T*RV*_S2XV.QWO-K.=\AQVP(^ZVE\X M3'$W_+A!:ELI_%CNI4DT"72]J[9SAVMOP:!KZP8'4TRW[/;*[)NG@=UFJ%IK MV\S2O1_ZQ@+SL*KEUJ03B0RM-;NJT2P@<0^^/FZ%WIQ.[8.W@G6L1",S4IPP MX_Z*?#:BST0WHQU;D>(Z0W)FO5LNF7:>16_$?25G8UCW*!0&_N,(GL:>G9D0 M:)$@@I4I3D3&++5+N$,=G"3X>^P$[-7H]J2?1)4C),&K8]$8"5]+B,1K,S>4 M>!9L *L!GXE' CI-,(R?T#V*CPLGL#C3(SYFD2$K.-[SU$K3DX%_T(&$5NR: M 3Z%>-BR$4X"GA,1:^0YZ%/-JD%*,EC0#. CP5BQ8_IQ!RL.0_IWQ[/A;@(' M+M0:F4AX)*!>S:=W^EWN6\(%PL[9+OG80P\((+T#CX2J$I@38%VZ&B"%9[HB MTW[%ZV9N3/'Y[#+3#9. P+D2%8[9,UFC0^'1%/PW0;VIZ,TK@Q*># M(>&MZ<'EO6J)BS [Z'#BA\2^'9;MT#3T?!??*F]F@:5*;[317;!4N*;TR-_@ MDFR^)OS+.A[R##4@M;PZ(6ZZR.72URXYKCOQ--#4[L2SDC-;R^^ M\#(VL 899)9]%A(+E_X&W 9P\^'K'R3PYQ>-=[/VU0I^%IF9/. $KWI10F!I M@.U7I)GDJE4^J-6<3%S %1"#*@U"^_"! &0$Q5,!+VS*:ARR%H,B4,T@-A0A MIVH,5EWH.*_/>D[IZ=M1Y%LCU?GL>/: M+'L&3?0Q6ABLH7Z%4*R:<"..[B9S:)*Z;S8-0S7ZB[K@U@A45<0HBR3Z:D_7 MU%YN@??^,>17TQHY'@F8_4/$B=4 L@) DG/+?E,*@H"\Z?;4OKZH,6B-(%5% MD/)H0@<,::F=?EYL>_\8PTS@@-92L!277XMS@F]=P^_"3%,$# M1--JJOW*^/Z@9I*=SF3D< M^-DE^ /0TF#L!Y'S!_W]0CHK+[V]JVI&6VWU93M+2DZAJ&9BQU[ J2P:DY<: MWU'U5E/5M!*]N(75$2ZE=^VIM75U59[7B-?5N>QS0Y* M:$;3ZJJMUGQ:QAHU &60Q6XZ8V'ID>6/QTY$G36L'.R%X)PV!SOD47JT:1"* MUI^9DTG@_Z!E:^[[JONEY887R=/+DX#-[H+2D[EFY9D.0Q7L>]^M4M][28)[ M6=W$PP@8_9$$XTOR5(E:B;^&P!7BB;.:ZM/7KJ@6H0L_PY4KYWX0T$;Z(2\6 MP4=L>X1[1@3SU71<6BIBKN+Q;T!#M\.+@ !(E,C@R-_Y//YD>B_PT#&",1(T M;3%'EZ,, W\,.\!/J,J;$XVPW), DD7*Q'QG^XNRE9@? "\FHA34:*I*IZF M$.@W%1LPY-O-^>V]$M"^T&X<*J@Z_KFAW,P^\\UQ72P\]9X)6T+N%Q%J'VZO MIW]O=. /9#@D%JV"_4<,("N02\%;HCO$:E]BQ0&K:#45#QN]XN=!A-J\O^G4 MI@! 7%:J2H+0]^ ?$Z[A317FSAP?OB8MZ\4GQF$,W\6J6Q:@A^NVJ3X:LA*V MM,26W@I^)/.$@'CDC2[$B[%H>,LVB?O@DH >?G&.N#8MQW6B]\$K";#[:!R% M$9P*H 5KT+>%?K:LIK&\!4HJNO3F2RYSI#?K2^VG:\J,E)VA5>#C*=4,N#;S M[Z1*\^ (+H'E.,1J<]#+PE&VDGS([X^?S-O(L48I ]J!^0;?>C8=+V1 ER+[ MS '2LE,@ @ N8KV$"F\C !Q-RY3-=U:X[L$:;'C$.[P@=)(.!!FZ$0\05^7@ MX. P9 ^@39>)DM+P#,/NZ#/*D^N&&JOFS,F;46-^LH%RK-.^@986//)&,O& M\&0JDD.2]&6='=Z,@YOI'[C46J 8[Z=^>, 7=\?6AB:A98&^9W]SS">D=X>$ ME2LE[HF#YVM5KI@M'WY1BE419X9>S^WV$<^A"AO=0S6Q)K&8N-=H'E![S>X. M(H%K.UFU0ZL(UK:-[(KV\!C110=L\;0S1F[[CY!TJQ(AF4>V"YRBN, Y])_K MU_-W_.R%:X;AF;B'2WX-4OK4=+IJO[EHEM,FH9/NCOL&,H[Z2"&?$C2UW<,\R#Q*V#M.T!#.FNAPG%GV6^$'/489Q-+I==1^ M[N#$+4"C[ N38V)4/#6M;."11D*M;A_;H9>#-K+&8$PC">;R: >9FG:@AI<4 M.E.;W9YJ+)R3NR58[8IY2VNIAK8F3"Y,1JN&7YV/"KL. M_/$%O!>W]"\G&@GKMPK^90"R?I)E 1<59EIP'F+<#KX:#^&<:0(5#8@3U\5( M7NAXSRY1,&-G@K&<5VR^$SICQS6#M/4V;;5->X./\6FV,QP2)'S1,I8%WS%$ M)QK"AM/QG[DGS@:"?!8&I%E "CR0//O8.?MG2CKNNZH\$"<< RE=FF-,'U"5 M:S=V;,<*1_Y+"*_JMGY6E8O ]%C#CQO>?-MTE?,85QOB(]SAV<"F!^0]*P\C M;%4^ ,@(GNC?OSF_PR.52X(5QG M$9N1GV[_US1(:OMP]IX?*4CQ+Q@;IBW:WQR,C[%0$^M]CO2F/ 7^"_'@2V\> MSV8(2>9@IHAS/M5BZIS'ILU:F8\"DG1+9U?.1B&*._N2]"PW715H,8B18GC2 MADD"/YR8%E$^ Y8-,::4A)H4FAQ&UPK/8QM@R1HA6?U:3&8PD7RPX3@LHBB. M7#JAR><+PP7=#CFN[#Y(59&6MUJ'6]H%5()VHU^Z=9,;@%J>VI8&IS+Y:ZNW MH^G[V,N:6MB^CGS3\6^=[?TV#PF$;'A*)10XKS?E9D9G63J!]3\/T7D<>@_D M^2S=N)22TZ;::>E@Q&PW32K+)25/\^,'NQ6'[&:)FUY\-@6MM(O'(KU.5]4Z M>=;K7CAZD-$"+ID6L.;URN==J9R;;)#O3E(7Q7:GIW;Z>27CZ_%O%1A4\AJD M\E\IUZ>KK19 <*];%2Y,K9L*:1\[8<]TYW+\*_U>3S6,^>3+3>5J^6J=#-&Z MLU5*Y6VY=Z^K6KNG=G/O?G.FEJ7E5&K4XSJ\*L5GWU2U?E\UVHMJR:7IN[L? MDUB&2ER=88_K<+84 &^JO4Y';?<**,B)5[P\+T^YQ=\/PJ^6N&V3\5N9@EA; MT=I_9D,$(^Z*0Z]BID*X&E& &\^"I3^:/[9+H4_&G-D#(!%+,\J(!6A-X>ID MJU9@V5,Q@6()]>B?]3VL<+X=)MOG^?GGQ"-#)SK9#'N0H'+'=96>('Y(8[@. M.,4^P@)/%]W!?_N@?U@>EY??Y7<-!7#KE_-HLA*9/]+YG%]VE@>9JQ7NMM'R M7K(_"^[Z6(DPFV#1GQXTB(NY)C:-V^V7# L8)YQ[^'KG!&OY/6BZ6GYO@/5% MP>$SD.3+DFTVZ$VP,'.O:H\-Y??)Y0\16 Y54@TVD*DP!432 MQU4]0QD[\2TL<.8NET8AW>>9E(!9OY4KE#X=HU1:<:,;2*K-;E.Z$HEI0BMG K2F5)O-H*#102DZ;UILOF#!+YMAJ,/7\]J+;0P;V]R0<4X?,T+ M.B1FWJBV<#>.H/4$]#968S7E=)DG+J' =.]^H:T(H!;MI:)!)9/;I KM=3Q* MNM:3[#'>VQB=4F"C>MEM>S(0#"U_P$ %4*1PQ7E%1ASTJC3B (Z()[&Q2F/' M%HELQ=+*KD2G]H0N[T'8W1-X*+9EI@_=1U%LF<7M R68VA\F/*9N34QX=%BF M7H29>J+!?@A:0!SYP3MK=Q_YF4]EOC[7CC_MA4^_-UVO7'97@*GL.WGY=CTQ MH;P 4'<:G0/*IMO!6M<6=3LXP:+9=(M7:6S7NZ]@E71AO3.AT&URZH"'XV@N M[L$Y'.<*6?C7:6!8\U;WW]^I57Y_)Z-0?Z=4 DVA\P*%:9 -#M+CGY)@Y:O> M[6XG-P^(T:R@W$W;1&U/&QN!S/[[-.UY;F"I1"A;J6\;';6WD@37)[^ML7S? MR$T]-EG][(Q6M(">)U)2\9<\?ETAQ-X<6E>X-!>0=;YC>U61GD2GIJ9V\ER: M-7KN%>V*DH7\5+C5 O4$T0S.GEN1U%(E<'X>;0K&6ZE9)"R>@B,#Q$Z"'8^= MR%8$T.])2,S_W][5-K>-(^GO]RM0==E-7"=K1+TKLY)77$R6_OI MBB(A"V>*U!*D',VOO^X&^"*)>K-(B;)9>S>1)1+H!KJ?;C0:#1^OX@+I4S=L M[5YC__E92OA"73$E&<5M"H.=S MZ/ 2W'LQH[J@@>G>"PQ_ZG6 S;&L)8Q;!6,@NWJ\BD:Q;K&Q5OOQ@J<%NE8O<@O\J$"WB^3D#63= M[(C"\T"RO:7H9)F.SW/7OBRIK_GY:2<7E(- \D0IL<\K"Z <2;K/ Z /Z#W. M4DWOZ3\AVRJM&\?&]:( .#N#]X-*"H8ETLV4JUN(=ETUWX8^7R>_E\TM=P[4 M5XNI_B4_%"XAQ!X;/PO!NZ?+T!H(/$2&FO75TLU_*1?LK3VR4,I\]SOX2XR$ M9;H!S%Y41G;UXB\[7>?#E)('ZGXR)[FT$&=?"AE$+ZL\=I"0M_O4LHW.UX&< M75$WF&N2=)+?>0.CH$SZXNK8=G<_+=<\H[3ZMA<.@U'HX%$P M+F8([KMOLATNEL\D"(1!S'AIJ>.?:DK>&-9CX6 MT<(@J-EK5?[4B3!HKQG/,:F\O^'P:(5%"HLLRP\Y=FR9>Z6.GRGV*';_T-P6 MAC9&J[LA$Z5"FT+19O,*H@I'&(V3')N*+,I8:8"&2+GGZ;OFVXP9SZ7W)_M4Q7['!$F8O>;XK:X M^'.SUJOPY23XLF6*\UXCKM(O8V1_',%H[WSA]5QNV=QHF@E/?_OOB>+ M PVCUNDW"]L.*G1^#LHXSYVB(X/.?N*2WX)J8]WM\T6:+.J95D.$\5%KR,YH-H];.EI678"_3J-;LK8+:5QYDG7X]R+&K"LODO J! M22H,33O=?JUKK.I'_BN0\I>1*8$PG_FAIGU$.+],F/9&"2X5S.=?/V'K^?U\ M6_[&XY!^5 HAJWJ"P*(*4^[:6,X5'KWG+A72<.^9#$+P;(A3Q>TAE?K3+'Z/:GGH"XLL^%I$^=87P]IQF[8E/H%[M(]BX 2-C/O3>'*8.U M28'OPB28]QP/X,#KCN SH%X$.(H3S^>PLGW@SAQI=:D+(GI=BZ;/J?L9#/B: M$:):%H!ADHW"(/3YRD2X-IMZ.#Y"WQ@T=4S7I=D+L/K0/5;$$"YU*25^C]2X M7&\UF*FW,X8J39(Y\4(WV"1*$;'PK9H(HG3L/<(H^37X.71L-4L@%%3_7!-C M^B!%_H2)$>,@O0 ?G&I_K.'9CYO(&K)'X3B*09 ?+ZZSG01N-'E@1;U"*V=A 2>2(6?@?A;!DUAO4H\.]79Q+7 MK!\(244B6WJV40$$:FN7?+YS#3KHPA M8V7::ND:- >21N@_'06+Y59Q"S3]^.NX5SA%W&(<>P[9S.&<5/>1I(?;ER9:VGN^T GH M:!C( * !6T:;B*\ *<*+SA MO7)M+12GN'F\R$I@_7Z]OV,ML$Y?5Z_;8<7>Q$?/I118T:3N>)/TJ4=TI])@ MNP9%8V%Y:E"T6V]FG$[;!@7[#6=>TJ<+6FT^9J9(5S:)'3O6 A5O??4 MVC*=1K?6[JV6LMQ;6_*2L2<5 CMTZC))R&O>UA0?/6S>VH->K=5>#:251BT_ M+*@CIC:200*WG_L+7@R%*W;?Q#BV%=E%C]."\%ES^@,9366[W2*71U#I=J?6 M:*XNYLMF_4IOZ[:"P),GO0 \P'H]_?RP(/]A/MR*KSKT!XE.WOM7^9K^*\WK MM6;U.*Y QP"SDH,K4/"F6T&.C*%9$-2;PAA:*>EWAJ7"U?RC?SY-G;LTY?G>%NP9ED M3!UOSCE3)Y9N0]\: ]$,'9PSE,G/+L@27AO?;#3:BYL[NOP$R-:@0[LTD2LR M6H@ODWS2J@:WA*>ACY\"C%&:(.'NY;]#Z'(D,&(<#9UZ;QH-'2Y[HN%%11>6 MF*JPJ-X4W?0B!C-GGA.Z 6UWX3:NXS .7-)=TM&KR]+/= 6[I V;1VA-G(I*+^6\)!VMDT=C,>-;&@;9R%Z=<*)M> 1 MM_SQ"]13?&<(]A[!Q)0PR#Z>0XI&32]379UX %"5VFT&(G37V*$MI*(^H369 M!'/[8#"8PG *73V*8&S[YB,0/O*]B>(Z)2K7H1]MX6^%QAK;??G"[>]>I.7' M6*<.FJMW\+ WK_KU;@<'\)4QJ ^Z:CYHKX7&^H)8RXFI KPF=*"[66P!,PW% MEE'OMU;96MKM@?],U54WSKS&'CEMA-'A4&@CEJLZR]JIWG#VCEK7Y4CPW-VG MT,>['6FDMB48'+0\-;JU5G53+#K3F__&2/8P%PC->9"[UW&[V%N4-8P(?! G&,&\ZX,SOC"VVHJX<6#?[B M%FTJ/6E=$^I59<:G/J<$.I7,Y7-399>HL"E2]QD7O"[\^(W/.,@&D&O'9NF' M?@R\ V0.(*';V.3$C$T@1N? I;1/L0W\/_!YVHS13K4/P.3YRYX%_=@9I#M+ M&J?V,O.AZNQ'S)FB&#]%\T,HF+YCMA03% MN%%EK35!=2WMX$MQ&3 QF7!;J"0=9(?RW"_XA3 M -\[IO5P>6>-/0=E(QET?& "8N74%I(96+3K'F7HV6H.XL$GST:W$\UYN#"_ M[!%DX%6[/C"8K1R9V&%YU:HWFJEOFVG56: *?#VN5)5B@GH*04:2A,+XQB\6 MI/,J\:),"Q\#WQE VQ&PZ@1=&2)2*S^/,U >D&]A83ID\M3*-60D9&D2?2$? M+D<^1ST'%46!HK1#TFK*)9'DW&D*R=T%.X@>*FA_++QZ^):I^E&_J[/O@ =@ M>.9L+KAC,ROTZ:Y)QNEBO 6)UZTI 4U1R:,1B/J,U"*:+TH&]@5! 8H[ -), M>*'4XT(CH12,_^2^)7 J8KU0P$':@5/JXZ$A2=>X)1DU1)I22B!XN7O4SIA& M0"#0^E00."O9DX0A-6G0NTENDA;2:$0CW.R2?0QS]0'16P/:.DE-VOI^O5=[YJFQX]CY24XDG-);)^*C*? MF)(2"\L!&YG?LH%_OR$K0,(VIYEO#4ZNBTW&$'.5P"4.P2<8@<]Z /!>UN+O M\6W6,Q(@_K*W4I5!8_*FH61SG__]N\UZ9Y U]R=!@(\+3I70RX6R ,":[%:< MX.%V&1CN(@/1 'P';\K8K/BI.;V4W'H+#C^.UNMW[>12[F0'L5+ELLSBH@IO MF,7&ZBR>5BE3J[BRJ.0Q<#GB_X^8_>-8Y=9JRD!EDX]LDW>;^_RM MY_W216J_03^?U%GN4YSS*SA^JB)T2V!G] Q,TEN2S5Y]4#2YF\U+V4;QG]'^7I2$_S':*KG%'=@]A_>$C'S&##(7#Y23 M^5LB/'/QN44!\K5!J91N=IG>!S>>/+X%% S>YRC#P;Z*1MG4R X#V$^E]*1 MC#S3D;J]6J^SSQFI[3AR],+-IY"-,RAXUNEL+WB6H[!&T*F1,P).PLUM(OQ# MVE%!@2=F&QKU;I84;RNB=LZBTRU0=+I'%9W86)&MVBHL3[_ZP*BUFZM)J6O$ MY/1&4N=7K/[W9C%59&_9/C>;^'?D4WYV;REM)J,*6"$IS-UN;K;Q),;O]!!5 M=NNV]M11IMSM;N'6BN/AAJY1[Z[N]AYDZ(Y1%[HXVEB(_F[C$:]G56[XF286@4_=@]^Y'?O8[_6;&<51JIB'^4V M:CO$/@HXD][OY&;<*NM52NM57.QCC3@>;L@Z]5Y6F<=J:OS. 3TQ M404L5+T/)8\*V]+9*9%(K@0WBJ@0UZB"&R\;'2-I*Q5 #NJ=7H6/56PXU]AP M$85Y*_0\-[0[*#2\']Z=?6AXZ4R'T:SK22I=Q+B5=\2X1*6%CQ94SM6Q;.4? M5#[)-:6[Y\.^N(M(2QQ[SG_)WJSW"LK+*[7XO)3P=&YW+S9K#:-;&W173TUN MC%"?_;VT_^18_]0*5?%G$6?MJT)BJO*S)Y.2;50I"FM'FZDR3JHZG.,]4ITF M71-.EX-3OV%UJW#QEC:I:]#ALT/3H>*]@RNX1O4U7%2J[,7:A.N\2G;IG*4CGSA6ZAL]U8 MCTIJ+PRK*B[J7L(/E_ LGZLR8KK>+7O3[ UPX8+?KM:8'=2:G>6?FO6+U1)9 MKV5<;E=7,R8RJ1J=\/"K M]+T'^!MQ3R?ORG+-WO?5 H/Z_*'XD^-5P0KRZ?CA$)""+9;[7+C49%&KWF9- M7K<<]==Z>I6F UGPNP3-_N_7[=>;'1@Z>7B:&FLW2]=LIH3IZ6?#VNWE!>$. MO PVL:)]*/*$WEX.EB_'R6+N&^H8@LWB4;TU-8DTZKESLI5NM9A$PC4( M[+.^:S3P7LHC4[QR./(;GYB"KE?_%Q6%!5X^>$DMSR]BM%3Z+=:4YA9-Z35/ MS]WRT<^G:DC>ISM?:>O8KS>,R^B/0;W1V%OB\Z)LXYT^FVVD"I9#EHLFP M,Z\-6UBSDKXKY;D9I6!-:U'F"N5_MW6>V>W[^6K'EU_[#6/0:.16)G]=O&=? M+"A!K:TGSN7J'"Z%+&*828$+%N9J;G)\"IGRM;6^&O7!AEI?^R)?48BQ@X(> M;5(77GG/@1.RF8T!F0VC41F,(QF,0<, C,[- M8G369>95%J,\%B.9\[4FH[^Q/&1E,DIG,C+T.(>,G>Y.-F-U2]G8<4NY$%." MU@.-B%$9D2,9$9 \ \4OM]-+K34Y.)45*8\524WZ6C/2S:H571XS4MF/C2J< M1ST (ZNB2>DMB*$L2+.R(,>R( :(7S/'R%6[42U$RF]"DEE?:T)Z]4YE0L[# MA&3H<"ZUT\[2A#25"6E5)N18)J0)XM?*<1'2KRQ(^2U(,NEK+4BSWJ\LR'E8 MD P5SB/+MY55E*PT6Q]H(]!4M"M3<2Q3T0(Y:^>XVJ@6&V=@*I))7VLJ6N7> M*:],Q485/MQ4M.K]C6I\7I3!ZN=KK]:7!SGDZ%@9 M)+PR>%E"LR'K*\\-E[()0V4O-R)(8559GHNYW+NR3"DMY-YEJ2J^E-5_3F9$I/K]XJLQFI[$?Q57_.<3%2 M5?TYN@7)N^J/T:PB6N4W(3M5_:EJ-IR)"2FHZD\OSY3YJKS/^=N*_,O[]"I3 M4793L4-YGZIFP]F8BJJ\3V4JCF$JJO(^+]!4[%#>IUV9BG,Q%55YG\I4',-4 M5.5]7J"IV*&\3[6J.!M3497WJ4S%,4Q%SN5]#*/:JRB_J=BAO$^[NN3F7$Q% M0>5]FCO=4'"F]0H6CPE6Y7W.QF#UE+#GME]25?=Y_O8NEID-Q7WR/&U2-EFH MK.4F_,AC7[_=VFXKXV(E*X(&?R/7P@U-]>HXSB)3P@*3K-/)&KK,1E0, JPK MB$8#__?ZEYS%IFTH'A)JIC!_ET.?FP^7Y@B>>6LZC^9<_KI,90MUP+0>[GTO M=.U+W=.@@?^+".@CW0LT.\+EES&?$9VOWQ5=[&034M[Z?,1]G]LD7=^AI?<. M?-A4E^PUXR V4V@D\$-^2+42JDUB=.K:5XEI843,VZ0T27%CDW]%'-1@TYVS ML2E9-BZ-A+,T[@D*O0^#'ZZ0,N3VYCG(QSU YR#30,RFF,@^Z'(F?2.R\_T;>SB6OC< M"CQ?UC5@+8'3 <*[JXY]!T"18(E/H6*98HI:UXUG1%-WODH7,:#E"OZS1O$R M)P3T=1+9VLS2>WD=M^OV:KV.D:%I"[6O6B3C.='?S)/^3K_6;ZVFB"_7[CJ= MGMV"XP047;GV#4" ?^O)P.CQLFAB+]+$;S&Q M#!V\\X0P?EDZGAS#EU/0U^& M)CP;>.R.*P5H-XPW#Q<(Z(CNG]&!,S[H;8JJ:F%19VSF.2%\B^@!'CK\8Y-1 ]T *S3\/^@=J4B9G.Q>D 7IP8<'SFR0 M,&38<[$]%"U?@ F-[)7-@?8)N((V:#IXQ,B_-EJZO=90.") U]N<3GWO)\AQ M %XTCNF,QG3(+3.4/ )=">N! !$U]$4PU]_"SR(9[?KYC73"+PTR,7F)" U\ MS;@,B"_V""N0!>1&' >8%T.UR/GJP= 9I=+@#R EGQSO\2Z<3AT"1-,IH3(/ M(F5&>AD2+$%_X\JQ*?W=&/ %*V^'#K\9;6,;->&HO!=?^5!T7%FH]9K MK*MX62H+O[SE58IY?II!WS;'+\:L;[_A*2MIZO1!Q!]N*$/3^2;D@[QR[1^N MQ7WX'.,]P"N''9/TPWQ/U#O4W4J%$,_@>H".5' MF0&T?<=QHQ&?\D;L-VXZ@=H@^"V$_N!7?X97(;$WO_UV=X'ZY)B8K6.R:3AT M8*K'Z@T.$W_/76O.?.Z8V'S@46?WCC2"1BA%::&@!5Y9H.6TANTK:#Y80VU_E N%?B^0S#O/AQ@MNRPQ ^ MXS:S$@I86X1.H.+U)I-\1C%](?V0A4WVFF!6 M'SB02_N_(R?$[%_L1,*$BI&P3#=PYLP.?;HC;2R ,9"+.L.]!YAYW!+7^RMB M,@7HHFN4]-@RH"JU+_S7_^R#+_*K3,B$_I&S44P-_$! "?)/$Y&B MD>"325 M.-"&HD!O[\Q,RX(V%.>/.%F7..(J&\N<3F$NB0WI>(_(6RP12)V>$"6@Q;*T MP$(SVCEM$:L3X:*]B&:H3%LQ7_B]Z?QN!F S$44_4"XLJMP3493I;%IN7X%% MM(Q.(;AJ1$-)Y+-;W[,XQ[QG^9:5"E+5'6%@P_6?VH8;S4T7R"6L;IPY3\ID MNN:WIH\6Y1^>0'6 J;Q#%,$4CB\"[?AG]PM T3T)\CY6\;LY!S+9-5> #8Y3 MG;U!-4']:#9^36E+T_CU@G)+AYPKAXMV(TU09^';ETCA'!H:<=<&I5]6 ,(^ M^#_EK@$)^"^/\\UV&H2O\./-Z-8A\SH:[<-GG-;RN^F:]UQ=&H=\MEM-!J0_ MX URMH>J'$YJC < J\LLU-FL_@1ZXR'9A]Y.5UM4HNW-UW]=L)M'E_OLRYG76[72Z1N\7!%WVYJ[^(:BSK_5_U8'5^L7"+%_1K$23#$P> M4PW0&B@""$U'P@&Q0*OHZ\L[]QGR+^:C#$7P23CPQ378PWT&_8Y/ TZW(S9; MY/L8Z\>8A'FBDFI024@HF4T6^&KJ"S 4 Y666%M,"TX+8);P+4P,S7DT+^#P M(#/Q@Z:4'A@J&CET&DPV!K?ETL>[ ]//#4/AT 6?Y#C22H1C@ _8.O2WX=.%T""+K'K#OE-Z4)D%.P[IY?8YWN MW_"L3R17@& !> B.E@@93G%I%XS_]@L^]6Z=_"_P<:?:3F1WH>C_3C)SY3A< M(:?<"SJ!"$63B0V 7FB2/."+&9U&@X$G@T@E.!YSHF05)>?(&+B5P#1E_5G* MZ53#ACFUC*L$ A02S1DZD:HY[:?@DW@(!_[$Y:O$B2-!TQ-;8W3PB(53[!!> MGV(2#3",[HYRD$F,_G[M>@%9W[)?X(-DF*&SZ 0(YLS,53N60W0 =P8 MYG!3K[5@D&9F ((_,H6#*1;*LT0^-+=QT^F92 A;&*_((7S+WI@73,U5"!;V M%^[.N ->(I-S"?#P*WLSO& 3;HW!.;?P=P>:\_$C^ZLYF?[*IDXX&:*^J198%Y=IXS4^OR+"C0&%UG5X3/L:@JX5HC_]H6X$R M"H'$FHL:H.P_9:1'IW;!HPX>T:E.E 9E,E(X_.SR>^ 8SR*!/@B*-(Q\;X(9 MZXATP(,&0214+UQ3V=F6[JFN3>MI\ 21!%?-M12CX"& 20M6$$4O%"(XF0'7 M7HA9S('*''T4X" _CF$(DK;&IAUSBB.B\Y\E)N11I KS3'V!*?8XIC(*4\'T MPVNN3OBGEA?,M5XJ1.*1MG9IDNW(T8^-7M*]T!X? )8=(I0M$$#A+PK3*"\ M$_ P"]'"@(=P'QR81F4+:FDX@R^X4TM#EC88-98R2O%WPM!V-PMR@W%Z;:0QTT58 /F@0R0Y=R M[:5J#:%'-_+]]^NX#34Q&F2T1P;.T1@>MS2YT0D03)Z&(8Q"A$L"&07Y'@6. M](SRH?4P8SPW!/XZD>:E!P/C@?";-NA:(.DCNW+E(V)'"O5B5,R-4,=N?>\>2(]E1@4#<6)Q=:S-05HI)_2 M#JZ#%Z;?BR/TJVS7TGQ'@_DA69Y >RHQ4M+_-L-\ PO M #<'L06>P=S]SATAIG4PR/ 9&_>6BT7=N'IO]1 M9[?<>JC%A\%L]G_ZU6QZH*6[*2?*08/U8(%OZ.MEFT[%Q^CS- P(O>]A;4]G M)G"\\#DE;V3]X3.>R\)%X5P=3EX,%)<@C+GSSA# &C-:$90LC1*.!^D&I38:@RM8[=[K8#Z>-X/%7ZR/FUN KFA*_QU&!_P0D]_J M=G$-AT=24&,O3=M>DMR4\K]1MEIH,C0VXML8MJ MJ63^; ZC9DL$E*OP'H:& MM1JIPU0(VPX("+,]*U2'#I6])W2 EVZLP,/XDJ&/8*G%)(I-A$]Q$R,T83:L M8Z70X(*;$_1E3 ZTJ%=J"M_;>C5IK6D3S^WY2PUH/II]U<*9':39#Q!3OOT$Z%W"N*E"))PU%DG6?BWH,UFG3F"=0$48!% M.P(;+5=VW9USF=GWB4]'&WK)R1ST.?6VH#F#58\Z8H9^$U>@ *ZI+?!@"_06 MIJ !02$]PN *+ZR.0H"9%*#$-K/9,%KL-@1%0Z=1H0\N+M9ZC.@J;O81:=96 MO41P#R_B.!.I\E"1C"VF&K3!*.(NLJW^E*&%ECOD@ M7N.6;!R#C 8@@!6$6D"LL@]=+KQ87H!(AV31'\! HX"1I%(B9&+,B8EK<_"G M)>!+&:VDU?1<%JC%6F39!R>H$946=+8M'[)M7<*7BM>C#(-? M)_AH(Y!$JUE4+<4AO8G2!C_!-VXB5=KCB0Z/IN.&0D;21<(Y->=L&FWEI?95 M8&GKI@,$ML<7!F:W<:&%M]HB7;=&7V/XU2!A0#W%:[&CE(J&K(X1EB)0(YA5 M X$9:8FLHXZ"V R!6/EB6/7NC8Z(K,,+7"FV+$B*21JVR36.P7XT\+2T4/ M[0YM$8%1G9"XZ=4!_AR=Z:4'/9=^GJ 7;WF7J2'WM&1&GDEJVF<"M%OC;;0[ MD/@IZ(29&&[8QTI_=@$)Q02Q#W_9QRJ#7 DE=5/*ZD-H!!K^C<4A +" P@=< M.4=BJ+$V&BPM)K025R/$0G=DSL ( Y[84!IM2 (\;BM[*@DP>=2%C!K96)U M\ZEIB;:8X3]#SY[CO^-@XKS[C_\'4$L#!!0 ( ,(U#UV+ ML^78SISO,K'*=F;N:FMK"B(A&1N*U "@'_OKKP$^1!$@1$K,A+.%+XD,-!K= M:'2CT6B [_[VM S0 V&<1N%I;SP8]1 )O*T1WG4/SHZ/.Z/>W][_\.[ M_^CWT91%?NP1'\V>$?$7F/4Y80_4(WS@14L4!5.[= MDR5&P%S(3WOW0JQ.AD,)_#@91&PQ!,SCX?_^_.E6P?42P).8]Q<8K_(&<\QG M"CRM&$I:,F#.A X(A1M AE]-?(V/CX^'JC8'!3R^V$2;CL#A,*GL(8'9@HC/>$GX"GND M"8X#H#[WV,?I"TZ7JX"\2,ON&9F?OH!A]/O9 MR/VV8F0 /&4@+ J@625?LGH(33BPI.CYM.XX0X&9IV'1)@0@B5:$"4IX/K@O MAJUPY)-Y4XZ@"0UI1_D)\*PI/]"$!!UDQ<-!4U:@B1<'WW:N211WP *2/[[< M7.7HJBU.0ASUV6\7E'M!Q&-&QH=3X)DP1OQ;$7E?7R#JG[[8 J/(2.E83\/W MH]'H8#Q"?;1N"G^,#PZS(\'2.)%JEM4Z/<$93VC:+Z&>86*W1>0!' M-VOT63,"IR]:DCO\1/A:I!>IMD'Q&>=$\+/0_T3QC 94&A3;9-D+8?4<>6N8 M(Z,!2CI#JK?-F9'U*.M0TB?"H8\*O;J9T=B>U+3#2Q3:0&I@@VU2\O=DIF4[+;>+G$[/EZ?DL7(6Q] M/!R*,\^+XE# +GX:!=0#0Z5\G@_@P/ERXTY"KFC.:HTZV0KBZKGP^D!7X0%* M.Y7R+W2+UOVB#/5)XL?U5=^HV#EZF<&X":-/F-?G$5>+YR47% PD\2\Q"V%D M^77X1:Z%X ()*GX+HQ/SZ_F41?\D4'$5PJ\%C)MM,?^&O5G, MS!MM:KV&Q4%2HA;PG!:4$8-@UA3(03D]RB1E%BFA2?[*J$(T1*N4+F>F]C=3 M>Q@BRWP8&3R_)J;&R5.3YT$Z3%*UK\4]83?$(_0!SP+"+55WZE^3E/=#:%EF M=$_Q8) ).3$'"B)MTZ1=_='[FG,AB[ )'^%XPQ4+!0]KD-CV0; MZNK),CG>VR=).U<3)^L^77J<6](\C' YG\,Z2Q](7GL#"S?H8A1ZL =7%%<; ME?V15L^50\,6U!I.R'LMP"#9,=KLV5D7RRQY>T,$92I&-PVP.9A0AK&$$?3] MZ/CM *W;(XG R:&NMLI=6!3"$' 9%D@!+I_DSHQ\("%P*AHK:WV<%EU]W5!7 MUYTFD8A<7]..T6!312'%<^7.ZT/.)#GNK?WA(B"]&O M6MQZ%4'(4<#O(A:4HD$)'B<>78E?JPC*]4I%;&"PS&JI0UD,ZDA7--AZ*PPH M0:%,JA/'[IYS/./D]QC&Y%+&1UOQF*M06CQE@Z ;>LIYIRCIU?G'S93U]AXS MHD5>SQC#X4(9Q _/:Y I?I9%9X^8^0D._@OA8"9E: [6- ]^WD6RZ#H6,@?' M3W90ET^$>93+)%-DM(L*YADELX(,P45BZ0+Q/GBG I"TCQ\"I%R%^A MA(\DZ)AR@D2DB@%JS4T*D?/CO(J][:0E:-2"R:R#W6(]#?YH,^NY+4#E3.DW M"34T3UMH@M62NZ"?:+05;'"'%I43Y(MP]82U M-S)?+<&5+ T9-B>O-F+/$1-WA"UEA@$7R[:\:!M:RUI@B$$UC3E#QWT!/:-" MUVX-L$V5PY\Q#04)980@6\,-N2TV*(LA:!&[Q:4]TB;.X0 5SW)\.T@]-HD+K9$Y5=XQWZAI.I'M M2$GWJ;9F"SEIZ1NQ<;9P30D[CY;+*%314N/NJ@JV6DIC0SX?[)GRQ1(0H013 M$J1U$FKQ +]Y"*P!4HLA;9INT^0(WQG>W6Z*5#M*=9I9DC;U[4^M>R+.V:G4 M]Z./F+)?6G.+@*N6"Q"A<9]7EK(\L.UG#$<31 $B%2&*7H]])UJ]@"##5.I'H7?G5-4.A]2-<-0( M6NCAQ'+0PBFR32QO[AC!\.NY^F&H$HAE1VI0KC<#E#5WST+MDBJQ:Q)$C4-2 MW3O=GM[@M*G].]L6$>^)T2)\75=;N+7MYL:^+M.4T="C*QA-&=;/+EO15EZ2 MV8[;8MOWOKB][CTY/"CT[URG)J\WVKRG"E#+9L@01=;?Y[/_FY'9?O M[GBQ'&DSL EM]:'0]R+%$K=N+Q.K?/K(U>M "<6R45QHY.7I6YN=D*P3=Y*U MFSO:V ^U91GHL>SM#J@36(L&Z&R9>)!,7IX)8I_X5^'=/9'K]W*%PV? L7%7 MO-UWR/8DPN+!E[%RHX=3#6TQ-(8HT8&,^"I,2*%"15Q.3+ON7W([W<)^ M1<=E">P:LI>:[4\*(0ZW&_FF]WJJ_=?VD%?/E$/]HGKKMWJ<<_D'/H[:ZG:H M9F>6#8\>*/E#GD9U4ZYJRAVKS"?X&R]@K!:*%!"Q++PAH+(QL;BU]1M;#JGT M&,OQ(,G'.D&;J)6D5:)6BMVYCG4/%;>>)MH)3O/4)L.D:>RBK/_Y6H+8RB>S5^DJ -M2:A+(D9IX^)/M;0J3.[# M%'6?#,P+^?H#0=N>#C2WL4CLC?4)P36ZC2\%.6MKL+;[?>+)\KA8*X@MT3A# MRG*;GXYRGF]E/L+X$_B5 6P8/$+\+==OJX$MIX>&VYRPOBI$J(#)>;$M;HG; MV.G:?&'=9=IU ^N$W=J+"4T?Q6J TK)QU:=".V\F.&O0^$GG*690?4\$[%6" M)N\[;S:T>&J3!H\]0^T&7B=(3=./8#O)8N*GMZ&+!YZ;%1;5;HS#HLOZ*VA' M*N%/HLFN;)>/.TNU3G$[_7YPL\M0WXDXBS-I>*>OTR\(.V5HL/.HM^6P9:#J MF63&O8:31L4)2/7QAFTWH)^K9V<7;J!WC8C?$"_ G*MZ985:B(M7X[1$Q_=^ M)5OKU87(&URWLBW89DC+ZFE(@-$N7[DUJ_7OK#?^W%(]?);\E:8OE5_4^D58:]ZU!:EEQVI0XF;N==*M!%UW[#SL M'?79YFUO;V7QO TY1ENTV_GA#9^-KOM>M,T(Z^'%JH>BG5"^_R77;W+5;$]: M+#DN>B2E&]=S]7/EN)T@63!8/Q*"F>SQ6 M[HSWWCD_:NFG$JEEK[GWL406A2CTZS::K>2"5QN(IB@LED&W M^3MD@CN#T,+C^.F7GS[1.;C]T%;ZRRT]CV]%;3$.AHWK#@_DYQ^@DOVCG !G M)5J8.%^X]-[3[5L;A]L5""V39.^/44&7:C>0=>HF1I/EH\[Z8'/Z]<,JPP+@ MY+!S!@IY7!?>RNLCF/FM9*'8$5N"08:K-0TS4^GO70J/3X^#IYF+!A$; &S:#09RK_Z M-)07B#S2ET7]\4%_,AX\<;^'0KPD?(4]8L&0->X-F_=_J/KWA>SXL*I+4X.M MG?%R;[Y@0P$#*)7GH ]L@OK(OWDM3@VM-TBHH)H3;["('H8^H4II>Y6T&L'E MC[[\H6BT]S?'?*9(C7E_@?&J3G_&-D,2")Z5E'HGR>L6**1!('WKTYX >]Q# MS!(?36D)X(\B0\![-*O!%G*:0N$Q#-82$4LR?B)1?'JM"=IH"<40'HH M^;TBC$;^78(M3I+)>M(6]>8T^&V/2'1&3R+HTUX;J+HQ(EL? S2P7K]--WBL M\Z1FM83K-=O@% /5\E@AXW0;YWZTA$Y:9?L\YB):$L9_)LL981E;Y>+.DGU# M8,QE707]Y?JN,?)KQ+XJC0"GJR0#4U77R/\(C@@'#?@IBOP2^::J&GJ>]+J, M0B+ (6N%V*0N/8.#"C*CHC"5MB?"Y;.J!NB?E$7HCS?A,X'_DS+[F8@&K$KH M3C#J 8D-.?T I*J/DT076) &3)<:=H+_YH+6<@\:C(#>MK.#8,JRN HOG^3" M<3W/1+G!>\TF760Y(VY-;B5'&- WVX#C9TQ98^QS+9=+D*V>< M6" :.=% A@=P;1)_EF;IDFF"^SQ5J8STROKO37A*#UZ %W\7"1RHD#TX[Q'U MY&,NF3.9,5(;_H_4GIPKN_+D0D@VI#=$NH0P[S4AE>L[80G**V!Z^LK3T]=_ M$?]CQ-*M]GJ?O8/!:!]Q!^>";<>ZX0]N!_R3<5=P +>!=8&S\K2WT7P6!-&C MK($)>SWC44 X&"N/U.&WLFTGE7_]?5_*5Y$,9<\S)DU5G>"A-$=A[7Z@' !A MP*>1BE2 0Y$1;Q)?@Q9=G+F%1\3.[XGW-3D770AW9JGY!8$9141$P*]5V MC0EP77@4AB10"]4F"\:ZKC&@#-8FW<6BKI%["SUY HJ#39JU\JX1?D9@79I*!* M.DGQ.5Y1@0/ZKXUIKI5WD/;B'8@KSF,5F[B%N2$3M]8.A@VH"UR5MP9)" 5F M#;C0C'AT0R[FRBYNZ90WNEZX^(:76BRO33R7=\)XN][= V%X00J7W7AA Y:; M33O4]V2@2).QVJ4E:;0'\<^=I!04)2NA!+@_HQ9BJ )HG,+:\5J&M;I,]'\DF^T7AS@U0J M[1S1QZ/Q>*1372KN'-E W%A26*:[7-X]PL= X(&!\%)Y]P@_ (G!L)+Y=TC M? ($OC807BKO'N%O@,"W!L)+Y=TC_%A> 3<07BKO'.%'9KJ/.D[VV]'X:#0J M$;U1V$62Y9#J-!=*OZ=W-67I^^;*J3V+Q7W$Y-GUAUA\":GRI-;G2-M!@95W MPR2S__T/_P]02P,$% @ PC4/5XA?[&++#0 8,D !4 !T87ED+3(P M,C,P-3,Q7V-A;"YX;6SM75USV[@5?4Y^A9H^N)V)+,M>;^-,G!W%LC-NG4@C M.]EV.IT,1$(6NB2A J1L]=<7@$2*E 2E&@"5/ M:PX)13BX/.H>GQRU8.!@%P6/ET>(XO:[=^<7[>[1+Q]??_A#N]T:$NQ&#G1; MXT4+NH^ M"DD<^1 >NQ@OQ51EK!UW?_<&]$(A;!%\21\ @2^;?7<.0AXRBOL MSZ(0DM9M$. Y"%G)]"W[X!R_9;_-%@0]3L/6GZ[^W#H].7G7/CTY/6O]3\XLO-/_[:^]OW_ME==W1W_Z_CUM/3T[%00Y0F5&BWF:H>"GY[S_\9 PI; MS,: 7KZ9AN'L?:?#TSR/B7>,R6.'%7'6B07?O'[U2LB^?Z8H(_]T%DMW.W__ M'(G9R?==?R/,-R.&RE6"'1O;BXZ(A?4\(L,S=,I--Y MGW>6/V:%48XN";8?7[]:TDFP!T=PTN)_OXUN-0SO<-$.,4J M&_:0RSZZGX#'2[B?0AC2-RUAS?MP,8.7;RCR9QZ,OYL2.+E\P\IQVW'6G(<_ M:N;<24QP@.=$GJ@==^QSIDCX',+ A6Y<*->]:AN9(BM-/.RD2S_R>*7%Y"AM M\1$OG,9,3@ ="WHBVGX$8"8TZ$ OI/$W AP!S.J+'SU*6;%7$2%,K3AO#XRA M=WDDE^G4K>(5H-->X/(_U_^)T!QX3 W:"Z\ (0OFS+X#+X(*U?72IDQ*\=\C M6>L <>)2V'\%^4?*QK&2Z-#(]T5N;>;]_#C]A&!?A6]<)BYK!7/M3",\XZ4! M[ZC%:R-9]1A/D+OLY8?:";R?8A(^0.+?!G-(0]X J((OJ:CM],CMD[-Q:IR- MGN/@B%>?P!V$4TA&T(&L2HT]2+_"L, 3:*6UG2]-!.0$GADGD->R@&6[& (B MC.#A&@YXK6/J#R8CR ,^J&IBVLEMIU$?!SF3/QEG8AO0VN'YFL30=3#XAC^7^ M2 ?!-S;RY7$_BYM9#!T2X(1T0-B0]Y$ 7^7Q=LW-=D9W1DE.^U^,T[ZT.'<4 M8@@Q[2&.J%[;R4]H+54Z1ML:5O?A M!#(5W5O>#<('\+RT0]V:D;:&UW<(C)&'0@0+PFN)H+%YDB%8\*D! MO8F1#6'#M4>-MVPZ9--06R,8IB^)H*M=F=3R3:%'9:ZM 4T\$EF/3?A0)9^E M_#2-8*K ;%OCFY1Q+":[#['SVQ1[3#G*X[-P4>RCYK_KK#OXT!HG+LXN2EFF!8](K:-L[6%]%P7+94: L0"Y2LP0R'7 M4!XF**0;08K25%N;R B& 70O08DX'TFBW(BGV,+73:R00Y2Q0D:"1O!F X MMD8,#P0"&I%%H8>3"#:"')F!&K,=[9B-#YU- ^_8YY?;)Y5\R6+.Y81 I9NE M)-F;W#$E4:?N%O"98$J'!$^4?BHM8<"[SF$0*;< )#\;;HP2%+,N,K;"U@B# MC^\&D\\8NR*07>VSO6?N)6EE[AC%JJF MZB62A@G)43Y-3(8W6]L)WXK#;.>;&/NL47M8K/JL=H4HG51>FF:04V"WM0WG M'HJ9K,\P8&9Z3/N>ZZ, T9 ;/8?YQ&DF;@:#NDAHA.IFJ%R;=\/LY]M!4! Q MBU;VL[#J$YQ@ I-U)$BOGYEUS (4 +*X90B*53^^D00+,&Z#$!)(59'/2Y9H MN-+4 &9F$5961VWU\UM?DE MQJPJW"<60JJGBU32S:!68F69L8W)Z5)^J.[&PT_5'B^5EV#+I.E:(P.^C1<^ M)'B.F(F?%M\HW\*6!+H]AXVJQ,*PVO'I9O"[X]9HW279R 2N67-M]<-]."/0 M00(+]G\/"HC90-[')$3_%=\K]X5J)&TTAWK@V!HIB>6Y@="+;RDOF):2"S>: M/A4 MBX.')JWYEOJMOJQT=4U6/=_#0'QF8&#CF-%S;2F+WA0IO)C60' M1N8F*(JY@1,;"17+!JO3'[D7$F@E/3!B9> HR.U:2VYB?>H<2CF.I3D<(M5R MJ!2,FY\04@<)J\.M#P2XY6.H3.(#HUD.D()A\S-(4@,VSL>6X7&QNP6. M@EOS]S9LJ[\Z49L]4#N8Q&=FM(DNRN? 6"^$35$%S-\0P6'8N.9T!&E(D,/O MLEI>@YK](B4YA 1A=Q,.AH$7\=NRV7^F('B$(Q#"Z\D$.JK9YIJ5,%SYS$"^ ML9"H7?UM7654V+#<-;;'PK8L@]\K3 FP;5V[5-AP@P(0.'M4&%D&OU>8$F#; MNG;* G2Q?>&UY.CL)SHE;5;Y: 8NM M([Q4W1S!6418W$GU*"U.V&Q.-8"QY#1 'U''PS0B\#3G$9"Y^$GWN@CR)?!H:*W!US:RSKNZ)G7>]SEKQ/P-^I=",^:$V^JJR/ MT2JE]IY$2RMC;VJI+XG/B)A[]$LXNB(5ET+&[U'8QE3Z?M?*)%N==J)GS_UW ME#\;(Q5M"@T9\ZQSF3^)UX[X9!X-D<]/M,;+V?+WCM;.9?5,DGBVPI4+R[*M MS T;T[QVUV[,TI(N89NQ"?)^:.@@<[ZEDI9U7CMKNIN2IGS5+O!S'Z8-Q@OU M+3O3LU63=^-K.YO#)% "UPLMY.S,Z';@6"*AW:QM! [EN+:MY<6/=#S@/JM0 MNU&VD<GV>XGT(8 MVA ([JIR@R+ 74ULFG_?5TL9MMMOP*I4U4S=3(^F"TVM79+\42BIKA+2RJ1N M'&FEH"D1[]72_YQ_ 2A@?I-[I'C263*SF2=56<=2H2ZU]Q@5ZEY)>\TK2-X' M%*6HQH_DE:*:EBA.8]!G: (=.PL-^VOUZWGZI!>J!F/*T* .9!]+4J3,YC!8 M4Z-DW6#CYWA':7HSZ=HY*?>;5N;A]U6@=K>^K\(&]NN]U!OLA@W(6S L2&1X MY4J'$ZWGY2U?8,P\_59\'V/9@P"59=^PZE =K-;U1]V3U.U6Z54T?X:#],-H M6QL+$_W8O%26=1_WCNC MW6XV67=I^BZL9=Y:*P+%UHYLI?@^]52_@C:8V:*$MAY2.X@G#0J,4#?$W5@S MWRKC"S'WZ47*Y=$4HQ5EE=&5T;GQ4 M5;/:6105^O72453$I_\S3!096TD9S0E+*L;6UBY-8:;<8^?=ZU@JE\97 S4^ MML:G"D/6E_+'#V67HUB2OO'DRC"Q]HJ30AMN,&$*JAX1T4Y^0*PFB%A[=8G" MA/A8[?*KX%$\REF.6'D6C2=7@8S&0S_5;4<1.J@/*$I%[ =>;IG&>SPVC-7B M 2C[>GE5/N^RUQ.;1Q\R\TN]9=?TQ7R7EI"?8*P49 KC*RUB-WV[L#0YAH55#9M^4;@7N! MR2]T,:T"_N7# =^!(VR3 ;XAT0R(-\W2B,(K!Y7?C(8H945*O?:V4).@S1A7 M:PC\*R $!.&"CYO)7+;9>E.B$;ANF54B_-T?U%$_&;I* $W_V@@P,^:\T#N0 M*B"OP R%P),_.2X5:0BDFX9I/,)8':ZI)[ IOU$4NJSWO&/\T(G\T@;=M(WEJ@0\%6S26GW/_QD#"C^^_A]02P,$% @ MPC4/5_[U,UNU$0 YA\! !4 !T87ED+3(P,C,P-3,Q7V1E9BYX;6SM75MS MV[@9?=[\"C5]<#NSLB0[3NS,9G?DV]:M+QK)R;;3Z61@$I*PH0@M -K6_OH" M%*D+18"D!(*@XY?$(D'@?.> Q =\N/STR_/$:SQ"0A'V/^UU]MM[#>@[V$7^ MZ-,>HKAY?'QTTNSL_?+SFY_^TFPV>@2[@0/=QL.L =T1($T*R2-R(-UW\*01 M4/Y@X^+\UVZ?!HC!!L5#]@0(_+'1=1^!+YX\PY-IP"!I7/D^?@2,ETQ_Y#^< M_1_YO>F,H-&8-?YV]O?&0;M]W#QH'QPV_MOK_=8^.KFY_,\_N__ZE? M#_ZWWWAZ>MH/882EA1":30[50_ZWC^*?!T!A@]OHTT]OQXQ-/[9:XIGG!^+M M8S)J\2(.6W'"MV]^^"%,^_&9HK7T3X=QZD[KWS?7 V<,)Z")?,J$3>%S%'VD MX>5K[(1&Y2BP(4TA?C7C9$UQJ=DY:!YV]I^INX0Y1-ZB% 9F'B8N7(C1$LRU MCPX[R_0BPV(\;#P1,=$Y.3EIA7=7$O/,7+9(O9KW46M^DO19.K!^-J8 MP*$41@Q;"' DJ/^KR*VU*Z0QQT&&O,BJZ<(A"#RF M$?!FWCKAX@E .NG=R'IWL&$^S0FHZ= M@-O/XO^[OGOA,\1F5_X0DTGXX,U_KI4) MGQGT7>C&I0KX^LW4P^B 09%&6>\'<0>0HR#BQ"YF%G%)WQS3/96*=D3 M:&C<0 \!?0B;U( V1P!,0T@MZ#$:7PG9"YF++BPQWH,'#\:9>^ !>I_V)(E: ME8&F/CK89[P27WAA+I_V*!R)/\SKES#@ M/'3N)+JEIRU-KZ1+G"&6J@*N:B>Q6*Y9_33YVC&BRKQ;5:8LW) ZO4P<_03[ M8=-Q$W:/)*)MIBM/KM7>6KI4RNJV*E&*>1:]-5W717, M%:4!=,\#PC^M/4@0=K\ +X 7DZF'9Q"&:7H!<<: PIX'9([S=GG51,+B'%GD M)^2QX!3ZG'ZVH[ZKN;P,9==XL(UW1HO-. M9A@/":V^"XV@??M(;;4POP9+(01J@ MG6+CB H/.2"P,P@F$T!F=\,!XB_:$#G 9UW'P8'/1'/ T3@(;DUU\8(,1G@]O/(?^4N#R=81QM2\ M3'.66K0>AMZ=81IJ<4$9FHA/33RH=.=_%@T YXF)AMIG!#C;3^K8H433;.\ M4(\F1S>\#>?FB!D0\5NBL2*KLS?-=EXT>JA]WR-X"@F;"7FYCSD5;>KNE*9G M:YK*+!1Z*/PP&&/"[B&9G&)"\)-X,79G,#57TP1F@-##WS%O GO8E\\BZZ/ MCO9](T?3O"D Z.'L9 "T>$)1/J;YV2A6D[O>GG?1[L&S%J=\+3OCKK>D=$U4 M=>(VO =)%&86HQ :6)/E;)S ;"":N#SH0T^X13W VYI[ GS*W2 Q;*.!37G> MQOG, T43HX?2@7,-E"HR-\YI+BR:2'VW,J(H2M!1/3?S-$ZA"H(FYHYZG U( MB!AWXF5IX"V9HW'6Y TE4\9"9?[Z/C"919AG-4"B#31?+(88M>Q M/"PK7^.$9L'0-*;=[B/Z38RC??8=2,2,-:8E>"#+V/A(=B8.341VKN$(>#V" M'0A=/<,M*7D:IT\%P6@\ZQ8PGOAN>#>%9+ZNWWBD2P'!TAA8+L1&9>P1Q)L& MKI"(D2YBI\)+-JUF-A)+12T"W*BV@^"!PC\"L=Q#A ;,OZ!2 )8JF0.O40$_ M4_ZMB -JYN63%&^I>)EHC4HGO$7NY(C_1%3I$7B5O($9,"R5,C=JLY_3.,XE M(JW1=#WSGU05"$OES(G9J)B*"37&-0!KBLLK M1HP4M^X-K.K++MZF97]%T.J1;KF@3FR)[P8>%'N@1I=T"92GD.I6$N;!I(?L MHNOIELC"![F/&XAYF^F)T[+5)6!5P&U?\*C?SJHK6G5EY5*EWRZX-BU9+O+9'KD3=U!?4247Q73.YG MJTET:;IC^58L.-\&KA[UDLN05QJ3]1NZY"I:8-7KLO/CTR/(?-TS_PU&_*,\ M"OOC_*,M+D:Q)%U*Y"ZIFJ7?A8!I&F%:74^]ZK''^Z3'IW[P!%$UB/;VTZ7) MS@@J78*^&^!2-;P8#KFS@Q[AXFZ?^TPB+.L[R$-A'2M9Q (0+%%Q*\2ERG@> M+4CEE[N4PM !OD;@@:,1ZXA*5C!?Z9:(5Q2L)MTD.RJL5*K4^]J4VZU\6S:@ M* Q7DWH;"^670!8K2GEM"B;S/4>UJ;9=N=7O(U 09ODJK>X(VQ7?;L2T]9ZW M+-2.E,/_ MO,?BTEW Q/FY[GQ*TL4S) YWG;E-)>I>C246U*2J#==4-U.7LZ^X[]'=03"= MS@][ -[R:7V??2TP[-@+8'O4E4;6S\6Q.%YUH?6X_)K$UF.XE9U"8_S824K8 M"D#^:PF.__AZ W['Y"R@C'= 2-KYDI)$I>WFKN% 29E=51]ZER'%+9B$$8 5 MX*FG%*K3EK?-OO+D2'5=BE51F%CVB3@FR*_PB,@=^3=[)N1F6S1$WM<%\M1# MT])25'&D1*[*(OA.-4E?+<_@L ]Y4RN*R28SF;0^K&X8:=6!2Z_GSME^[ESL M*"X=Q%\)IO1,3.WRF42OC(?L/^8FRVJ+SJ;K>KP?)B9#7&+^+0@>V##P8O@] M B$C"^IUC;.5!GR&BPZU6UH MU76MZ!IK"RK9MI#K4[MVM]#:E>]5UI^\V&I048J;4DV-J$SNNFA9EE :%MAK MTTXCEAKN4U")PF:TLU*5LOC>=J<#;5+L"J N6T.\!HU5X0T9:Z?A(*DJ=ISC MR5J$D/,P4*> E72+E,R 9(XGJXXEYZ^NN32V-:95KX+O* MZ/%*@DH#:?DKY*I@J^99]'J=!L@3BTFO)E."'\,ZH([A*QZHH2HJ\RT**=P M9XQ\2-;\/:5,JB=JJ).2 (MBTI!G*)!+54(VDF>D*'%6A@&@-B%&?;<[P82A/^=G MV\@LDR]"TI.]_:+K8](B=UZ*4CYC2/F(_3*J+:Y^1E'J@'JYX06K8@=E178^ M+([T/L6$X">MDZE4F9MF-1\6/:3FWGA:&].%2[1V+^[7")AJ]"+>F?)T%N__ M.CL3YWTI8E_J9^H0]D[&W);F+59*LLE>A]B"AV/>A%T[]F[TV] K'G GR6$! 9[4K=](4JFCD59+ M8C]\TYBR^ZM=2#"= @>* ]%\"J4D2A):2Z7,L+)[F%>^&U F=KZ24KF1Q%H2 M-XUY[1R^=@X+:!3YW#)E%K?M[_HM+:F^I[?]L;+:>H"[0S!^,)5&Q*7*F.=< MV;)U+(+!$B&W@URJDAF'S)8M8L[B+=&O,-H2I"M'$2N(+HV_+<_HU4?UC@", MJZ(-KR8!#R\XZ7@&87B<9R\@SAA0*&:MZM,HNPSC,A2!I(GI@@X17A;Z03Q5(+*&D6H0?RV"X3D'+[>W?M%X= M?BNAI*H#J.6]GIKJJ%PCFX*W=:Z#-@22:UL-;0ABWQZW.R?M=D<:,DPDJ#1< M4MZ;$H<=DW24'02_/6EW.FTE_XD4+UV )"%E1\UO>6D=4:1"@F22EZ[!!B7Z M8N\R$3J\Q .U"(DD+UZ$)"7ZMG22B7# 2SQ4BY!(\N)%2%*B;URO)/@.Z%^E0\)_-<-HKW-RK9^3J[6*W@:B$MX-5V)K41#.Q/"GHG3[9Q0; MT\&V8?8'339OVOH;1*.Q"/T^0@)&L ^%5/QV?#Y6 #RQ7=F!JFY:@*XF==<" MIFS:X=(L)VN/G,(1\OWE.8X=*RIX!L376EY,T>IW#.T<]4@T2SNT5]_D)TG& MQJ+01.3[>Q+NYS+3S&-ZOL9IS(*AB<4/?<@0"=]CO=.5)1D;YS$3AR8B M3\X '5]Z^(E>^4-,)O/OW'*-5'1W$$RG\]X,\)9/:YRGK >'<9ETP]:CZD'G M&HZ UR/8@=#5N@NQ/&O3W"N11&VB^$>TXC^_^3]02P,$% @ PC4/5P+Q MA%8210 G8\# !4 !T87ED+3(P,C,P-3,Q7VQA8BYX;6SM?>MSW+B5[^?- M7X&;F\IXJB19;<_#SFNKK<>L-K:EDN7)W9M*I:@F6N(,F^R0;%F=U/[O%P<@ MN]DD\>(!V>BY^R$960+."S^ >)S''_[]>1&3)YKE49K\\:O)R>E7A":S-(R2 MAS]^%>7I\9LWW[X]GGSU[W_ZU1_^U_$QNIZEB^6JH!FY2I+T*2@8 MY_R(_6-VG9Z^.7YU^NHU^>O-S5].OWW[X?*__G/Z MYQ_/7[^?W+[_]+<3\N7+EQ,N!N?&13@^9J+&4?+S[^#_[H.<$J9CDO_QUX]% ML?S=RY?0Y_D^BT_2[.$E8_'Z9=7PU[_ZMW_C;7_WG$<[[;^\KEI/7OZ?#^\_ MS1[I(CB.DKP G7B_//I=SG_]/IUQI0P8$FD+^-=QU>P8?G4\>77\>G+RG(=; M,>=1O.%2!.LXS4*Z&8R78+G3;U]/MNV!H)T=6CU*2TS>OGW[DO^UUI@1"XM- MZSKM;U^*/^XVCA2R;&S[IU_]VQ^R-*:W=$XXP]\5ZR7]XZ_S:+&,Z:_+WSUF M=-Y-+A_.E0 MK(>@H&%;-/YK6_%JG<82\89F41I>)/UD;?0>5^A/19!9(Z"[_UB"W[&UFO82 MN=9S-&'3(HC[";OM.9:P'^T7@]U^7%#QY8%_OV<_[-C.;I*IO1!FGVG[_;R<1-^I7&I$#\*]@4,#ZPS:')\>=/7_T)Z) :"]B3 M;)@0^.L?7FZE:Z@SS68$OKY9N8FJ:Q=DL^H7[$>-B&6+E[.4??R6Q7$E+>\^ MS]*%L<4K&5(K0[[<,]C>!U]@+W<9,1X/YVQ^F<&MWBAY9,H*>H:1+UR8B MI,8=9?0_/;)CZ3MVV@GA0$J3G!_:^&_SZ:IX3+/HGS3\S#[8V::3:+@M6 M4\H0=_W1/WUXR/CA\H9-/$869FQ,6WMA95/,#-#QQ\R!#6VR%,3)K*3N:!:X M$-YR'I2:! ^4/ 7QB@+0Y7H>QE30F;$^&8Q .,ZN;O9(PU5,K^<7\SF=%=$3 MO4J8X2F;K[=,P%L*:K-#!Q_9.SCVWM'GXAV3YF?95@U#$KW_''P4NPAH]??I=.9_]811G;^*?L(U:LX3103)/P M@OUVV;$A[T$ C2IK65&;%^"11S"I845V78 M)[.#)4Z+7',&:C3"HJB; M)VHCRBF2?TW^V^%:V%_,8N-;))75,R!WZ]J$K@('UF#-Z>SD(7UZ&=)(X)3] ML(4G^\??+Y(B*M:?%D$3IC$IY,/%%[3.B[W6TTPE_HR?IA!_LWD[9J7ZM;P2/GMTLIAF&3PB M\^/VN_6V37D$GWX)LK!\3KYX7D:9B!&X2H33[5\H! C0%J>#(_]SV*9JX?(\'?CW5&HV#M1")<6_HN)-9\!E\I^FH^]%)@ MNA+4!#PB0L0C\HX^1 E#_ M-K"KEY^KOF-C_3U"K:+]3V3B=NJ60D@K#2_3['*5L<- =I7GJR[?*W5[S%G- M2!+T"IV3K.1 YFE&YH('B8")H\.<,T4L3W9:_)]XD2>CT_RV@8%96IX8WO06:Z#(?^M[0W#>01)7MCW_R8M&."C(-X$,%S?YTST?$:3 MUNA8=L9L>NUE1/F,5MSXWG!9\:L%KZ0UCHZVP\.HB(_:L3/&8;V4V-N\OGON MB?W^,_4LS8O\*IFM,K;YN4X^)U782 C1T_ ,G5_PB'WVF\JOK&/.]B*#F;T8 MN7$>-(PO0Z%@3!B$5UO69%;Q/B(;[AMO0T>3>FC-\=,;8:/#FNN8H:C/>O3L M&3G8">[1V+ S"%S/-X$H%\]PMT;?T83.H\(RULF>HKM0I][:N(ITV@H _ZI% M.Y5"D!>E&+YY)3NPH3S4"0<)Q+7L1H(/092P3S#< &9TLV?%U=ZPZGI.77KF \5FRGF@09O% _41)&^2Q.\U7& M[6%AF\/ZU/4<@IV;8<2T&/D#][G@5X#:V6[3T]T'2RN=J]EM,H_W^]W1FD+^ M?3$;J9%20Y4RG&\6$QWBE%WPJ:/T\F P]OID"ZW?>88M$]W;J:4,!V.<96PW MGTZY99*M7-V-T8N54@;4^@242;HLG?7@55&\MU:9H1W?$>,U4=X7:]7Q;'JH MS=%:;?7H&F5*?*3%69 _\MNUD(;OUI]S&EXEUVR?%4"*P"GD5(B*B.HB=7H0 MPDZE_K)CIMF&/ DV]#V#8G_#-&&*'-615G5V/("3ROLHH5?L1VFNOW9#_&HN MXXU;R4NJY*] EW#"?_,,9'+5VVN=TNXC;23AG@1RGUXR+43^TQ7/ED=+A^IW ME'U-04Y%E>3\0N*8?/O=]T???SOA:].WW[XY M>O/ZF])SG01BA7*X+^FIDUF",;>J[6.:R,W3G"$:O(V3\B0,>3:W((94^U?) M6;",V'Y/,D-DK=%)4-12H'SY&,'C*"$S0=(SL&@4;^4<,;#_*+#9?0:$;2FX MPTBC,J3-L<#1R8%!3O-).!410MLGX80690ZZ;WUS]M#9I0DLHP$:*5P[S8H[ MFBU &I$Y75XHHZ,I/FA:SA\75;[C;X#$@='!WD/Q)4"2?K"1"4*K=S'\FL/,#0WSRF";T,GD54 M[SG-9UFT+/V FA"0M\5 02L!:IL"Q FC7L:#DQI]C["AM4$=(V;#, !6SDL_ ML;LL2$2RXENZ9*M5!U2D33%(T?'' *6B3;;$B:#N$4QT!JBCQ&@$_,@4H\^% M(S+=[#D?E8T0'F2CZF$SCW)1E=+_?YV)JL<(#I"'JB_L_5A;[--L]5U >G#: M=R8JA?:^Y*+JS$IW:%.]_S"XSN.C0^$HD_8RB#)^+_L^"N[! 3FB^0=^9PN1 M7[<4+DFBY %2]N>?D_0>W ARN4J6:Z*W3H_[]85C?59'.3Y>;H(HN;993R^ MV D]FF4PTQN$)%Q*F,0;+H2S\6QJCF;0YD0=%VOCU"B256>Y8TR5$\^D)[HJ MD;ETJ P<:?)P_#Z"!%=W[/<1%*KG*2Q'JW^8X5_2[&?V&6(G:O?3:KF,3=QQM-W0CA6&[&V4LNAP,'8N[8Z5\8G5KO;MD9$DX3U)GZAM(>QBG[5G= M;RQ'@6J'$)K-G:H'%HH&TF"@!]Y:ONWC#%1N LIT!,8!$!S-9N(*B/T<4W[3 MFX3319H5T3^K$UTGDDRZHB%E(1_J9;[&QW%<_-5%O#: M HEW[@OF5ND,N3,?L@'")*YF\VRZ"B-&9UH4-!>/[Y=Q\-" @:8Q)E1"+P/J MT'AV>4M*\J1&GP #3Y!D9H5ZQ(3A4(Q3HBC-JOW/5Q\GIZ60R M:96KC[>>5:TF&+5$C[]@5M&EIREBT6:B%*:]0*$>;Y:L/^>1_&JXPFD!P$,Z/O)BCJ6E,%/ M,\ZRNK--:Q4J@Y(K"4NVCB;.<+JJSSF_0(4MUY$>)N@LMGM("U _X]>7)\0R M,-(#[YQ"L:.[X%F<5SY2J6M 5U/\ ZZ>P(# ME=JJ]'TP"YZQ1!A0:!.R<4Z.%D:G&N&72C/=#V,! M-39M?4FUP^\XSX1QG'X!@2[3[#Q=W1?S53R=S6#(\IN,+J+5(J]DO:4S&O' M6>F[8D]JZ(=(G!:H59[F.0DJ_MR?*RPE($$I@B>X=62MUD.C@T$?NYZL)NC" MLI:L%36'=63[:('RW*C7D*VB 9[)&&4Q2.[3W^+HK&3OGW-9_R ML@OQ*H1"0G>/%&;@8ADD:Y[X((;Y^>F1LO.H62'9_E3=%)=%:^4*YZ4@),A@ M.R)$@>0XL#T):M*0>R$.R;D\S@O1CF*0 8O3]K3C8=VC.ARN[D*V;J;E.!E, M1$*DG.T*&&P8QA^#7%39AAOB0OYA->B(SE]B+!OJ]6CVCU54IK>$ \U.60"' M-[2.M#$K;M!7J;WD93$V3"LMBQT&Q\HP ,:FYU3\%_)JT&40A>J:1=IN#C(. M&,F%F4HE15(ZHKNNN>I$!;/YT]3$LREC:HF.= KF*!MENOP01 GX_EPG;"^^ M3,62Q;Z@_%%F(IDLFD[8J6(F$V:BO 67Y,8G+O8"AUR-FR+QI;J99EJBM^] MT2K/E,-9Y$ [LSGD4LE]3#(S0S6GF 4V!W"T/8-H!C:US]*PB8'6GS'.M%U\ M4,[8D"T1"!*@Z D09(K6/62E%AVL)L4T#-G@Y#SR[CKCQ8F3UCAIF^,K5:CE MP("A+%I1,C@2%>O8J).*B4?X,+%%NYJ%P:#LSZ?Z)H8'D&@^ESWGJCL-XE/= MDFD8G^H-&T\09F<3(Y_J[H'R.S/Y)G,L]U#;I&VF,[;[.(^@.'L2WK*I)'L# M&)SOWK*6VUH&M2R7=-E.3A FZXC&OYC,X[:F=):'O!?*^K])W%"&Q:0('MAB M< =>?YSW5?*41C,:WJ5GJ[Q(%YW!$<9=,:\+MO*A+BPVO/@M&7 K0P*CDA_[ M)9F5'!V]%@RAH.63P'*K]R8"TLX6A^'_86OJ^G5^+[#WGY9G4-S[2@1DAM?) M9\AW *F#8#E)>'1ZEZ^522_,9+20"G7\ S;PX,3YP&W!:LN)S"I6CB:@8Z7P M+E>&ZA_6*YN%E>O3SA;1XR1_%4)=/$."[.OYNRAFU!_ 7Z;ZR);0-%2CRH3?.01(KLHV-Q1WOHCFLE='ZJ M,@LC^VKP/(7RPL)(5L07\9L6_UHKC(LC0[2QFZ9HHD:P:=7-2E MU\N$0L,A&\P!Y<!L/"HOOPP4-*E=%-/_/-$J*>#U-PD\4^?Z'1 MPV-!PS)SX"V%6N?LS]7%URJ((7G2*PDH?9'.B8.F!WHXF'X5KTT*S0TW\E\T MR'+Q%+_AR[X,IYN& MK-.O7";-[B^G==+LFOB'Y04FL])NTFP%?/R.3"BG9&V2-F;GSH16?21'X+ZW M*(5^5D)Y!X 6U*0E]VM2;U=*3+C(1Z04FOVP%?N(M+Z>E>B$RWY$ MWK'S=,*_IF6*#X>ANQX.@%AQ/A7L#/7^?\;"A[&X2*01V?L;B0N1DUT_# <5 M,M1O*)T%#B&6_[&SN<--2A1'<,^B*_FN[N0PP[M")M2C9#U1>KSEX1GHS0RA MR)NN&YW^)X[;\](AK;ND>V<3S(E#Q@^#@MO?!HOE[\_);(>RHZ,'1F!\M$JW M:H<1$":S7/TXHL362'>^9;KAFM>F]-:WHRG^WE?.'_4\T<["F][GK$<^H_YM M"U16:-\$:X9A)%_8A%DS"CEL#6,L5%WP7JUZ>7#>@5$RBY8QK2XMM]R\BZDP M,$7; =5P;,:)H*B210=K>!6;)B'[3;:B86TCL,VGJ\-=7VKH" ><%ABTOCDA M)2]2^H!Z%_F#M$XKZ,#!((_D02WRD<$=?,'$O*A2DL$O$AI^"'Y*LWI=@%D1 M/7'QQ;24@!Q-%N^7[48O#.R_/6F5E.!)YLGFF^G;+'!EM;8#N$,XC',O'CTD MT9SMY9F\8BY'R0,7A@FE3;UOUAE]*VTE(P;)DQ/R:;58P&D(TF9O^9(M8U)Q M]@W4=F9JW5'9C^58"_>,TC"_9+I>Y?D*IHU1]FIM/P=+KYEDN VP8$)@K'D0 M)%]C&3JKNI@^YGLVM4S'^FDQ:*/C[U, N=^EB[P!$G447&+24%IWZ#RX_*\] MK*5"K,W@[BE3>7MW+KUU,NCJ/F.Y7#Y4G%EY*/,TQM#&#/I\WYIQVA_P^$%Q M6WC*!GC-KH, 3R(?$GAEM95-F;UL6WEKT,3Y/14R+3[14R]OII?$-D;32X7& MD5/JGZ5)2!>)*EA"TMA="OTN&9";BJ#[8E*4T?4@841'32A,H??8Q M9=0VD2?$ER)LI Q G4E/.IU:S?K@L^T82(3ZP&P8$.!P'"6DY.$9HHPLT4YI M8SHXH^#KEK*INY)NF3=_QJ*FR0?E)LG.)/D126A1YG1YZUM.EZ:V31!TFG6< MNU&X<7A,8V:/'$YQA>P5H*,A^LY3RAN#!I[E5EP9E;1_&[ C^^_Y";U8NW2> M1,G/'HH2!XZP@>D2F19%%]ZN"QVH6*<1TLDW"P.ZM#I13>*+J5//; M7U1JF]:UN7KJC_5NWSCQJS-$R=L[>'M72^+R%J?\H+WQ[8.F-4+'([K!>.SW MF5P>E:SL,MCSMJ-(Y9O.:^KZ?ND[%;SVI8[R^XC4R:OW>$5HMC'N$(&1;TXA M:$T5%]EH@0J+[.:&BHHD;WA8X:M3AU&1_<6T#8JL2W]@09'=1MJ)B51 !U-D M@K^5\DAD_H+*MEV=<<@=8#;OBRLX82DA9@*RTWM_E!P6<&K8JFY94 )&.,/9D:@QI5FBW'.8[&":X0IZY2JI:\DLFCZX4. ML3"3"@/PDK9GD#54O!5383$>H\!J4_WOW;HZXJ_/XB#/I\^1["U!W0<+*2.) M4&%@%57"R9*_ N&_>88O(RLTT64^,*-@B_O9P^XE*A0>B,U66/Q(N&(WZH): M#K?$B^!G6H6?B@N_,"I6F7>^)1)+-%&C&@!D04&X^:BJ.ER411W:)0TZ3WOF MO=$%!NVDQ ')NMC%OR;_[;+NH'M="YKE5';=9Z^PW\JZ*K9H8Y%#.^I:&[Y5 M?[''Q!_GS;TL%W@]KZ2Z8:?P,CE*-&-BGT>GJ8@1ML[[H9#HV M$J)RZNPPXM%WX+E$2H:> =;*+*T,.]8CM\<,B>+NDTV9JP1J94=/E-^#*H.B M^U :)G.AD?2HU1;NASORK7D7&]K?/&;)S,Q'=Z0\*9N00:7[;[L=/B.*A+.# M9ZQ/'L9Z2O5MYSI1F7J<2A2F'E(#N$8-XQ,E?"%G@J!A+KIQ)3=PY;03?Q\@ M-_?E\L&)JY&41>L,V-78<18>MVZ (O9L*4A[!A6UXIK\.2.5C!1U@:!\V,=5 MQ\>QLPF^4%.;'P8&99$F($H$54^ H%*X79Q)8N$!BTA.DV05Q+=TF6;--4': MS$6AR"Z^J!-C51I2$":"LD<@4"G>5?51:O%?8)69G2Z;*(2U M*-7RC4Z+_(\9:2)H'Q%.W>&- UY\Y:U#+QWV\LR@M(,B<[\,2YB,_8SL&:/> M\H-L_A67I[_%!0/6*H\]^.W..%5GZ?E[R>DN,_]6HT/)RM\RV&Y"_F[\C+I@ M@QLR9#!^S[C$$I]ES3)N1,+5XFXC+^Z-B_%QY"0UM Y*3RG.S)-)@3&$;.&W M1M\HT^M'^AC-8IHKW^$:C;!3I)LG9A)4%#V#3[>B38 HK-M_1U!/8YV$W,-U MD^^['2UNT@.S9<+).J/AA%H8KU_,%*ZARSAM+NY\P13EVM5CH_RV[ MC)(H?Z3A#VD:=F]49*TPWRP%5U0T7TF6/ !=1\LW4E;+)7M7A<.ZI518JKX* MZ\#4?^7-LZ*VZK)_;5=<]H^_\QHD9ZN\8,>#K"L&4=*H+]+5/%%><25!O\(+ MU?I6$# P\CB.DD'^"/^#[#E/00PSD&T*/CVF67%'LP6LM66Q.VV=N1Z4T,Z6 M_:5'W8@ @^."<2 U%K[Y_"*,T_+=1([MN)DRS&O4*;LXRV,Q4+6YR>D)$3S@ M(<._>D0F^DLS2'A1-.X.K^?M?*&::NEF??'IABTDQ$4R5!5/V0Y^PY5? MM-09EQE]+W09??>3'-;"5NU\L;;#.0I"FX&298"D!).RUE@4:J3 Q1=R4MLX M<'9PW)10 UYE:LS)Q+?YG'IFUE^_H(Z$>0)I^\)EHQLT.7VKQZ&P:)_:N&8PJ6XYB'< M 1J#3O@((1.9',0,U:-ICT1"C)S46'F$*'.[M$.+C =K,(RQ<_Q5"-'@4%<8 M;OXUX6:R]GAD:21Q "KP)=UEX6M8FL86;2"9#,LX\=MIGK,#)%2FILEL_2%( M@@=Q?@2'USP7450AK\DJ=;FV)(*.^^XE,P:0P)'46!Z1+5-QKL[)EC??KI7< M/8$JSG2MB.S^XXT)=/GN=#+Y7AWHTFB""W3IYH<+=/E.1(I\[S+0I;^H+*@&X>+#A2KVV,@;20)ZE1> M,>!U.=.2Q=8+S!'DG>F!=WO3:7P8+F]&!JU/%7.,NIDWY^GJOIBOXMI-@&;F M=/5P-7<4TKB;/6')Q'%Y:\>ZN)Y!75H?WAQ2&%4VBW1XW6=EC$TD4:YY63/O M/U!%"[FDJ-=<=A"E\SF=<<"RS%==*.UW*\Y,JUNR6^)_ V4[]UM:E'SWZK M!K];WS&VBCI')CT'JR'D>0A@FJ+/ ^'7^$)/:QB7'E7 M,FC]=PJ;6YKS*%^F.0VOYQV;A:Y6F/V"@JN3,$%V%!-TV0'-T>X!*3+^8J13 MN^>7( O+/( _TARR +)EO"QD>I?"KVK.(OQO/#L@+U%A M5'AGOT(-4TUB;)OB0M28>!V%*4A-"7*_)O5VI2*$:W)$2EV.B-"&.PI4^D"- M/OCU4=UOJFRQTS'H)J5T]C+3!FYP%TMG4/MUXQ@W M#7]:B4#8[C[Z69/#GX'YR8T#<9.1=D&I?H[3/Q(C1'.=>DCX$ M\8>@@/LQ]DG8NL1%5!O;;]87?6MI(R$&E:\F)X0S$XZ/%+Z2WB'3RAJMFT'K M 1OKR1ZB(W^T-Z;@X-G>5EI<:*S#0KY[>L>W MM5?'2WZOX=T7>BNYSD2IH4JI=2N(5&OX 8*T MIFQ/&O(0Q#CHBOG;_3LF"*N3$\K[M")(@*(G(R_5M!Y2)3?J8&%X?Z%Q_.,#A^&=@02H>1##Q""1&QFC'X9F, MRP @XNG$;QX90VGX9JL)!BHR?KC'>1XV#D3]"\N4*5Q'@-+"^PB^G,9Q6<'< M,-"RWL%Q4&6'+&X#*&L,/,&-N24T\9"R81GG*I4FN2@;SH]Y-^P$G-$BRL3# MAW Z+5U09;>H%A30%ZCVTF)@6++CAR?.D.QR)"5+P&I>D!>W](EF.5OFTCG_ MC6]95GJ8KW7+VG.T,8&\KTXGD]?J0-Y&$UP@;S<_7"#O*Q$)^]IE(&]_.:T# M>6OB'Y9+DCC1'G6>V2F?2CAM M/SU)!S2@F;.$._R,DW);W/+L5&LRC0@SZXM.JVTC(2Z*QK^*7%;*MQ)E6X\/ MQCDZ7+']3Z0(HVHUP;E%=_/#>8!6-)TY0O<7TG)?LF5U6)L2F8EVG9P5P!DW M9_*[51XE-,\_T0>1M4>QO5#V<98C6241:C4LZ7GZF3=17YKN6#LB_=?!FJOC MV2.=_=R5;*/=!K,22CEB1K_N2#OC5!TMB2AI\9$A;;T.(T6&U&SU=5*-J_Z8 MYKX@5PE_1@^OD\\0C[V$O#7!SO+BEMUQ

Q,<5B;+UN+UQ>;7C-[G'O\U7TF5L_)5!XKN]O!L8FZ#U7&"'KKU4 MVM"Y7LO;NZZVX;8XU>2$5 P@7?LFZ39P\LW56FL)79&-/;I4PZM?LJ*73*'J M*_"7J'BLR@KJX&7<'8LV6SDQX'M[0CX%L7\5T6QMT(1=K\':DVMT51;C)ECS M>*TL"&5O^(:=W;M$JV1$>2=6I5"6@K#C/8%[193[@J8VGDTJ.VOH/;>UV!LM MP8,(&A.YV*X2-D;L-](I)&GN(NF#2@[;%9 M]F/[,"I[5%3T0#\EZJ7!W0UUE'+9LO ,5 ;&:#TH&H[-^*$D$C#MMG$:.N(" M,'=P!]<(3W)9R6+M,,'*;A.;.SIIZRN8/" M:$HY'*"GBJ3;<"""A7?H45NBHPB:?D@0SL'?GTZ8"J=RU^#=!BC'X$Y>*+=@ M\CWWJWUUZM MN+>4MD[!=>$/ZPFHVT8[+L%RV(SD>\.VFSRX+#SGAA6)3<0& MM)Z5IW*IE)TL>A#">^GTE1WENN,PW5HE& ^G%])[@EZ\C=O^02B '$2"Q1]8 M0WBW%:JI$G8.P6G?J1 5VOLRX82(V]GF9S;2 0?"=4Y"'0[]GK:7093]&,0K MRHZKJT6U_(CDBC^F<<"?D]>W;(OA>AI;<-[;M+:W#BX*ILPW^K0A_4N9EO:& M=#9->^(,41UO-LO8)_['8%9M[YLGI68+5/6[;F[(%ST@29Y*FJYJV_67U$$M MNX9.A^&6*S'93J4Z!980;N80<;S-Y=CI9=YL@G(RE_!#^9CS,/(:45 >KN%3- UG/-5;<6=A-,(BXSN69=:[G-UGZ$]L+P0$F M2QG'SC +16/4-:]6!LR<$-0!%!5]./4N2PZN[H"=J& Y,]2:'<94T!MNYY+8 M#(![]?^_#;Y\8$:&.%)U'3P+ D/% \AEQP8YG3&: #,:E5'@Q/U J\13 ME8_HMO[Y3C$O7F;F:Q6"-XWIWLKLS3Q9S]RHX"QBJ8O M4_N#>\PJB&LW?_EYE,_B-%_I XSZT<*"%:4!!KS?G)!MHOV+3:+]3:Q2FI!: M8"791%;Z!FN4 9LPQV-@'-?F('^$_T'!T:<@IGPN0IH2N+B&/S#Y=W]1:RD> MHYK^_A?/LW@%X?OL!Y[$'FZ]+^9S*LV1/K(0: ?LO=@,=4BE!1%TX0@W8Q+Q MNRUV4=MM@$=+)$?OMB#A% MAY^'WE)J5V^MJ/L ;Z>Z37,]_2-,0]JR?:/84S6C^*8WE,6[2 M#O@0-YTLV.Q'<+WS /1)SJAZ!A>]^NV8-J.Q&+>0^DV0%>+\LUBF"7SE&<2O MYVP/P.13E*,S[.ZL^+JAG&YRV;SXF!:4O/8MD[RM,:0EVVU&;=RLE]?SRR@) MDED4Q#=I'G''+G7M+J.NSG)@&LB'6_42MM1%(;^;>1>PO\TH^?1(W49KNM;F MB6;WJ3R1@D(I2*'@&"'HUPEY[UX94:%!=9^4836/G&65QEBY.+L$KRQFU892\A>T951=@"K@([O=8':M5:4:6"'X+3'ND Z[7$14>VZ0)[@>@3+.2P(9 0.%+$UKS6R[&Y1 U.TCO(M M/J=S"N45+BFS61"K"[EI;N3[T<)^'U$:H*ZO2L:D")XA\N8IXN6+7]P+5KX] M(J'LU/RJX(=ZS-*3+L#=BY2CPI2C0[M*C[>#;,_PC+&-I(SEL&CN7?GJ713' MX"=UEYZWD[#THS%P+:QNB;%N(48UDBK6L,T(U=56O5%ZQ!)23?,0A# )8;J*N#-=9)=A9_R%G(V,N+LT MP8F'.52\Q%KO6WB6G5':EU36(S?.Z7@3!78][W^1IL.M:R[H$_4P6F-FPN3U M":EN243U"W+#M'@,X.*7M?1M.@QDPM8Q?$#DC!6" ;%&-W#&#&GX;OV9R7:5 ME(YS;$& //@\UX)D[E@0!-DUQE_>0EY M JRJU+3L.J\P]?=4LS)>H8;F=:*];5M[M&2 MET&H^6XJH6EQ%F39FFT]E& QZNLB59BQA"A8'5"J*F.#=&68LANSPY'1),FQN)Z M5>0%^T#P$WF114D>S53?Q^'X[;M\HM820\T&-.RA +-TR<573RIDFEAZF6@4//C+.S+0[Y:[,$=M_'M6+;(OX MN\LTJW(R=DPC=7O,+#*2!+7=X7YRJ>!015_.TXSD)1/RKU$8_GTE2)1L$44 M1UP2]HNSC(91D;/90Z,'F5^2<7<'OGU6<6PK\1#=QQNH MAC1]SN8R1+'1*'N71T'VI&M#8LR\"4X> M>,M\"27#(^&^Q9]\.=,CPMB2DB]Y\4Z?(<07C96>-N[5]CV1A/3QNR^Z^U]D M<-=W:01Y_:^82XH.+IB)PLDY.J3W%,WR2,ZY'-;-6X=AZB=K&33Z0_&6/M%D M1:%0:/J00 9*MNT2->LAT4*\"B'VJ4JJ<)5!V9:#*8Q9G)50I&M5(2)55XF\?0@7##(IWA?Y0%A/U,N'.RX9IM*H713 M*93J2XX=C.7PUW'#VOBPUIG!AK*^6@T[[T?9/;?K*/^0I7E>[ADD^V5-)^P. MV4PFU!->535[R^*('>/F[$!.IG&T/0-,=T:-^&A,/,X4:]!P9.4:)_).AJB MXUREO%'Y.3A5@,:6KF_8D&O>B@E5F]W_:O>R6T<4S;W6HG=R+RD+/"'';"OV M$"6)&U>JT14V\$C]A>NN6$3#M9N#39WWL0&BC=G('LN'E8DC^XY&P&AC%, MTF8ZJF.'U]>+ALCVNY+6#H/MNZ1P%W,OJ!\10=\SY&FLH(C!EP[&<,6?/P:+ MKD#5^E\=%'VN)Z,NT;*CT'/+F(-%MG]ZI'$, 4I!TLQ&(VF$ MCU_OXND@9)V3)25=CX9&S:E"U("^%C M#SXJ3K,B!#)W''@]H"!?F2((FC.3\)K&F0^;:O&MZ$G3&7P^-I MG,E('Q:Z[)^[;="0[^*(\L05!+W#99>>+2A)38LOV').EVD>%;FV7$NCH8MB M+=V\<;ZJ@C()2]*.R[3TE[AGD9:-(H?E/:.V5U=Y%@6\1EGB+E=9$L$[T30) M+Z-G^*E[3AATP"Y^>EE0D4,5=7Z-7M'W!#SF)F@NDH;C,6@QNX^T><=FT7'@ MLG4UV7 W&H;%V#XZ28@\C')JQ_]?@H8C5MUCDAW8Q\G*VI;5]9HS>9SWM0R2 M7A=KJ!94@%_H/U;1$H9?Y_QFT!']PF8L&VI[/WNDX2KF/BL5QR->/:G8Y,GE M7#W!H;UU6B]2=D.'2"HR>P3+7L\A\F>57\\9YY_8:91-!/;3 ^0LE,',NCLJ MY4@/.9&0JQ G.);8XSSA'F19%,]41)N"G5Q M6YB:Y; ^&GVLOY/RH^\T&.>"9W6?TW^LV"!?/,%("_]:P\J41GW1%T(V$J*F M]881$9Q\&4M4KQ8[_?D^-6TUZGQ^[2 QVDE3( MBT'S=R>;H^3N&=(W0/2XQ0O2MDZ\C$MV&-E4SA.T"1 GG+HG6#'0OZMZGLK\ M@X4R72QH]L"6NA^R]$OQJ(MIZFZ-#VY22N$@RJFB3P0#;^.=E'9H!S[IAV, MW%1)=C=HE9?CE#;%($;''W=7LUU1&%F/\*'3N@X.([./\WY)YQ0\$.^"YVF> MTR+GF?U\] RV];,:ZMR6 YR:HOME,+30ZP_ MT&]HEJ=)0F/^WBZ%>6SST44 M\Q<0R"Z4,"[KZ7,D!9NJ"QIJ!O)@4TAQ@N2O0/)OOH'*0/T6I$S'HS^@\JRH M@8G]:PLD]H^_0XJ9Z_F'X*,5_(EBG$BR5A MD(7>N23VM4W;E00QJ.,XVD9S>I7DJPP*F)REV3*%:L?7V;L@^?GZ2P(9B#3> MM>8$T"ZUUK*BON*0;WH3JP.\R8:Y;WBUMTS+;[;?,(YSYF ?-4BE5?KRWK#C M=D:+*!-9M40=0@M_\-[DT&<5I!ZH2)WO3\CMAAD_-?L&8JQY6N<<%^,\OH>* M#KZ2QDY]4]Q"[[L3LNN@7T$CD:[=NW>?I!&"G;:IH5D%SRG-YKD\9(&N.SG*IDP "'?>LX\6.@3MZE M699^ 9]6W]"CMD [P:AV&,:I !G^M"J+('QD.K)M\E5!%_E=6A5\IQ]I(7P^ MH0KB76KH3:_Q9QB<+;H*Y4AV03V@;V4D14JR2C*2T )R?S'9X/?P+UYO9QZG M7W("J#V$V(^Q1J!5&G-,:([S?8#OD\CP?\Z?;F_X,RT_#E\LEG&ZII2WN6&3 MXC'(*1PH9)^/7K307Q>,!J@7(\:35X--YR3G+LJ\+BPM>9*-A4]\$#V$ BE%,OITNVA/U\ MXC2R0QMUID,S7FB3H-D.'RD@X8Q!Q"U]B&"[DA3D[.K/GF!!JW$[ M&D!E['%N ZNCG>9 U&Z'O@.4<<:Y<1=!%/NV.$A5;=WV*:W[$([9/_O$Z;EAML)(E"C:ZSL&VRS>Q<\5_>4;:=GWIT-^EBF(Z5&OZ$0YKQTQ(QWZ.:2&>Q:>+-"NB?_+?2_W,9;?QKLBC;]T=ZXG!_WM(,!-L M!8)B3AN)/)L!KNW6NA,? B"CS)P/P>PQ2FBVKHNA+ VEZH'%MX$TJ/0S%7FO MJV88&*&)/],QZ;\I_A!$24$A(]\FS>0VEB*.TR_PE\LTN[[/F9KY#+Z#'=OF M7F0P&VN,W#BH;?ARL*5\MQ!5K-EFM6+.'TS2&GM'6_2A-<=OXA$V.HS-/F8( MZL )/!T93AZPU7_\QSHF\U3IVP3A M]:_'&1,\*KC/C@GJ>Q)S< 1&Z("\354DFO<,XC@S=9QOL6.]W_P09F&)QMT' MRQDQ0!CB@5?Y, P^[#5T(]VCESMU,PQ*F^/OQ]5R.$DD)X5SX$K;#QS>\ M6=FD"3[[81O76_1Z#J[ M)LT9>H8[$YM(W49U@S3N^K8E&IFHBT7ST1DKKL[EA+670 M;$\5'?!I>W2RX!ZS.$D2>WNUKM>_G8S':# &BTNYC&*:G;')^L"._8V1E;7" MQZ1T(_V^T/$O#KO(4 MBL9X4*AD<("-DOP1$0P(XT" A7)R+%1+!A1.Y7!5F5K%Q5E'"KE&V!"3-=R8MD M!>Y4VUP<7Q^6YYB%E7=*4U@B>J2<8VP W@4Y#^*"BQD^UM,L8^,L)05EPUK,Y(TRBDC*!%+&>3);13=G.SC8FROI_(L7UU%WP7(_*Z?@H=K?#? :5 MG%&;*7'="&7B# .NQA'[K1 [H0_PB9&]&ODJO;.8!HF"AQ&OH+1?_9.KGR_[ M#%%FOQ NB?DM&RRF^Z/N%5G;?Z#@9+FDN.0T@A9'X4S0'^)EV8DN9NN&I4H> M15G+S6(88JU!XZ@U62]I"&^/_$ +KNV,66SJLF%'PU7%5BN)<9E_RC-:R;&Z MX."1$,#UB,='E(S)BY*U2Y>/P716.H(,H/@^IF\OX\FJW=ICO/\>M_LQ%AP( M+ZI7Z(OR$;ICYVO3&[,?[B'ER _T_YK\MZ-MJ&M=S3Z1]BI[JJZSO;B]10[K MOJR'X>N;^+Y3?Y0=QRU]@'P::;;>;(MH649*LK]0]<#N)@RD0;FT!3'-"2?J MFT.[@>;-CZ#I0(Q4L*[HRC\.<1[Y;OYQ":PL"."+U-G*B@'=1YX$OR1MEN;> M#X64N]$>6NUC6ME;IEUMKQ^^66:,?EFE(;Y)5-_D[C";.;94D$' M9?:3&AF>HFZL[5_9J6A[$:NYX91VE]4 5L.UV$W M\AM>O9FKL8_I8FR*YGRQ0]DXQ66JPF';"F.2*=+5$EU>1LX=,PTV9,M%U^$T M0$JL/&M;B+T/V"M4;]7$T6!EI"M/2/:PO73=22H\CV;2EU6#CO@+4%/9<(X+ M@HO)"\5^+D--K="^$[4:HK'#)MDNB#O//J8QLV@NZHB9!U&JNSL,J322$X/ M&B_^1%3G]MM@F>:_)X*I9\BTM9$B"--\,/=S%A.)%3]2G9])1P?GYZ^6+,Y/ M7MXFT]#;0GOZVAV8NG[OV4]_^E7U&_9_]T%.__2K_P=02P,$% @ PC4/ M5U9[#4"<*P OBD# !4 !T87ED+3(P,C,P-3,Q7W!R92YX;6SM75ESXSB2 M?I[Y%=[>A]J-F.JRZNBNZIB>#?FJ]8S+4MBNZCUBHP,F(1G=%*@!2-OJ7[\ M1$D\ !"D> R'ZIL2P"8^27P,1-'XJ__\;P(CAXAH2C$/[\:?7_\Z@AB+_01 MGO_\"M'P]<>/'SZ]'KWZC[_]^:__\OKUT92$?NQ!_^A^=03].2"O*22/R(/T M>R]<',6453PZ/_L\OJ$QBN 1#6?1$R#P+T=C_Q%@7O,T7"SC")*C2XS#1Q"Q M)]._L#^\[__"OENN")H_1$?_=OKO1V^/CS^^?GO\]MW1_TZGOQQ_^/3EXK__ M/O['M[-W5Z.;J]O_^_[HZ>GI>R&&>)H0X?5K)FJ \.\_\?_N 85'3$=,?_[N M(8J6/[UYP^L\WY/@^Y#,W[!'O'NS*?C=G__T)U'VIV>*,N6?WFU*C][\UY>K M6^\!+L!KA&G$=1+U*/J)BH^O0D\H9?# (V4)_M?K3;'7_*/7H[>OWXV^?Z;^ M3LP9"K9/B< J"(D/M\9XPY$[_O!NM"O/&ZR&0Z%&@L3HTZ=/;\2WJ<*L,3_: MEDZW_>'-^LML8:2198OMW_[\I[4Y21C &S@[XC^_WEP:*/Z&%WV#?/+K6>C% M"XBCS<\Q]L]QA*+5)9Z%9"'L]=V1T.>G:+6$/W]'T6(9P,UG#P3.?OZ./^[(7F55OL5?SS=&'0&Z+VP4DQ?SP%8"AG>P""BFT\$0@*=Y(-?[YA:)ZSI MW\?W-"+ BS;M!^ >!C^_4I=[LX^H%'K?S\/'-SY$:RG9+SOAV!^_KJ$Y93@1 M$%PRX)__ 5AF59$C^JX[1,<8QR"X@+/+^W:A:*. M0%Y448[Z#^VCOGY)7Z 7L>+>TB4SD>JB.4H%U62H_MC5^C>P#GBHN+H&BQD M_"$MY@3*>=7D2'_L"FD6Q(>$C2B!U"T##)Z&,?,_5Z>AKP9>7\L).Y0H+C?+ MIZ[,<@>>+WVF*)JA]=1$"=>HRCMA"J6RBL#GN"LKC'V?@4:3'RSTAR.E!61E MG4!?JJ0"^0YBSHQ0I^S7";D+GW 9[JF2+J&>5E"!>0<19T8DP843,B7A(\*> M^AV@*.X2^@55%2;H($3-R#4-:02"_T%+[4M86M@E^'-J*L#O(&J5$>$9I!Y! M0AI#SD_7<,D,,H45MN@@J)T^A!A>@.>U#Z"W@KJLY?AKE%0@WT%@R]]%8P*! M@G0R7UN.;U85!:0=1+-\83$0QE;Z[X4BED-;5$D!;V4C4FP"RI9P /*>8 N?.PM+;!0B"$[Y3C,4)2IRSI9S M.:>8 N?.(M#S!21S1G&?2?@4/?!==P"K^[6\M!.X*Q15X-]!U'GIS<@X]A%K M9QQ%D*Y!NPC 7 *_IK#EZ.O45(#?0>"Y6>2]0/@V6D3GA(3D-&3O&$]C!(-* MEAO#1&V%43I;B+U]8/%&&1%E"ED.NDPM!50YY11H-I!6+I[GVSVLEZP3V3^NJJDY4@K%51@WN%>W;5(ZXV! M9JBGRSJ%>T9)!?(=1*:)&ZO8'Y;^UG)T,XHH\.P@ DW$N$!D<>FK$4V^=P/3 MC3(*5#N(*Q-!-@?,U+AN2[B![$XA!;:;L/&O;PJJ7+$/&CDB)K9O<&(Z#3$- M ^2S/_T3$/!#:,S#AQ&M>T#,H.6NCH<9B-+UX;"M2),9BUV9((B]%<+U]NR2 M\V)&5?<:DW44&E/*<"P1/5>HWW%:Q01\Z*HT51\M.V):S2 AT+]:XZ"46H@< M04*A*-F7^9)5"2,KYLOV:TQY]RN:K:!A2P<#Z]C@%-"',?;YC_-_QN@1!$Q2 M.HY. 2$K%FY^ T&<=]2JU;7!1HH^EC:5(1 6F>[V(231'62N$GZ$-.*LD@]? MM$4=,8Q=:B,<_C)Q HZSV3Z &2&^A!UG_N TBO821?7ZY6UQ%+&0+1 MTG'2.J;C70JS9E=30(3UL."\AB5;3 *R3-[&H;\FC"^;J*-T'317;C:+7UR*G//6*_8*H!P,F M, QC:C9>]!5M-Y*)[A;YWF<)\_)#^0MX!Y[7HJM'D*:"[:;1Z6J1#[Z62NL) M6 _U1@>U8^W02_\*@7L4H A!'E&+33T/8< TH9R!HU7)Q+=Q=3<7-LS1L1$^3:*WC[Z.2S8JT=ZB*,EX\#@^:LR'RWNW M_,+*GJ"UOM\^3H0C'E]J1[YV1T2^6-].>153%'6TR67P?;268PH0B\%/P1)% M7"BYPZ H[9(YE!I;-"QN8 00AOXY()B_-IF+$R_B@&]U/(,SY"$5EQE4=,E6 M)CA8Y#O<$0AH3%:E?"8IZ))99'KN[SM\6OL.&,ZY?:WQ'HR]!J=,*--3/=OJ MD/M7YC35G YTV!4L1T1-H?L9OM_##E.!Z@.,D >"]DX^9!]CSS&(K%S#F8CF M(A6&[(0(*7WQ\IM"(HX3EP0H#]@_H2? M20WG;5;$P*(0J""G2.QG;*>D]('8:*.[1;%.A1021E4.Q%(&&25ZV5&2"=D2 MJ87 )A%JIKR;AM+HK]]DTKD/N_V03F;K/3&-^JZ2YGOU627R=']:A3]V*TB) M>ZHJW<,DX2/$L7($;[_N=\"6@)N=[=LH9)7/2!G7? Y#7T3/R57!MV&@=D64 M%9RQA$YIBWS$SR2D=$K"F7(^/%W"&?0S:K4U-],Q55'(H.('@<_8( ]"L4$Z M.7&EY"]='6>,6:*Z12[B+11[-#Y## D(F+QC?X&PN)R-9SK66\NPLC-F,P7# MHAW*DR7DPN'Y6LVKL)";6%?2&\N3OTHU5.1H[Z2@[8J@\$B MC[ZJL0[*3I5-Y%@4L'MA7S"P^ EPA&.F:_)&#S$]@;.0P.U),$C/GQE:3%N$ M 5E=LO>'.+''SXZ'PC\K9=SVGNC,.[55V _B_/A6\V2\G3"O7SVGH"KM6(>0 MJ-O2)<^U7@0P*@UCLF6<@3^GFN929X>&T&:'YF;=_P10Y"GL)B_KC/T4JK9U M1703UCA#01PI%\]5I9VUR%;=DBND>UW;*V[$:VV=3_(H:];\)++UN%>MQN$A MD[H];&-.Q+KC9U7+9%\7LF9AO^I.YJRJ%LT_;$5;:['+^C=^1LJ4HMHZEM@H MTZNDQI!K;)%M<@*>A0N \OGH]64ML86N;V5>DG*%+3)):C/5%RBY'EI=SC%3 M2!2U: Y.<4!.:Q)]'+RZ*+,5% M8TP0$O5Y.'9]%N$L)HQ]UW>?B0,_YXME$*X@7)\&BHGW "CD.3%U%J[2.=?*"-Y?5:$W Y[BOW 1C M_[HKY4FVM]NGQUZ$'M=904JV%U=OR)*1 MKS%=C@,J(V71M+EKQ%R_8U;?1=//_/G6.>"[YIBJXNUS%_(W._90 #.RWX7- M#-/6'WL(O:9]VU@4QI]!9B*\\A%U:[^5U% ,L]S_S845&3:XI5W2"SQ!=)JE:)K/U730C39?15'J9 M_46'XH&D7]VI>1IB'RZPSDE1%'[)G2.+VOX)7:WH%(4;PD0B4_;SE'V(E)=R ME59[>1VE'$F+[MQE0O+])/ ,KG^FM$VFV,LS-9DV< BQ;16\+%J6+(J]N6EI M=\^]L8$E57L_Q5*Q$^M-*L-F_WC3"IHO*KNYZA8IDYSIZQR6Z3-H[!]06FKS M*8%+@'S]?$-IM<.R?!Z3 XD,)3#Q3!6;RZMT%ZX:53VL3B##YD"B/H6R6[Q2 M-QA4ZP_2%@ZP6\B1LFCSB-J12:[3O"/ K^[F92H?EEWE^#27YZS'>62ILKDK M/*MTA7S5@^L(!6RLRH&6%SBYZS-[U>=DMCFP8VS9LG8.R\REJ*DS[5B\M6CO M+44',3-3!:^#N(-5H? Z:6 #>\]T#1W$WC,M4A9M,6'>R687M/?/&!'(%&&] M.EKQU>]HC'V^#5]D/%88N$(#5C*!09=.F[L*7@0/E]0["JN7H',B\WD;3BY"DNW)*7Q,?L6HK MA]1'C)$[D E <_3V]A,/HI]4P>L@;O55*)Q< ;9_0*%KZ" ""BU2%NT&2-,> M/V?-[[/E?L@ND85O [B;@"N+?_'(]M'%O.*+4X,'^2Q3LN_8%%O]H-4 MR?7!^?R<^OFS%\3\(E;VRP/ IF&*G^H*X2C527K/-#+EL)[YBV)^PA MOY=,9>AJ=']<6 ?F5CZ%)H:5^Z4; P-E3@(; J*/U[NAA;>;S6:, <5<\^YT M00-P+0BC.,^DKB7X4 T^LP8CV:[T^4("H15Z%8O;:\V MIT]JWU(C;:O[X9]Z^##8*]]V*X S']/:*DX-7;WR-HS0]WS#*'^IG=,(+?A< M[V;OZ 1_Y>=]>;H:GHP2"R4;>+%7?F+WH[VRB ,G5!+_)*8(0\H1WF 8@V!, M")_-$XL;YF11KRVG6*0F7#;0RXX8W\0;:"1'S9JI#78GS[DS79/ M&W(Y!KIHAB[,?8E*31PCK.?QX^Q"2Z Z2Q4E(2/C$O>_]1[RTU>X'O%2, M8;Q76SO80,CS'I:N%<@+.S6&50K;,%H_)N>-DV0C#8S40HO=C]*"",,(K9;2 M/)N,@&<\+IQ*-W\YUVW-J3%>&S(;2. 3/W;6P-!/VNE^P"MD'R&. M(=]=OIF>^@5%#ZMBMDWG^ M,)RKIF990U=EP4Y3Q:EAJU?>BJ$ZVJQ%32%)#GWP.^,:&+6JEGL8P"I1AK%< M2?P4B@*_LH&L+N_4*-:H;<40?GL# [ZJ/ 4D6MT1@"E3A#VKB5>ONNT>AK%: MF&$@5_2QY3B:OZ.KM.#48*\$C17#_YWR/N\&QK^F\1X(0"/-P UQ9_,Y)<$ MIS>$G*QV99(#P^,G0/PREFCZ*4XQ2>,06\$V[W.WBS7A9!3;[(%;BD(,E%*; M4M*]/'FCBDV0A3Y>>BQGWU:=I8Q:$%I!$1^FFX.(8D@U0!#Y%GN@A[P( SE4 MW$Z31J]\YXR\M%.#6:FR%8/TASN>_2 FJZ;&:*[!'H9H3H)AA%82/P->V0!5 M%'9J?*H4MF)X_G@#(T3@9FMM ^,SWV(/ S0OPC!"J[U#F3N(Q%7?XB3 E'F# M9 OH"<1PAJH<=:G=G%.CO#YH5O# QPN R#<0Q"PB2!)O@> 2,R5BX?LW0 RE MC^B!*4IE&JBCDOA;.'=2E4;>^CI.D4")^E:,]$_;_$&7>!:2A7A0 \-;WFX/ M8UHNR#"0*V?@XAC>QDO6%3@7@J#"F#:N[M3P-@?%AI'^]O@&T=_Y\=NOV(,D MXJ?E&LEWI6JXA_0V"DF&P5Y)_*\XIC$(I%B6C72SNDX-&P85 ; M9FV\!I%8P$MNU@LQ[3REI48$:Y-=:F3N?*)-Y"HP91=5Z>[SVQ<05$@L*=@O M9Y0 GDE*+U'2(7*8$L2HC8U[<;DJINQC7XC4.4>42V(M592+/C"&V6Q" ;Q5 MZ0R"KHHS+*)7W"$^N8WO*?QGS 0YYWFANG M9G6=H1%#*!SBDZ_\\J=-GLKNV43Q>&NY1"'OP"1F\YL9]%03F=E"SG!#7CF' M2""YAR1_?5+79% BAK6D4"+W0 [&*YT*%,N#%*.ZSE")(10.,=$-:RBU;J@5OJWF/&QI<,61.FJ=J24[Q3&2:'6$AS"4_G9&0BB[6<9"+\ M0$V&QS!2E_)L<-WAJB&)&(<75G2,4<$(=(AD=Q MR7&J*S2#EYC5Y?>S]#*GJQ7$6K(IE7P@'+/]KVGP3D.R# F(X(2< /S[Y G# MTJ12%1IPAG2J@.(0[21IJUG,%K)2O6QSTXA@+=5H9!Y(IDH2^3R"I>Y,>3UG M*,4 H>8Y/8!+9?L;^:0_2? /A-@+K)A];!H5"*(M:Q2*OG +88W14EQ--P M9U;9&98Q!<,AJDE=]M##-&WQV=82BDS8@4.JW8IA.E6K*.X,3Z@5=H@9Q'U. M_1"#Y-'6\H)$UH$6#,.6>1SP=E=Y;E4M^>IJ.$,.6K5=X@>>2;"0Y;M[KM"+ M82]OZ.4>.,0P/)&EFE_G-6=>.AMAS.3H4=R:H.>6.BTYPSFU8'*(BZ[AT^[# MVXC%9H#X/60BT(MA+1>5R#UPD5E&@C2*4Q)B]JL'=UN6#7>J5&[&&1:J#I!# M%'0#O0!0*K[O)P^*6@)KB4\K3M)6_GF][Y8[>==Y?& MLX1S2JMU3C[%7>KC( B?^*Z.BY"<$NBCZ"JD-"NY0KV:C?5+1*:F3#-27=1L MX*5WVTW(M]X#]., 3F;;CYIB'Y.'=,\Q)E(-3%)W&F<+Z=<(!2A:[9 M6V(V MJ.D>1QCA80,AO!>;*OC&X23W@[^Y/WJ"O_+I;::LN,L-"UWI3C%1\1)[,;\T M2EY8UFQ3)-.7X-T35U^:#F18.T^=@/W\F5F73F8G* @XK SJS:^[+T59(_]J MWU;=(]&]<72;8,>+==Q#(!O"0>IJ3?: :N2NEA<[(;3)KP3G"J8:/#9SS@RQ5Q$X3 MY9G_IHAFS^=WSRY["OQ2*:6]=!RU$W&XR#-5T+"!7CZRL)#$S/E_YCM)87IV M(_M%4WQ2]8'=$TA5"0?&V'NA, 'V"H%[OD*&H-DT>(4&W&.0*NC8P"2?Q.$I M]C>8L]AMOMZ4/A,?)@?ZFZ(0XR=USQW&H@VD4?\.S0RV:5C+^,*LKGM488B) M#2PQ.DX=E$NO3B^6(>:;Q_E&G*1 \IX]@1C.4&,!S=X2]+ !>U^1![;9VT4Q M!=O<9ZG>HGO,M!=^%O/5^6P&/7[(;OOM#8A$QB+L,1]-2-,R8540P1K&JB#S M0%E[4Y8QVN:<5:-)ETFK#H(6L]89G$&^_8]]/*84BN7??%39'F&9/=T:KC(3 M=Z"IO6G*!&ASAJK6FLOD5!$W*WAIM-ED,H6$>82+$(ML!BG&E7[?&#/M]_P> MN&D_@0=VVM^)VN&[2;R!/#;2SE 01WSP5?.?*K7F,CM5Q,T*=GHO\OBL,ZF( M["D[=2X (B*'.J/:>"%*-.SMKJ31O0F#X"(D3X!4=5/,6G&/5BKC M9"G;2#/ C0D!>"XP.%GMBDS!2L#"U4L4_@8I<\'XKJ3G)?2X-Q;RCR9Q1'F^ ML'52[/-G2#Q$!2#M\5<_FEC!B/VH/G!LH]DI6[97>5+^7H5R\ W0LQ6M>*%\ MXC>"703A$[W$LY LQ(-22[7)MSM$0;"KW5S8VX@8/5!Y(W(//+S_E@P#H"ML MQZC4FH/,5QRZ&T$[IR=#'-U6I"EDY]6A=L# M0RI:R1;JF2U,3PO6T>OAO(7HO\,>4XYHLZ 6A!/SFR[QHCA3IO M.^:LP$OV:YZ'-05MY6*=;LUUZA8R\GXF(:6G/(,?5CE()94L,4FA,^ESZF;U M;ON56<5$J62_9V%\'\WB8"/^E, %BAW+E MEY#\+O(L\I39RGD562DW,%?JV-STW8LY& 7NND"60:Z/>O%X6^5B[H;J] Z\4^'11I^#/Z&ACO[^& MJL@T4\0IT(5.;D_H='YQ3F.31+U)[D1.^F94/=S)+,72:CEN3;<-VP>E.8B_=IV*GK9%2JZ;Q&-0_[AX!WRJO=;6>")UQ79)1>\ MKHXOTO>6 5R\W5)%<8:U7> Y4R!L6!J3VU-Q_ZA,,8D]J]2VW)Z5@%"[[*;V M_+2V)^99KY.R@__1O_]QP!."9;?5]>EHF,KFA$=AJLQ+>)-8$+'D-&T?Q=NCAM)P#:N:CGXYA#H MI[#L]$!ZJF.07/C#CTR%X 0'09 M4NA/9I)1+2ME^4B6*M;V"VY*PD=$6>N,J:>A2*L"@JTD):^U"I4MQ[X*#/I7 M6#>T^ ,3> E)M.)ATS]CM.1[TW'\ MOGOG]U6]]42H:(7P%3'D&3\,JVA=#6 MA"1"?XC/E9HIC-E8\RZ8O3DL71C#ZB0PVBHN&%*OL]NKL](Y]7;7&"Q;0!A6 M!TI%-:$OA?1&51U823"#P(8CFWM;6VQ2. T7"Q1I7N7Y4@[8L*"8#>O /]X^ ML!YT!\GB)"0D?&HTD9:N\>[I5R?-P+[J>0CFFTQFIXPZD$K*3!$'1F)6)8OB MG[1@%\#CF6%7XT=(^/F:U'VW8D>\@2U*FW#,5N60M+T[-/7(TP?H_2[;-ETL M8S',"J7TRSO=O)H^L@B6Q%#<^XPI3"<^R7[1V/NJ\A.[?XE5%G%XLPV[CJQY MOUT 1,0)T9/5%0+W@LQ/ T!EUXV:U;%D D!?EY7[0ZE]I_;;Q\QZO/2+M.> M(;JZA_4,+D.*%&N7FH*.6$RG:MN>Z!02&F(, W'X50FPM)A#\,K5;#NS@YBJ M46*:_M8A*#-*6;0I:%@2[_-^31XSI%XTI7=J*LI;8HA"%\JMB*JTM2%-P*=; M$+"X#5&09+1ACYG,Q(=)8H3& EWS1W4?X9K+-H2V0VAK3?BT%>TDIHR$*+V% M<[%]31/:ZNM80JGE[S:YQC;99BV8-@S-EK$$>UU?RI@BJV#;X=UM1&(OB@D( ME#YRH8@CB,K5:SU-'R0A70*/O=IF?/96":NBH$/@JE1M.Z2[Q#Z+U/F-GTIP M"T4<@K6HWA#A#1'>7/!\BO //,',OVF(9 M8CY,)[-M@611[@1B.$/-[6_<7X3NP[O]91["/J6HR7S&!63C 01B5(VQ?\6> M%13@+-&F5E,.A)#U(+(HF,DJ4)#9R)S%6OU:;I]^JS:N!!O[[*A75F_-DKH' M9=,RG"SRN:IHW@#['I:=#5&SX<[#!@XVK 5MXGU=KRT'7M@U0;*(#W(:*-Q; M,[NJ*O=KR+TZLL;82J@.XJ3+1MD,7/5ZAU$3!]9'S& [B%1$E;!KX@5Q:'WE M)7D5U1C$3K(P\@PJCGE7SD0K9LC.9S/H1>@1;K^]89TYN]^S[9G%*C)8,[58 M1>AA;K&<5K+(*0;A.!W(Q3P'<@;],C)JY!DN45@SH%HTO:703.ZT*=>GJK;B MKLG5P%@4R2ID9Q^L#VC2$AHSK^^N(65@6)0MLU3J&X8V0^JAK@FW]?LU8>6N M6LFT.Y#VGXEHXEKM]KO%14@@FJMVSQE7/^1.L87(CJO6V^H3XAS)]B,\UVWH MJ=3$X?4-!52='%\:^[_%5&2:D28IR!=Q$'RYJA;M>QMF8M3&<&A"33Z!P*_ M13AFHWJR9#$95U'%@A4:<,#85>#0Y[3N=3YM,S7,/AY3"L4%LJFC86U/I1D^ MWII9-$-YAPFTTD6<+8(B_Z[ALKZBD@-T4:9VVX=5TE>)GH7Q?32+ ^9E0"22 M)LA\H[(:=JR-Z;O1]KA%F?9MP\_$W-WJNO73)*@K"KH$MDK7UH\/%6[+C>!6 MD)(.7BSO$N(EFK<=:"4GRK\!3Y:$5E;"*7#SVC476FGA%#E2*94XU(I"#H*: MT;&YFU_DN/X"" $X6O%92_(HNX@U7\(E1 O:-7>)BQS.F[/MO(0$RO2W+L&8 MT4I]UTI3$)Z")6(AO3Q]M[2(6V#F]9,C^K'!,]G,#Y^(]NDEI8QBV"OQE@T( M'O1)X-67=PGK$LWEP']R1O+H'!#,[U"9KF^U"?'M P,L MM>]:^GUS@WY/ 7K@ASTE/EPJ44P'KJ_Y2"%!4U=5R*8&]14LY@H3=5M/VIUZ M,(^C^0+15];U22K YG<0RF83S.M:;H0*(+2^JJ/M#^Q5$B_8SS,4Q*JUAVH- M6&Z9JG X[BB_.V>OQ' %H>AXTYAX#X!"WO6:>X.6/Z.'EV2Y4"_M/9CG).9* MAAN03,@X6][R85ZB;.NI3<6#DZ4D/I%\$1.^Q52((IM&UY:W'.L296VXGW+T M/O_BW7G+V]L/!/FO%P":(\>:#^Z!,6M*>K@TNG_"4CXP3MAKAZ_3\QW-R; E M ,_7*5E7NR)3L.(?C9\ \65XWR#Z^P6!\!)'D'6)2'/^M?WG6LQ('8)OT3E9 MHQ%Z9D"Q&NC[6S@-=Z5PMP6W10=U&Q]!&S6]AP)KA=PQU M16&*)[O2S]HV@$7'BEO1]PP](I^Y25UWM\QS7VIGRX*OW_K9?RR0W@0TYJ>3 MV"#I)!;0/=BN6$ GZ1 +-,]L"=2I25GP M3A"FR!.^2OO=-?>\E]5!\V WMH[F?I?\S,^9T$L\%9KH=BNU\:07T VE %N4 MT*-4/UI)P39>R@U*< @=KDF#-'=,KWE$->!2=H[_]2_MYJVN]>@XCJ@CA0K?JV"R*+MG[9N$] M.?H;I%QE[&^W>H7\H_3!$_Z=@((?%6ISRT%/JEBQB:$GW8=M$9K7.H@$]'<< M,.4K.U/(!=[,J67;3N'"(%@["N,X>@@)^@/ZTL.*)ZL,7=_P83-^1M56K_9[ M4K^VE_?6\A?FGN@>1N\I:G<6+@!2W072QI-Z[CWMC;R&NJ#:1&T?F+O^>#SZ M='P\^@(ELZV2 @=M21D@;1\3O_YT/!H=:RV0*W'X)LA#TG8>X&OVM!%_I,8( M^2*';X4"*&WG#[YF3QN-WNK-D"OR LR0!Z7M=,/7[&FCT3N]&7)%7H 9\J"T MG:;XFCUM-'JO-T.NR LP0QZ4ME,=7X]^8$_\46^&7)$78(8\*&WG1[YF3AEG M0:T9@!GRH*@70YL+%TJL\/&E&2$/B6;MKR$C_'@\^GA\K#9!YOO#-T 6 MC@97U]3P!$&2 -2LIC4SSSW%<)0=]6II*#U89*JK^IH,/YP1R!@OZT:'HOR=GL8BG)!#G%F-)MF7-%P#P-4(5,^&>PS>CJ[@' 13$GH0\DF5YHA5W73W7*F6 M9: _I:A7(:5\LIC!!;&WF@+"[W7]>XAP%*R8HW$+^8Q;$*SXK:\!O&06C-!< MV%*AU#XM.C#(]P+,(B[.Z7$-%LR=8($)TP/-9F:VS5=RSWP%M2U:)I&*RB_T MQ#[ *DHIJ>2JA5)J6Y1X/B?J%7BB,8HN4, O@U/GC2^MYIZ5)*I;E#HQ)^PX M".":D55S?9H*[MDFHZY%>01S8GX!&"3I ?A5Q92*@]38%_Z<,MEIQ4;K+:GDGL4*:NMW^2MCP.0+_A]?6/_;G_\?4$L# M!!0 ( ,(U#U?M?Y;R= < (\< - =&1?97@S,7HQ+FAT;=U9;5/; M2!+^GE\Q5UNU0)7\2D@(L%096RS>98$R2FY35_=A+(WL.22-5C.R\?WZ>WI& M-@*[I?OKI'NGH+/CC_/C5T3\:#795J*@,1<3&"R:B"2\: M6A0S&0K=#%7*2BVS"?,'O_9&NI1&,*UB,^>%\%@OFO&,=O95FI=&%&R896K& MC529]O C;'J8RQ>%G$P-V^[OL&Z[O=_HMKN[[%]75_]L[[W[X_3C;[W?/PQV MSSNC\^M_-]E\/F]:,ZPV:T*C 5//_-X '\$P./>/^Z(P,I:A5774'P\?)& MIS^$^0C@5TC!F?K^*!B>#ON]8'AYP2Y/6?]LZ)\R_T^__SX8?O QA%E_]/BX M3U)W]7YT_;YW$;#@DHW>G_NLL\M9@W5>;_,=TAZ<^>P:JD?#8.A?PXS^6>_B M5Y_U^@%-=][MOO:>R93>->L-+J\"?\#J5D&[=<5NN[LRJ#W7H2$%>I@P+H8/+ M##Y9L#(S10GB-MR(%&@G;W"6XET[Q8T)*4 MWPCHK4?&92S/% 74N0FL@R MHR#<>L M]&H1U$MC'EG[ ^7FZR8+[AWXYY_VNYVWA[J*4D6KA&45HVW!$+EBR-!&6:?# MB7*<"'(.$XCT.)%Z2LMI68H\IERFWY'48:)TB7V4X85*G/?S0J$1P[!FVW!V M)! ]YU'_-ISR;")8#\DS*A.L0-EL=/:VQ8[=VMF+W"_W4U(US%S423ZC#*N! MP06';-E847Q/40Q%=,Z'$,$*XO1O+3LO$O9ZFV>;VZK/HT9D(#04P">6X+X< M,(^X-^2EWGP+D>!8P/F5)D>KJD074^;4O&N;K%@E,BN'ZOE=FM>IHA )M]&L M>/4N(EY%(S0ID?*P1:M$1MQ80\=:1I(7D@X@'?M;\LI(4JF)D2WXM:5OF]I* M"QAD0"6T*>> 45@FG!@)Q[)&W#$[=K@Z42]O^#86M!"D@?TB>I&HOB!^Q@_Q MLW$Z/H+1YHF\,9J P)F,""16UIK#BPQWE8'RLLB!Y:TK5]AJ(K(&F#;A(G(4)820 HS(B>L MTA*T0 XVP+3,P4U_-^"$.\R?\:2TV4E>%7&,4BYG\(=>4Y)7%6H#MG$_UU=I MBQ-L!%-HUPN,56D^;<$F?,A7JP4U.O&7&SXV7K90%OK">0+V')+POUFH(W"$ M\^+C:%"[7Y5A.[,VY%_!#%0W5!B6!?F\1M)KI*9*&XS3=1JR= A!?Y7@>(C> M_L26&.!!SCY871F.AE+8FTIV_V*WXZR:6!^N];W;1LP.,6I:7 9AKCO:>VKO:"WBT!*)WEX+$"'4PW&4CA?,K"MJC MEF1E&D=;8E2A5S7$#D!DBCNL$18W:[:-%2H4S442MED!VX +J$43=>&3&J,E MQL5?I83I%L]E%MJKSLX/WY[V<.&C0F\?G^)HU,&'4L#Y%=.OVL2YX#=$W:[0 M6O*V+8)]5K"\_'U52*N.SMUZUN0GC[!1BU5Z?C+\56.!+8@CZK_GZH=&\=!E MBI/+_PI[F(H6UUZ3OTMM>.ENL0?"CPO WX-SA*0>_DW*\VCP$#431" ME20\U^)@^>6>)]_0H_Y@A+\!FSD3C,HK">Z-0+?3:>[!WSF/J)E=[5L-N B\ M<2\--C2\ 2T'M2B.E3$J/>@V]_[NAN8>5ARK=;=K&[(V._=2V_[:>[T0MW7KT>+EVH!9B\.K_,!!U<#V_ MYTGW1F[O?C8#'OJ5K7V)\'D9_:D4,?-O15A2A\XN76E_%**63;$O9>SG==US MZF#X@3ZJ-W0M]Q[R?U!+ P04 " #"-0]7WSL(!"5L2((E0"G:7]]S 4JF']W(CN/9M#.I+/ "]W7NN1?4T5GXZ_GQJZ._ MM5KLJE1Q%8F835=,Q#->MK0H%S(2NAVIC%5:YC,6C'[R)[J21C"M$K/DI?"8 M'R]X3CN'*BLJ(THVSG.UX$:J7'OX$K4]/"M6I9S-#=L=[K%^M_NVU>_V]]F_ MKJ[^V3UX]^OIQY_]7SZ,]L][D_/K?[?9=6NCDY-^VUACH^N&$_E+/_Q/Y7&R:MZWTZBVC$9].2>2P@V=JGHYO::&'G^.CD./@\EU-IV'YO5\J]H\[)\5'G M"D8^6?'.\3_RJ2X.U\<\>:/3'\%^9/ 1I\"I83 )QZ?CH1^.+R_8Y2D;GHV# M4W8ZOO OAF/_'$MX&DSNN_LD=5?O)]?O_8N0A9=L\OX\8+U]SEJL]WJ7[Y'V M\"Q@U\'P_60_=_FOOF4SQKYD_NKP*@Q%K6@7M M-A3[W?[&(']RXE\$UZW+W\Z#CVM;4 C]IBE?F;TGH&?LL2M>I>Q,\'+EL#9X;F4TNK64B]MU1(O38;LSE?"%:*A11+D(^92\UXGE<\Q6*A2L-4 MSDY5F;%>M_4+4PD+^2I5)1L)2VN.F;Z!<=_*Z7Z;G7 -5^%7MF*?P*Y0-0T4$(B&?\DH+=QIL9:#&.@,K5$#QTD$,DRJC*(H4=H6!*CR)9S M&1 )G4J>$Q]9RG-' [J0D360#JW@&DJAIL+;+-MJQ&& M0_;]Y'7_?^15L$3FB!PEX292'I(*<3PN&\]EG@#MMA?B[RBM8IR);#3"XB&3 MLDQ7K$ P"0>$CS2]270=8WU'-; 42SK8(XDJA0"RJY "U^6M/1'7(X-Z;G.WL1%L/=S1\C(2& M L3$4MN7$^81ZT:\TMMO(?J;"@2_UN0(55687*J")G9MRQ12(K?G4">_*? F M290BY3:;-:/>9,2K"80>2A0[;-$JE3$WUM"IEK'DI20'I.-]2ULYG51IXF(+ M?FV)VQ:UT@(&&9 (;2HX8!15*2,9]?;@S6X1@(SA"N_X_597Y<]W;,"'?2 L:;I(O#WELNAZ;+.B%BP'L.:3# M_V))CL$.+HKWLT$C?MV [9,[R7X$&U"O4%%4E13M!C'?.B]3VF"%+LPX14AU5C"'KMU%[ 86@B M)'S2H+/&K_B]DC#7(K;*(WMIV?ONQTT?5S=JW/8=*%RCB3R2 @&O^7LS]BT% M_T2$[!JGI63;\NVM?WV->U0:ZPG-W6(>J$,>8Z,6FS)\(.7UB !A9!"=W'/] M0*,9Z"J#S_*_PKI1T]R#5]UOPO4O/??Y(/"D!.0]A%78^D1B[$N0.H.>8T29 M+U2Z$$2+.9_5[W+*NJ1%5J1J)?!T.5>NCODM?""?7]DAVL_Z2C#T3\Z#>O,4 M !!E*U)IR@LM!NL_;L7P#;VC#R?X-V(+9X)117V">Y7?[_7:!XATP6,:2#?[ M-@LN]F_M?_M/),['=UIO!!N^-%!W%_]'P6_WWY[ M<+=2GS_@I/L;1OMNI!_U"\!P+D7"3C=5>NGZ^+V<=6R=?:EL^UN7;6]K'?-! X! T !T9%]E>#,R M>C$N:'1M[5C]3^)(&/[=O^*];**04&A!7 4D*5!/5A0"U5MSN5R&=H#9+3.U M,P7[W]\[;775]3SV9#U_.!)H.Q_OQS//^\R4UJE[/FCOM'XQ#!A%PH\]ZL,T M >K/261(&JV81V79$TN()>-S<'J_VF,9,T5!BIE:DXB6P/97A.N97;$,8T4C MZ',N5D0QP64)'[QR"?O")&+SA8)"MPA5TSPTJF:U!K^/1K^9]:/SD^M/]ME5 MKS:PQH/)'V58K]?E-(S46QJ"86"HIX[=PXO;=P=.NTLCQ6;,2UVU*EGC3JN2 M#^H,>]=XZ?6O0*HDH,=+$LT9-P(Z4XV/U5 UU\Q7B\;^P6&HVJT1D(#-^?&7 M6*+5))^S-Q-<-2PS5."R)95P0=X695J?M MW"[8E"FH50NLV*ITVH^->I1K@%\9VO]6MF4%5ZSKC-W^2;]KN_WA!0Q/H'O: M=T[ ^>QT+]W^E8--V.N,7[^8345OE<&XC_,:M8-0I?Y'E^/)I7WA@CL$ZQ N MRY-RMPP3IYO&8]7J)I;H!.S><.0Z/7@X_&[0D7D /RL\!,0]=6!BCSOVA3,Q MAI\'SC7875=#A3I0_=[Q?UB 9YW>,UJAD\$8L;/=Y^ )SJFG8,W4 M2"PDU, M(D0J2""BH8@4B!FX) E$!#V:2FBF@E#8O8F%:NHY6BL)3[*&(@@.+1LX6=+C M/T^#K_L?ZS5<%!,J[1,1+<$RC3.8H3T]=<:D1P)(*(F (MH^G),$:E8)4D55 M J9Z4( =:8@3ZL414PQS)MP'Y]9;$#Y/0U@R*5$ZM7LT3J8B5JD+GZ#"+VA$ M,9.";FAUQNTLUG&:8AXWYE72< JU2. 3LDZ$7P6*_8+1&3I"QXJM* QG*-)( M);3V(/<2>*E^XTT8H\X3KG3P&*Z6\]T/UH'9U,S,9TU(-"6<2F-X&] $;"_% M63.HA+S/AM^1/S.1DU\MB&ILB2!OQK."5007L\[@AED<(+UP%PP#O8[WU(OH M3(_C-SK<4R$'TSJJ[3\33/.^0(TY491E1JD$JZFP0!X#0:,:PC[ @1-5G* MBXOC84:WHT&?I:9UU>"H.,@P%B&-LL/-$T(#N6_1!925VUW5XB0F?(EF5UA7 MZ3'K6Y3E[6/TL[#O*V 2N, +;@^I_.@"PQ]LE@KSUF34$N13O/4?Z9$& VL] M%)+*#?GX1M!L8;-[;'9;EER[,W!R:U,1^30R/!$$))2T<7?3?"@BJ8:X8_SV M8)4EIT286\@.O%4+!S5#XOMXJ+^?==^0GM,S.QOG8:"/U$C^.!5*B66C6CZL MZXQZR(L&V/$HOB30B M*N^81Z.R)]801XPOP>E]L:=1S!2%2"S4ADA: MN_(UR/[(IU&"LJ8<"YN".* M"1Z5\,$KE[ M3"1;KA04ND6HFN:9436K-?AM,OG%K)]?]6]^MB^_]FI#:SJ< M_5Z&S6933F&DLZ40# .A7CAV#R_NP!TZ[2Z5BBV8ET[5JF0O/[0J>:?.N'># ME][@*T0J">CG-9%+QHV +E3C4S54S0WSU:IQS< WSN'W$YU'8;%4F.-T+PK0Z;>=^Q>9, M0:U:8*S8JG3:CZ-ZE&N&7XCM_RB'BH)+UG6F[J _Z-KN8#R"<1^Z%P.G#_W! MR!YU!_807V&K,WWY8C85O5<&XSZ.:]1.0Y7./[F>SJ[MD0ON&*PSN"[/RMTR MS)QNBL>JU4VLT1G8O?'$=7JPWWW;Z=P\A=>"AX2X%P[,[&G''CDS8_SKT+D! MN^MJJM (JG^=^#^LP,M.[PFST,D@1FQL#SAX@G/J*=@PM0*UHG ;$XE,!0E( M&@JI0"S )4D@)/1HZJ&9#4)!]SZZC85J:K,D/,D>BB X](5<@V4:E[# @;KG M@D4>"2"A1 )%6GVX(@G4K!*DWJD$S'6G !M2+#/JQ9(IALD1[H-S[ZT(7U)M MS&L616B2>AX,3N8B5ND4/D$O7U%)$?(>NFF:1PX.P9=@0N( +A!)@F:^8G0! M?<;1]QD"'"_0A%$I&$.'R%,K@9?Z,]Z$,?HXX4I#1I#:KH\^6J=F4PLO'S4C M1D6N>U MDZ:6QGMBZPG7*%0SVG>C=B_2ZE44!8?WITV]M7^_L3P M+'3_6@]Z[M<1@ZG!/Z@ GO2EZG>W[[\YQOV@PV4Y/I_?3*25U/=^S$F_"8;? M]?J2?^57LO]E_ E02P$"% ,4 " #"-0]7I^XFBV[^ E]@H $0 M @ $ =&%Y9"TR,#(S,#4S,2YH=&U02P$"% ,4 " #"-0]7 M 00R_I,2 #XY0 $0 @ &=_@ =&%Y9"TR,#(S,#4S,2YX M&UL4$L! A0#% @ PC4/5_[U,UNU M$0 YA\! !4 ( !71\! '1A>60M,C R,S U,S%?9&5F+GAM M;%!+ 0(4 Q0 ( ,(U#U<"\816$D4 )V/ P 5 " 44Q M 0!T87ED+3(P,C,P-3,Q7VQA8BYX;6Q02P$"% ,4 " #"-0]75GL-0)PK M "^*0, %0 @ &*=@$ =&%Y9"TR,#(S,#4S,5]P&UL M4$L! A0#% @ PC4/5^U_EO)T!P CQP T ( !6:(! M '1D7V5X,S%Z,2YH=&U02P$"% ,4 " #"-0]7WSL#,R>C$N:'1M4$L! M A0#% @ PC4/5T2*0_)Q! TQ T ( !.K8! '1D A7V5X,S)Z,BYH=&U02P4& H "@!V @ UKH! end