From b3de003aa5d97eb57ecdbef767df074b44f604a3 Mon Sep 17 00:00:00 2001 From: oleibman <10341515+oleibman@users.noreply.github.com> Date: Sat, 3 Feb 2024 07:25:29 -0800 Subject: [PATCH] Reorganize Samples The samples have become unwieldy when running them from a browser. In particular, the drop-down lists are fixed size with no scrolling, and many of them are now just too large. I have moved all the Calculation samples up a level, and broken several categories (Basic, Chart, DateTime, Engineering, Financial, and Reader) into several pieces. Convert-Online (now found in the Engineering category) had a number of different problems which are now resolved. It is the only member with any significant code change. --- Header.php | 3 +++ phpstan-baseline.neon | 10 --------- .../{Basic => Basic1}/11_Documentsecurity.php | 0 .../{Basic => Basic1}/12_CellProtection.php | 0 samples/{Basic => Basic1}/13_Calculation.php | 0 .../13_CalculationCyclicFormulae.php | 0 samples/{Basic => Basic1}/14_Xls.php | 0 .../{Basic => Basic1}/15_Datavalidation.php | 4 ++-- samples/{Basic => Basic1}/16_Csv.php | 0 samples/{Basic => Basic1}/17_Html.php | 0 samples/{Basic => Basic1}/17a_Html.php | 0 samples/{Basic => Basic1}/17b_Html.php | 0 .../18_Extendedcalculation.php | 0 samples/{Basic => Basic1}/19_Namedrange.php | 0 .../20_Read_Excel2003XML.php | 0 .../{Basic => Basic2}/20_Read_Gnumeric.php | 0 samples/{Basic => Basic2}/20_Read_Ods.php | 0 samples/{Basic => Basic2}/20_Read_Sylk.php | 0 samples/{Basic => Basic2}/20_Read_Xls.php | 0 .../22_Heavily_formatted.php | 0 samples/{Basic => Basic2}/23_Sharedstyles.php | 0 samples/{Basic => Basic2}/24_Readfilter.php | 0 .../{Basic => Basic2}/25_In_memory_image.php | 0 samples/{Basic => Basic2}/26_Utf8.php | 0 .../{Basic => Basic2}/27_Images_Html_Pdf.php | 0 samples/{Basic => Basic2}/27_Images_Xls.php | 0 samples/{Basic => Basic2}/27_Images_Xlsx.php | 0 samples/{Basic => Basic2}/28_Iterator.php | 8 +++---- .../29_Advanced_value_binder.php | 0 samples/{Basic => Basic3}/30_Template.php | 0 .../{Basic => Basic3}/30_Templatebiff5.php | 0 .../31_Document_properties_write.php | 0 .../31_Document_properties_write_xls.php | 0 .../{Basic => Basic3}/37_Page_layout_view.php | 0 .../{Basic => Basic3}/38_Clone_worksheet.php | 0 samples/{Basic => Basic3}/39_Dropdown.php | 0 .../data/continents/Africa.txt | 0 .../data/continents/Asia.txt | 0 .../data/continents/Europe.txt | 0 .../data/continents/North America.txt | 0 .../data/continents/Oceania.txt | 0 .../data/continents/South America.txt | 0 .../{Basic => Basic4}/40_Duplicate_style.php | 0 samples/{Basic => Basic4}/41_Password.php | 0 samples/{Basic => Basic4}/42_RichText.php | 0 .../{Basic => Basic4}/43_Merge_workbooks.php | 0 .../{Basic => Basic4}/44_Worksheet_info.php | 0 .../45_Quadratic_equation_solver.php | 0 samples/{Basic => Basic4}/46_ReadHtml.php | 0 samples/{Basic => Basic4}/47_xlsfill.php | 0 samples/{Basic => Basic4}/47_xlsxfill.php | 0 .../48_Image_move_size_with_cells.php | 0 samples/{Basic => Basic4}/49_alignment.php | 0 .../{Basic => Basic4}/50_xlsverticalbreak.php | 0 .../Engineering => Bitwise}/BITAND.php | 0 .../Engineering => Bitwise}/BITLSHIFT.php | 0 .../Engineering => Bitwise}/BITOR.php | 0 .../Engineering => Bitwise}/BITRSHIFT.php | 0 .../Engineering => Bitwise}/BITXOR.php | 0 .../33_Chart_create_area.php | 0 .../33_Chart_create_area_2.php | 0 .../33_Chart_create_bar.php | 0 .../33_Chart_create_bar_custom_colors.php | 0 .../33_Chart_create_bar_labels_lines.php | 0 .../33_Chart_create_bar_stacked.php | 0 .../33_Chart_create_bubble.php | 0 .../33_Chart_create_column.php | 0 .../33_Chart_create_column_2.php | 0 .../33_Chart_create_composite.alternate.php | 0 .../33_Chart_create_composite.php | 0 .../33_Chart_create_line.php | 0 .../33_Chart_create_line_dateaxis.php | 0 .../33_Chart_create_multiple_charts.php | 0 .../33_Chart_create_pie.php | 0 .../33_Chart_create_pie_custom_colors.php | 0 .../33_Chart_create_radar.php | 0 .../33_Chart_create_scatter.php | 0 .../33_Chart_create_scatter2.php | 0 .../33_Chart_create_scatter3.php | 0 .../33_Chart_create_scatter4.php | 0 .../33_Chart_create_scatter5_trendlines.php | 0 .../33_Chart_create_scatter6_value_xaxis.php | 0 .../33_Chart_create_stock.php | 0 .../33_Chart_create_stock2.php | 0 .../COMPLEX.php | 0 .../Engineering => ComplexNumbers1}/IMABS.php | 0 .../IMAGINARY.php | 0 .../IMARGUMENT.php | 0 .../IMCONJUGATE.php | 0 .../IMREAL.php | 0 .../Engineering => ComplexNumbers2}/IMCOS.php | 0 .../IMCOSH.php | 0 .../Engineering => ComplexNumbers2}/IMCOT.php | 0 .../Engineering => ComplexNumbers2}/IMCSC.php | 0 .../IMCSCH.php | 0 .../Engineering => ComplexNumbers2}/IMDIV.php | 0 .../Engineering => ComplexNumbers2}/IMEXP.php | 0 .../Engineering => ComplexNumbers2}/IMLN.php | 0 .../IMLOG10.php | 0 .../IMLOG2.php | 0 .../IMPOWER.php | 0 .../IMPRODUCT.php | 0 .../Engineering => ComplexNumbers3}/IMSEC.php | 0 .../IMSECH.php | 0 .../Engineering => ComplexNumbers3}/IMSIN.php | 0 .../IMSINH.php | 0 .../IMSQRT.php | 0 .../Engineering => ComplexNumbers3}/IMSUB.php | 0 .../Engineering => ComplexNumbers3}/IMSUM.php | 0 .../Engineering => ComplexNumbers3}/IMTAN.php | 0 .../{Calculations => }/Database/DAVERAGE.php | 0 .../{Calculations => }/Database/DCOUNT.php | 0 .../{Calculations => }/Database/DCOUNTA.php | 0 samples/{Calculations => }/Database/DGET.php | 0 samples/{Calculations => }/Database/DMAX.php | 0 samples/{Calculations => }/Database/DMIN.php | 0 .../{Calculations => }/Database/DPRODUCT.php | 0 .../{Calculations => }/Database/DSTDEV.php | 0 .../{Calculations => }/Database/DSTDEVP.php | 0 samples/{Calculations => }/Database/DSUM.php | 0 samples/{Calculations => }/Database/DVAR.php | 0 samples/{Calculations => }/Database/DVARP.php | 0 samples/{Calculations => }/DateTime/DATE.php | 0 .../{Calculations => }/DateTime/DATEDIF.php | 0 .../{Calculations => }/DateTime/DATEVALUE.php | 0 samples/{Calculations => }/DateTime/DAY.php | 0 samples/{Calculations => }/DateTime/DAYS.php | 0 .../{Calculations => }/DateTime/DAYS360.php | 0 samples/{Calculations => }/DateTime/EDATE.php | 0 .../{Calculations => }/DateTime/EOMONTH.php | 0 samples/{Calculations => }/DateTime/HOUR.php | 0 .../DateTime/ISOWEEKNUM.php | 0 .../{Calculations => }/DateTime/MINUTE.php | 0 samples/{Calculations => }/DateTime/MONTH.php | 0 .../DateTime => DateTime2}/NETWORKDAYS.php | 0 .../DateTime => DateTime2}/NOW.php | 0 .../DateTime => DateTime2}/SECOND.php | 0 .../DateTime => DateTime2}/TIME.php | 0 .../DateTime => DateTime2}/TIMEVALUE.php | 0 .../DateTime => DateTime2}/TODAY.php | 0 .../DateTime => DateTime2}/WEEKDAY.php | 0 .../DateTime => DateTime2}/WEEKNUM.php | 0 .../DateTime => DateTime2}/WORKDAY.php | 0 .../DateTime => DateTime2}/YEAR.php | 0 .../DateTime => DateTime2}/YEARFRAC.php | 0 .../Engineering/BESSELI.php | 0 .../Engineering/BESSELJ.php | 0 .../Engineering/BESSELK.php | 0 .../Engineering/BESSELY.php | 0 .../Engineering/CONVERT.php | 0 .../Engineering/Convert-Online.php | 21 ++++++++++++------ .../{Calculations => }/Engineering/DELTA.php | 0 .../{Calculations => }/Engineering/ERF.php | 0 .../{Calculations => }/Engineering/ERFC.php | 0 .../{Calculations => }/Engineering/GESTEP.php | 0 .../Financial => Financial1}/ACCRINT.php | 0 .../Financial => Financial1}/ACCRINTM.php | 0 .../Financial => Financial1}/AMORDEGRC.php | 0 .../Financial => Financial1}/AMORLINC.php | 0 .../Financial => Financial1}/COUPDAYBS.php | 0 .../Financial => Financial1}/COUPDAYS.php | 0 .../Financial => Financial1}/COUPDAYSNC.php | 0 .../Financial => Financial1}/COUPNCD.php | 0 .../Financial => Financial1}/COUPNUM.php | 0 .../Financial => Financial1}/COUPPCD.php | 0 .../Financial => Financial1}/CUMIPMT.php | 0 .../Financial => Financial1}/CUMPRINC.php | 0 .../Financial => Financial2}/DB.php | 0 .../Financial => Financial2}/DDB.php | 0 .../Financial => Financial2}/DISC.php | 0 .../Financial => Financial2}/DOLLARDE.php | 0 .../Financial => Financial2}/DOLLARFR.php | 0 .../Financial => Financial2}/EFFECT.php | 0 .../Financial => Financial2}/FV.php | 0 .../Financial => Financial2}/FVSCHEDULE.php | 0 .../Financial => Financial3}/INTRATE.php | 0 .../Financial => Financial3}/IPMT.php | 0 .../Financial => Financial3}/IRR.php | 0 .../Financial => Financial3}/ISPMT.php | 0 .../Financial => Financial3}/MIRR.php | 0 .../Financial => Financial3}/NOMINAL.php | 0 .../Financial => Financial3}/NPER.php | 0 .../Financial => Financial3}/NPV.php | 0 .../BIN2DEC.php | 0 .../BIN2HEX.php | 0 .../BIN2OCT.php | 0 .../DEC2BIN.php | 0 .../DEC2HEX.php | 0 .../DEC2OCT.php | 0 .../HEX2BIN.php | 0 .../HEX2DEC.php | 0 .../HEX2OCT.php | 0 .../OCT2BIN.php | 0 .../OCT2DEC.php | 0 .../OCT2HEX.php | 0 .../{Calculations => }/LookupRef/ADDRESS.php | 0 .../{Calculations => }/LookupRef/COLUMN.php | 0 .../{Calculations => }/LookupRef/COLUMNS.php | 0 .../{Calculations => }/LookupRef/INDEX.php | 0 .../{Calculations => }/LookupRef/INDIRECT.php | 0 .../{Calculations => }/LookupRef/OFFSET.php | 0 samples/{Calculations => }/LookupRef/ROW.php | 0 samples/{Calculations => }/LookupRef/ROWS.php | 0 .../{Calculations => }/LookupRef/VLOOKUP.php | 0 ...ple_file_reader_for_multiple_CSV_files.php | 0 ...ks_to_split_across_multiple_worksheets.php | 0 ...e_file_using_the_Advanced_Value_Binder.php | 0 ...dling_loader_exceptions_using_TryCatch.php | 0 ...eader_loading_several_named_worksheets.php | 0 ...worksheets_without_loading_entire_file.php | 0 ...nformation_without_loading_entire_file.php | 0 .../20_Reader_worksheet_hyperlink_image.php | 0 ...Long_Integers_with_String_Value_Binder.php | 0 .../22_Reader_formscomments.php | 0 .../22_Reader_issue1767.php | 0 .../sampleData/example1.csv | 0 .../sampleData/example1.tsv | 0 samples/Reader2/sampleData/example1.xls | Bin 0 -> 36352 bytes .../sampleData/example2.csv | 0 .../sampleData/formscomments.xlsx | Bin .../sampleData/issue.1767.xlsx | Bin .../sampleData/longIntegers.csv | 0 samples/bootstrap/css/phpspreadsheet.css | 3 +++ tests/PhpSpreadsheetTests/IOFactoryTest.php | 4 ++-- .../Reader/Csv/CsvContiguousTest.php | 2 +- .../Reader/Csv/CsvTest.php | 8 +++---- 226 files changed, 33 insertions(+), 30 deletions(-) create mode 100644 Header.php rename samples/{Basic => Basic1}/11_Documentsecurity.php (100%) rename samples/{Basic => Basic1}/12_CellProtection.php (100%) rename samples/{Basic => Basic1}/13_Calculation.php (100%) rename samples/{Basic => Basic1}/13_CalculationCyclicFormulae.php (100%) rename samples/{Basic => Basic1}/14_Xls.php (100%) rename samples/{Basic => Basic1}/15_Datavalidation.php (98%) rename samples/{Basic => Basic1}/16_Csv.php (100%) rename samples/{Basic => Basic1}/17_Html.php (100%) rename samples/{Basic => Basic1}/17a_Html.php (100%) rename samples/{Basic => Basic1}/17b_Html.php (100%) rename samples/{Basic => Basic1}/18_Extendedcalculation.php (100%) rename samples/{Basic => Basic1}/19_Namedrange.php (100%) rename samples/{Basic => Basic2}/20_Read_Excel2003XML.php (100%) rename samples/{Basic => Basic2}/20_Read_Gnumeric.php (100%) rename samples/{Basic => Basic2}/20_Read_Ods.php (100%) rename samples/{Basic => Basic2}/20_Read_Sylk.php (100%) rename samples/{Basic => Basic2}/20_Read_Xls.php (100%) rename samples/{Basic => Basic2}/22_Heavily_formatted.php (100%) rename samples/{Basic => Basic2}/23_Sharedstyles.php (100%) rename samples/{Basic => Basic2}/24_Readfilter.php (100%) rename samples/{Basic => Basic2}/25_In_memory_image.php (100%) rename samples/{Basic => Basic2}/26_Utf8.php (100%) rename samples/{Basic => Basic2}/27_Images_Html_Pdf.php (100%) rename samples/{Basic => Basic2}/27_Images_Xls.php (100%) rename samples/{Basic => Basic2}/27_Images_Xlsx.php (100%) rename samples/{Basic => Basic2}/28_Iterator.php (85%) rename samples/{Basic => Basic2}/29_Advanced_value_binder.php (100%) rename samples/{Basic => Basic3}/30_Template.php (100%) rename samples/{Basic => Basic3}/30_Templatebiff5.php (100%) rename samples/{Basic => Basic3}/31_Document_properties_write.php (100%) rename samples/{Basic => Basic3}/31_Document_properties_write_xls.php (100%) rename samples/{Basic => Basic3}/37_Page_layout_view.php (100%) rename samples/{Basic => Basic3}/38_Clone_worksheet.php (100%) rename samples/{Basic => Basic3}/39_Dropdown.php (100%) rename samples/{Basic => Basic3}/data/continents/Africa.txt (100%) rename samples/{Basic => Basic3}/data/continents/Asia.txt (100%) rename samples/{Basic => Basic3}/data/continents/Europe.txt (100%) rename samples/{Basic => Basic3}/data/continents/North America.txt (100%) rename samples/{Basic => Basic3}/data/continents/Oceania.txt (100%) rename samples/{Basic => Basic3}/data/continents/South America.txt (100%) rename samples/{Basic => Basic4}/40_Duplicate_style.php (100%) rename samples/{Basic => Basic4}/41_Password.php (100%) rename samples/{Basic => Basic4}/42_RichText.php (100%) rename samples/{Basic => Basic4}/43_Merge_workbooks.php (100%) rename samples/{Basic => Basic4}/44_Worksheet_info.php (100%) rename samples/{Basic => Basic4}/45_Quadratic_equation_solver.php (100%) rename samples/{Basic => Basic4}/46_ReadHtml.php (100%) rename samples/{Basic => Basic4}/47_xlsfill.php (100%) rename samples/{Basic => Basic4}/47_xlsxfill.php (100%) rename samples/{Basic => Basic4}/48_Image_move_size_with_cells.php (100%) rename samples/{Basic => Basic4}/49_alignment.php (100%) rename samples/{Basic => Basic4}/50_xlsverticalbreak.php (100%) rename samples/{Calculations/Engineering => Bitwise}/BITAND.php (100%) rename samples/{Calculations/Engineering => Bitwise}/BITLSHIFT.php (100%) rename samples/{Calculations/Engineering => Bitwise}/BITOR.php (100%) rename samples/{Calculations/Engineering => Bitwise}/BITRSHIFT.php (100%) rename samples/{Calculations/Engineering => Bitwise}/BITXOR.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_area.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_area_2.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_bar.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_bar_custom_colors.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_bar_labels_lines.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_bar_stacked.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_bubble.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_column.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_column_2.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_composite.alternate.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_composite.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_line.php (100%) rename samples/{Chart => Chart33a}/33_Chart_create_line_dateaxis.php (100%) rename samples/{Chart => Chart33b}/33_Chart_create_multiple_charts.php (100%) rename samples/{Chart => Chart33b}/33_Chart_create_pie.php (100%) rename samples/{Chart => Chart33b}/33_Chart_create_pie_custom_colors.php (100%) rename samples/{Chart => Chart33b}/33_Chart_create_radar.php (100%) rename samples/{Chart => Chart33b}/33_Chart_create_scatter.php (100%) rename samples/{Chart => Chart33b}/33_Chart_create_scatter2.php (100%) rename samples/{Chart => Chart33b}/33_Chart_create_scatter3.php (100%) rename samples/{Chart => Chart33b}/33_Chart_create_scatter4.php (100%) rename samples/{Chart => Chart33b}/33_Chart_create_scatter5_trendlines.php (100%) rename samples/{Chart => Chart33b}/33_Chart_create_scatter6_value_xaxis.php (100%) rename samples/{Chart => Chart33b}/33_Chart_create_stock.php (100%) rename samples/{Chart => Chart33b}/33_Chart_create_stock2.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers1}/COMPLEX.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers1}/IMABS.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers1}/IMAGINARY.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers1}/IMARGUMENT.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers1}/IMCONJUGATE.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers1}/IMREAL.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers2}/IMCOS.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers2}/IMCOSH.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers2}/IMCOT.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers2}/IMCSC.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers2}/IMCSCH.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers2}/IMDIV.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers2}/IMEXP.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers2}/IMLN.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers2}/IMLOG10.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers2}/IMLOG2.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers3}/IMPOWER.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers3}/IMPRODUCT.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers3}/IMSEC.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers3}/IMSECH.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers3}/IMSIN.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers3}/IMSINH.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers3}/IMSQRT.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers3}/IMSUB.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers3}/IMSUM.php (100%) rename samples/{Calculations/Engineering => ComplexNumbers3}/IMTAN.php (100%) rename samples/{Calculations => }/Database/DAVERAGE.php (100%) rename samples/{Calculations => }/Database/DCOUNT.php (100%) rename samples/{Calculations => }/Database/DCOUNTA.php (100%) rename samples/{Calculations => }/Database/DGET.php (100%) rename samples/{Calculations => }/Database/DMAX.php (100%) rename samples/{Calculations => }/Database/DMIN.php (100%) rename samples/{Calculations => }/Database/DPRODUCT.php (100%) rename samples/{Calculations => }/Database/DSTDEV.php (100%) rename samples/{Calculations => }/Database/DSTDEVP.php (100%) rename samples/{Calculations => }/Database/DSUM.php (100%) rename samples/{Calculations => }/Database/DVAR.php (100%) rename samples/{Calculations => }/Database/DVARP.php (100%) rename samples/{Calculations => }/DateTime/DATE.php (100%) rename samples/{Calculations => }/DateTime/DATEDIF.php (100%) rename samples/{Calculations => }/DateTime/DATEVALUE.php (100%) rename samples/{Calculations => }/DateTime/DAY.php (100%) rename samples/{Calculations => }/DateTime/DAYS.php (100%) rename samples/{Calculations => }/DateTime/DAYS360.php (100%) rename samples/{Calculations => }/DateTime/EDATE.php (100%) rename samples/{Calculations => }/DateTime/EOMONTH.php (100%) rename samples/{Calculations => }/DateTime/HOUR.php (100%) rename samples/{Calculations => }/DateTime/ISOWEEKNUM.php (100%) rename samples/{Calculations => }/DateTime/MINUTE.php (100%) rename samples/{Calculations => }/DateTime/MONTH.php (100%) rename samples/{Calculations/DateTime => DateTime2}/NETWORKDAYS.php (100%) rename samples/{Calculations/DateTime => DateTime2}/NOW.php (100%) rename samples/{Calculations/DateTime => DateTime2}/SECOND.php (100%) rename samples/{Calculations/DateTime => DateTime2}/TIME.php (100%) rename samples/{Calculations/DateTime => DateTime2}/TIMEVALUE.php (100%) rename samples/{Calculations/DateTime => DateTime2}/TODAY.php (100%) rename samples/{Calculations/DateTime => DateTime2}/WEEKDAY.php (100%) rename samples/{Calculations/DateTime => DateTime2}/WEEKNUM.php (100%) rename samples/{Calculations/DateTime => DateTime2}/WORKDAY.php (100%) rename samples/{Calculations/DateTime => DateTime2}/YEAR.php (100%) rename samples/{Calculations/DateTime => DateTime2}/YEARFRAC.php (100%) rename samples/{Calculations => }/Engineering/BESSELI.php (100%) rename samples/{Calculations => }/Engineering/BESSELJ.php (100%) rename samples/{Calculations => }/Engineering/BESSELK.php (100%) rename samples/{Calculations => }/Engineering/BESSELY.php (100%) rename samples/{Calculations => }/Engineering/CONVERT.php (100%) rename samples/{Calculations => }/Engineering/Convert-Online.php (76%) rename samples/{Calculations => }/Engineering/DELTA.php (100%) rename samples/{Calculations => }/Engineering/ERF.php (100%) rename samples/{Calculations => }/Engineering/ERFC.php (100%) rename samples/{Calculations => }/Engineering/GESTEP.php (100%) rename samples/{Calculations/Financial => Financial1}/ACCRINT.php (100%) rename samples/{Calculations/Financial => Financial1}/ACCRINTM.php (100%) rename samples/{Calculations/Financial => Financial1}/AMORDEGRC.php (100%) rename samples/{Calculations/Financial => Financial1}/AMORLINC.php (100%) rename samples/{Calculations/Financial => Financial1}/COUPDAYBS.php (100%) rename samples/{Calculations/Financial => Financial1}/COUPDAYS.php (100%) rename samples/{Calculations/Financial => Financial1}/COUPDAYSNC.php (100%) rename samples/{Calculations/Financial => Financial1}/COUPNCD.php (100%) rename samples/{Calculations/Financial => Financial1}/COUPNUM.php (100%) rename samples/{Calculations/Financial => Financial1}/COUPPCD.php (100%) rename samples/{Calculations/Financial => Financial1}/CUMIPMT.php (100%) rename samples/{Calculations/Financial => Financial1}/CUMPRINC.php (100%) rename samples/{Calculations/Financial => Financial2}/DB.php (100%) rename samples/{Calculations/Financial => Financial2}/DDB.php (100%) rename samples/{Calculations/Financial => Financial2}/DISC.php (100%) rename samples/{Calculations/Financial => Financial2}/DOLLARDE.php (100%) rename samples/{Calculations/Financial => Financial2}/DOLLARFR.php (100%) rename samples/{Calculations/Financial => Financial2}/EFFECT.php (100%) rename samples/{Calculations/Financial => Financial2}/FV.php (100%) rename samples/{Calculations/Financial => Financial2}/FVSCHEDULE.php (100%) rename samples/{Calculations/Financial => Financial3}/INTRATE.php (100%) rename samples/{Calculations/Financial => Financial3}/IPMT.php (100%) rename samples/{Calculations/Financial => Financial3}/IRR.php (100%) rename samples/{Calculations/Financial => Financial3}/ISPMT.php (100%) rename samples/{Calculations/Financial => Financial3}/MIRR.php (100%) rename samples/{Calculations/Financial => Financial3}/NOMINAL.php (100%) rename samples/{Calculations/Financial => Financial3}/NPER.php (100%) rename samples/{Calculations/Financial => Financial3}/NPV.php (100%) rename samples/{Calculations/Engineering => HexEtcConversions}/BIN2DEC.php (100%) rename samples/{Calculations/Engineering => HexEtcConversions}/BIN2HEX.php (100%) rename samples/{Calculations/Engineering => HexEtcConversions}/BIN2OCT.php (100%) rename samples/{Calculations/Engineering => HexEtcConversions}/DEC2BIN.php (100%) rename samples/{Calculations/Engineering => HexEtcConversions}/DEC2HEX.php (100%) rename samples/{Calculations/Engineering => HexEtcConversions}/DEC2OCT.php (100%) rename samples/{Calculations/Engineering => HexEtcConversions}/HEX2BIN.php (100%) rename samples/{Calculations/Engineering => HexEtcConversions}/HEX2DEC.php (100%) rename samples/{Calculations/Engineering => HexEtcConversions}/HEX2OCT.php (100%) rename samples/{Calculations/Engineering => HexEtcConversions}/OCT2BIN.php (100%) rename samples/{Calculations/Engineering => HexEtcConversions}/OCT2DEC.php (100%) rename samples/{Calculations/Engineering => HexEtcConversions}/OCT2HEX.php (100%) rename samples/{Calculations => }/LookupRef/ADDRESS.php (100%) rename samples/{Calculations => }/LookupRef/COLUMN.php (100%) rename samples/{Calculations => }/LookupRef/COLUMNS.php (100%) rename samples/{Calculations => }/LookupRef/INDEX.php (100%) rename samples/{Calculations => }/LookupRef/INDIRECT.php (100%) rename samples/{Calculations => }/LookupRef/OFFSET.php (100%) rename samples/{Calculations => }/LookupRef/ROW.php (100%) rename samples/{Calculations => }/LookupRef/ROWS.php (100%) rename samples/{Calculations => }/LookupRef/VLOOKUP.php (100%) rename samples/{Reader => Reader2}/13_Simple_file_reader_for_multiple_CSV_files.php (100%) rename samples/{Reader => Reader2}/14_Reading_a_large_CSV_file_in_chunks_to_split_across_multiple_worksheets.php (100%) rename samples/{Reader => Reader2}/15_Simple_file_reader_for_tab_separated_value_file_using_the_Advanced_Value_Binder.php (100%) rename samples/{Reader => Reader2}/16_Handling_loader_exceptions_using_TryCatch.php (100%) rename samples/{Reader => Reader2}/17_Simple_file_reader_loading_several_named_worksheets.php (100%) rename samples/{Reader => Reader2}/18_Reading_list_of_worksheets_without_loading_entire_file.php (100%) rename samples/{Reader => Reader2}/19_Reading_worksheet_information_without_loading_entire_file.php (100%) rename samples/{Reader => Reader2}/20_Reader_worksheet_hyperlink_image.php (100%) rename samples/{Reader => Reader2}/21_Reader_CSV_Long_Integers_with_String_Value_Binder.php (100%) rename samples/{Reader => Reader2}/22_Reader_formscomments.php (100%) rename samples/{Reader => Reader2}/22_Reader_issue1767.php (100%) rename samples/{Reader => Reader2}/sampleData/example1.csv (100%) rename samples/{Reader => Reader2}/sampleData/example1.tsv (100%) create mode 100644 samples/Reader2/sampleData/example1.xls rename samples/{Reader => Reader2}/sampleData/example2.csv (100%) rename samples/{Reader => Reader2}/sampleData/formscomments.xlsx (100%) rename samples/{Reader => Reader2}/sampleData/issue.1767.xlsx (100%) rename samples/{Reader => Reader2}/sampleData/longIntegers.csv (100%) diff --git a/Header.php b/Header.php new file mode 100644 index 000000000..80bb46b17 --- /dev/null +++ b/Header.php @@ -0,0 +1,3 @@ +setErrorTitle('Input error'); $validation->setError('Only numbers between 10 and 20 are allowed!'); $validation->setPromptTitle('Allowed input'); $validation->setPrompt('Only numbers between 10 and 20 are allowed.'); -$validation->setFormula1(10); -$validation->setFormula2(20); +$validation->setFormula1('10'); +$validation->setFormula2('20'); $validation = $spreadsheet->getActiveSheet()->getCell('B5')->getDataValidation(); $validation->setType(DataValidation::TYPE_LIST); diff --git a/samples/Basic/16_Csv.php b/samples/Basic1/16_Csv.php similarity index 100% rename from samples/Basic/16_Csv.php rename to samples/Basic1/16_Csv.php diff --git a/samples/Basic/17_Html.php b/samples/Basic1/17_Html.php similarity index 100% rename from samples/Basic/17_Html.php rename to samples/Basic1/17_Html.php diff --git a/samples/Basic/17a_Html.php b/samples/Basic1/17a_Html.php similarity index 100% rename from samples/Basic/17a_Html.php rename to samples/Basic1/17a_Html.php diff --git a/samples/Basic/17b_Html.php b/samples/Basic1/17b_Html.php similarity index 100% rename from samples/Basic/17b_Html.php rename to samples/Basic1/17b_Html.php diff --git a/samples/Basic/18_Extendedcalculation.php b/samples/Basic1/18_Extendedcalculation.php similarity index 100% rename from samples/Basic/18_Extendedcalculation.php rename to samples/Basic1/18_Extendedcalculation.php diff --git a/samples/Basic/19_Namedrange.php b/samples/Basic1/19_Namedrange.php similarity index 100% rename from samples/Basic/19_Namedrange.php rename to samples/Basic1/19_Namedrange.php diff --git a/samples/Basic/20_Read_Excel2003XML.php b/samples/Basic2/20_Read_Excel2003XML.php similarity index 100% rename from samples/Basic/20_Read_Excel2003XML.php rename to samples/Basic2/20_Read_Excel2003XML.php diff --git a/samples/Basic/20_Read_Gnumeric.php b/samples/Basic2/20_Read_Gnumeric.php similarity index 100% rename from samples/Basic/20_Read_Gnumeric.php rename to samples/Basic2/20_Read_Gnumeric.php diff --git a/samples/Basic/20_Read_Ods.php b/samples/Basic2/20_Read_Ods.php similarity index 100% rename from samples/Basic/20_Read_Ods.php rename to samples/Basic2/20_Read_Ods.php diff --git a/samples/Basic/20_Read_Sylk.php b/samples/Basic2/20_Read_Sylk.php similarity index 100% rename from samples/Basic/20_Read_Sylk.php rename to samples/Basic2/20_Read_Sylk.php diff --git a/samples/Basic/20_Read_Xls.php b/samples/Basic2/20_Read_Xls.php similarity index 100% rename from samples/Basic/20_Read_Xls.php rename to samples/Basic2/20_Read_Xls.php diff --git a/samples/Basic/22_Heavily_formatted.php b/samples/Basic2/22_Heavily_formatted.php similarity index 100% rename from samples/Basic/22_Heavily_formatted.php rename to samples/Basic2/22_Heavily_formatted.php diff --git a/samples/Basic/23_Sharedstyles.php b/samples/Basic2/23_Sharedstyles.php similarity index 100% rename from samples/Basic/23_Sharedstyles.php rename to samples/Basic2/23_Sharedstyles.php diff --git a/samples/Basic/24_Readfilter.php b/samples/Basic2/24_Readfilter.php similarity index 100% rename from samples/Basic/24_Readfilter.php rename to samples/Basic2/24_Readfilter.php diff --git a/samples/Basic/25_In_memory_image.php b/samples/Basic2/25_In_memory_image.php similarity index 100% rename from samples/Basic/25_In_memory_image.php rename to samples/Basic2/25_In_memory_image.php diff --git a/samples/Basic/26_Utf8.php b/samples/Basic2/26_Utf8.php similarity index 100% rename from samples/Basic/26_Utf8.php rename to samples/Basic2/26_Utf8.php diff --git a/samples/Basic/27_Images_Html_Pdf.php b/samples/Basic2/27_Images_Html_Pdf.php similarity index 100% rename from samples/Basic/27_Images_Html_Pdf.php rename to samples/Basic2/27_Images_Html_Pdf.php diff --git a/samples/Basic/27_Images_Xls.php b/samples/Basic2/27_Images_Xls.php similarity index 100% rename from samples/Basic/27_Images_Xls.php rename to samples/Basic2/27_Images_Xls.php diff --git a/samples/Basic/27_Images_Xlsx.php b/samples/Basic2/27_Images_Xlsx.php similarity index 100% rename from samples/Basic/27_Images_Xlsx.php rename to samples/Basic2/27_Images_Xlsx.php diff --git a/samples/Basic/28_Iterator.php b/samples/Basic2/28_Iterator.php similarity index 85% rename from samples/Basic/28_Iterator.php rename to samples/Basic2/28_Iterator.php index 9af40f475..e75f18b51 100644 --- a/samples/Basic/28_Iterator.php +++ b/samples/Basic2/28_Iterator.php @@ -1,19 +1,19 @@ getTemporaryFilename(); -$writer = new XLsxWriter($sampleSpreadsheet); +$writer = new XlsxWriter($sampleSpreadsheet); $callStartTime = microtime(true); $writer->save($filename); $helper->logWrite($writer, $filename, $callStartTime); $callStartTime = microtime(true); -$reader = new XLsxReader(); +$reader = new XlsxReader(); $spreadsheet = $reader->load($filename); $helper->logRead('Xlsx', $filename, $callStartTime); unlink($filename); diff --git a/samples/Basic/29_Advanced_value_binder.php b/samples/Basic2/29_Advanced_value_binder.php similarity index 100% rename from samples/Basic/29_Advanced_value_binder.php rename to samples/Basic2/29_Advanced_value_binder.php diff --git a/samples/Basic/30_Template.php b/samples/Basic3/30_Template.php similarity index 100% rename from samples/Basic/30_Template.php rename to samples/Basic3/30_Template.php diff --git a/samples/Basic/30_Templatebiff5.php b/samples/Basic3/30_Templatebiff5.php similarity index 100% rename from samples/Basic/30_Templatebiff5.php rename to samples/Basic3/30_Templatebiff5.php diff --git a/samples/Basic/31_Document_properties_write.php b/samples/Basic3/31_Document_properties_write.php similarity index 100% rename from samples/Basic/31_Document_properties_write.php rename to samples/Basic3/31_Document_properties_write.php diff --git a/samples/Basic/31_Document_properties_write_xls.php b/samples/Basic3/31_Document_properties_write_xls.php similarity index 100% rename from samples/Basic/31_Document_properties_write_xls.php rename to samples/Basic3/31_Document_properties_write_xls.php diff --git a/samples/Basic/37_Page_layout_view.php b/samples/Basic3/37_Page_layout_view.php similarity index 100% rename from samples/Basic/37_Page_layout_view.php rename to samples/Basic3/37_Page_layout_view.php diff --git a/samples/Basic/38_Clone_worksheet.php b/samples/Basic3/38_Clone_worksheet.php similarity index 100% rename from samples/Basic/38_Clone_worksheet.php rename to samples/Basic3/38_Clone_worksheet.php diff --git a/samples/Basic/39_Dropdown.php b/samples/Basic3/39_Dropdown.php similarity index 100% rename from samples/Basic/39_Dropdown.php rename to samples/Basic3/39_Dropdown.php diff --git a/samples/Basic/data/continents/Africa.txt b/samples/Basic3/data/continents/Africa.txt similarity index 100% rename from samples/Basic/data/continents/Africa.txt rename to samples/Basic3/data/continents/Africa.txt diff --git a/samples/Basic/data/continents/Asia.txt b/samples/Basic3/data/continents/Asia.txt similarity index 100% rename from samples/Basic/data/continents/Asia.txt rename to samples/Basic3/data/continents/Asia.txt diff --git a/samples/Basic/data/continents/Europe.txt b/samples/Basic3/data/continents/Europe.txt similarity index 100% rename from samples/Basic/data/continents/Europe.txt rename to samples/Basic3/data/continents/Europe.txt diff --git a/samples/Basic/data/continents/North America.txt b/samples/Basic3/data/continents/North America.txt similarity index 100% rename from samples/Basic/data/continents/North America.txt rename to samples/Basic3/data/continents/North America.txt diff --git a/samples/Basic/data/continents/Oceania.txt b/samples/Basic3/data/continents/Oceania.txt similarity index 100% rename from samples/Basic/data/continents/Oceania.txt rename to samples/Basic3/data/continents/Oceania.txt diff --git a/samples/Basic/data/continents/South America.txt b/samples/Basic3/data/continents/South America.txt similarity index 100% rename from samples/Basic/data/continents/South America.txt rename to samples/Basic3/data/continents/South America.txt diff --git a/samples/Basic/40_Duplicate_style.php b/samples/Basic4/40_Duplicate_style.php similarity index 100% rename from samples/Basic/40_Duplicate_style.php rename to samples/Basic4/40_Duplicate_style.php diff --git a/samples/Basic/41_Password.php b/samples/Basic4/41_Password.php similarity index 100% rename from samples/Basic/41_Password.php rename to samples/Basic4/41_Password.php diff --git a/samples/Basic/42_RichText.php b/samples/Basic4/42_RichText.php similarity index 100% rename from samples/Basic/42_RichText.php rename to samples/Basic4/42_RichText.php diff --git a/samples/Basic/43_Merge_workbooks.php b/samples/Basic4/43_Merge_workbooks.php similarity index 100% rename from samples/Basic/43_Merge_workbooks.php rename to samples/Basic4/43_Merge_workbooks.php diff --git a/samples/Basic/44_Worksheet_info.php b/samples/Basic4/44_Worksheet_info.php similarity index 100% rename from samples/Basic/44_Worksheet_info.php rename to samples/Basic4/44_Worksheet_info.php diff --git a/samples/Basic/45_Quadratic_equation_solver.php b/samples/Basic4/45_Quadratic_equation_solver.php similarity index 100% rename from samples/Basic/45_Quadratic_equation_solver.php rename to samples/Basic4/45_Quadratic_equation_solver.php diff --git a/samples/Basic/46_ReadHtml.php b/samples/Basic4/46_ReadHtml.php similarity index 100% rename from samples/Basic/46_ReadHtml.php rename to samples/Basic4/46_ReadHtml.php diff --git a/samples/Basic/47_xlsfill.php b/samples/Basic4/47_xlsfill.php similarity index 100% rename from samples/Basic/47_xlsfill.php rename to samples/Basic4/47_xlsfill.php diff --git a/samples/Basic/47_xlsxfill.php b/samples/Basic4/47_xlsxfill.php similarity index 100% rename from samples/Basic/47_xlsxfill.php rename to samples/Basic4/47_xlsxfill.php diff --git a/samples/Basic/48_Image_move_size_with_cells.php b/samples/Basic4/48_Image_move_size_with_cells.php similarity index 100% rename from samples/Basic/48_Image_move_size_with_cells.php rename to samples/Basic4/48_Image_move_size_with_cells.php diff --git a/samples/Basic/49_alignment.php b/samples/Basic4/49_alignment.php similarity index 100% rename from samples/Basic/49_alignment.php rename to samples/Basic4/49_alignment.php diff --git a/samples/Basic/50_xlsverticalbreak.php b/samples/Basic4/50_xlsverticalbreak.php similarity index 100% rename from samples/Basic/50_xlsverticalbreak.php rename to samples/Basic4/50_xlsverticalbreak.php diff --git a/samples/Calculations/Engineering/BITAND.php b/samples/Bitwise/BITAND.php similarity index 100% rename from samples/Calculations/Engineering/BITAND.php rename to samples/Bitwise/BITAND.php diff --git a/samples/Calculations/Engineering/BITLSHIFT.php b/samples/Bitwise/BITLSHIFT.php similarity index 100% rename from samples/Calculations/Engineering/BITLSHIFT.php rename to samples/Bitwise/BITLSHIFT.php diff --git a/samples/Calculations/Engineering/BITOR.php b/samples/Bitwise/BITOR.php similarity index 100% rename from samples/Calculations/Engineering/BITOR.php rename to samples/Bitwise/BITOR.php diff --git a/samples/Calculations/Engineering/BITRSHIFT.php b/samples/Bitwise/BITRSHIFT.php similarity index 100% rename from samples/Calculations/Engineering/BITRSHIFT.php rename to samples/Bitwise/BITRSHIFT.php diff --git a/samples/Calculations/Engineering/BITXOR.php b/samples/Bitwise/BITXOR.php similarity index 100% rename from samples/Calculations/Engineering/BITXOR.php rename to samples/Bitwise/BITXOR.php diff --git a/samples/Chart/33_Chart_create_area.php b/samples/Chart33a/33_Chart_create_area.php similarity index 100% rename from samples/Chart/33_Chart_create_area.php rename to samples/Chart33a/33_Chart_create_area.php diff --git a/samples/Chart/33_Chart_create_area_2.php b/samples/Chart33a/33_Chart_create_area_2.php similarity index 100% rename from samples/Chart/33_Chart_create_area_2.php rename to samples/Chart33a/33_Chart_create_area_2.php diff --git a/samples/Chart/33_Chart_create_bar.php b/samples/Chart33a/33_Chart_create_bar.php similarity index 100% rename from samples/Chart/33_Chart_create_bar.php rename to samples/Chart33a/33_Chart_create_bar.php diff --git a/samples/Chart/33_Chart_create_bar_custom_colors.php b/samples/Chart33a/33_Chart_create_bar_custom_colors.php similarity index 100% rename from samples/Chart/33_Chart_create_bar_custom_colors.php rename to samples/Chart33a/33_Chart_create_bar_custom_colors.php diff --git a/samples/Chart/33_Chart_create_bar_labels_lines.php b/samples/Chart33a/33_Chart_create_bar_labels_lines.php similarity index 100% rename from samples/Chart/33_Chart_create_bar_labels_lines.php rename to samples/Chart33a/33_Chart_create_bar_labels_lines.php diff --git a/samples/Chart/33_Chart_create_bar_stacked.php b/samples/Chart33a/33_Chart_create_bar_stacked.php similarity index 100% rename from samples/Chart/33_Chart_create_bar_stacked.php rename to samples/Chart33a/33_Chart_create_bar_stacked.php diff --git a/samples/Chart/33_Chart_create_bubble.php b/samples/Chart33a/33_Chart_create_bubble.php similarity index 100% rename from samples/Chart/33_Chart_create_bubble.php rename to samples/Chart33a/33_Chart_create_bubble.php diff --git a/samples/Chart/33_Chart_create_column.php b/samples/Chart33a/33_Chart_create_column.php similarity index 100% rename from samples/Chart/33_Chart_create_column.php rename to samples/Chart33a/33_Chart_create_column.php diff --git a/samples/Chart/33_Chart_create_column_2.php b/samples/Chart33a/33_Chart_create_column_2.php similarity index 100% rename from samples/Chart/33_Chart_create_column_2.php rename to samples/Chart33a/33_Chart_create_column_2.php diff --git a/samples/Chart/33_Chart_create_composite.alternate.php b/samples/Chart33a/33_Chart_create_composite.alternate.php similarity index 100% rename from samples/Chart/33_Chart_create_composite.alternate.php rename to samples/Chart33a/33_Chart_create_composite.alternate.php diff --git a/samples/Chart/33_Chart_create_composite.php b/samples/Chart33a/33_Chart_create_composite.php similarity index 100% rename from samples/Chart/33_Chart_create_composite.php rename to samples/Chart33a/33_Chart_create_composite.php diff --git a/samples/Chart/33_Chart_create_line.php b/samples/Chart33a/33_Chart_create_line.php similarity index 100% rename from samples/Chart/33_Chart_create_line.php rename to samples/Chart33a/33_Chart_create_line.php diff --git a/samples/Chart/33_Chart_create_line_dateaxis.php b/samples/Chart33a/33_Chart_create_line_dateaxis.php similarity index 100% rename from samples/Chart/33_Chart_create_line_dateaxis.php rename to samples/Chart33a/33_Chart_create_line_dateaxis.php diff --git a/samples/Chart/33_Chart_create_multiple_charts.php b/samples/Chart33b/33_Chart_create_multiple_charts.php similarity index 100% rename from samples/Chart/33_Chart_create_multiple_charts.php rename to samples/Chart33b/33_Chart_create_multiple_charts.php diff --git a/samples/Chart/33_Chart_create_pie.php b/samples/Chart33b/33_Chart_create_pie.php similarity index 100% rename from samples/Chart/33_Chart_create_pie.php rename to samples/Chart33b/33_Chart_create_pie.php diff --git a/samples/Chart/33_Chart_create_pie_custom_colors.php b/samples/Chart33b/33_Chart_create_pie_custom_colors.php similarity index 100% rename from samples/Chart/33_Chart_create_pie_custom_colors.php rename to samples/Chart33b/33_Chart_create_pie_custom_colors.php diff --git a/samples/Chart/33_Chart_create_radar.php b/samples/Chart33b/33_Chart_create_radar.php similarity index 100% rename from samples/Chart/33_Chart_create_radar.php rename to samples/Chart33b/33_Chart_create_radar.php diff --git a/samples/Chart/33_Chart_create_scatter.php b/samples/Chart33b/33_Chart_create_scatter.php similarity index 100% rename from samples/Chart/33_Chart_create_scatter.php rename to samples/Chart33b/33_Chart_create_scatter.php diff --git a/samples/Chart/33_Chart_create_scatter2.php b/samples/Chart33b/33_Chart_create_scatter2.php similarity index 100% rename from samples/Chart/33_Chart_create_scatter2.php rename to samples/Chart33b/33_Chart_create_scatter2.php diff --git a/samples/Chart/33_Chart_create_scatter3.php b/samples/Chart33b/33_Chart_create_scatter3.php similarity index 100% rename from samples/Chart/33_Chart_create_scatter3.php rename to samples/Chart33b/33_Chart_create_scatter3.php diff --git a/samples/Chart/33_Chart_create_scatter4.php b/samples/Chart33b/33_Chart_create_scatter4.php similarity index 100% rename from samples/Chart/33_Chart_create_scatter4.php rename to samples/Chart33b/33_Chart_create_scatter4.php diff --git a/samples/Chart/33_Chart_create_scatter5_trendlines.php b/samples/Chart33b/33_Chart_create_scatter5_trendlines.php similarity index 100% rename from samples/Chart/33_Chart_create_scatter5_trendlines.php rename to samples/Chart33b/33_Chart_create_scatter5_trendlines.php diff --git a/samples/Chart/33_Chart_create_scatter6_value_xaxis.php b/samples/Chart33b/33_Chart_create_scatter6_value_xaxis.php similarity index 100% rename from samples/Chart/33_Chart_create_scatter6_value_xaxis.php rename to samples/Chart33b/33_Chart_create_scatter6_value_xaxis.php diff --git a/samples/Chart/33_Chart_create_stock.php b/samples/Chart33b/33_Chart_create_stock.php similarity index 100% rename from samples/Chart/33_Chart_create_stock.php rename to samples/Chart33b/33_Chart_create_stock.php diff --git a/samples/Chart/33_Chart_create_stock2.php b/samples/Chart33b/33_Chart_create_stock2.php similarity index 100% rename from samples/Chart/33_Chart_create_stock2.php rename to samples/Chart33b/33_Chart_create_stock2.php diff --git a/samples/Calculations/Engineering/COMPLEX.php b/samples/ComplexNumbers1/COMPLEX.php similarity index 100% rename from samples/Calculations/Engineering/COMPLEX.php rename to samples/ComplexNumbers1/COMPLEX.php diff --git a/samples/Calculations/Engineering/IMABS.php b/samples/ComplexNumbers1/IMABS.php similarity index 100% rename from samples/Calculations/Engineering/IMABS.php rename to samples/ComplexNumbers1/IMABS.php diff --git a/samples/Calculations/Engineering/IMAGINARY.php b/samples/ComplexNumbers1/IMAGINARY.php similarity index 100% rename from samples/Calculations/Engineering/IMAGINARY.php rename to samples/ComplexNumbers1/IMAGINARY.php diff --git a/samples/Calculations/Engineering/IMARGUMENT.php b/samples/ComplexNumbers1/IMARGUMENT.php similarity index 100% rename from samples/Calculations/Engineering/IMARGUMENT.php rename to samples/ComplexNumbers1/IMARGUMENT.php diff --git a/samples/Calculations/Engineering/IMCONJUGATE.php b/samples/ComplexNumbers1/IMCONJUGATE.php similarity index 100% rename from samples/Calculations/Engineering/IMCONJUGATE.php rename to samples/ComplexNumbers1/IMCONJUGATE.php diff --git a/samples/Calculations/Engineering/IMREAL.php b/samples/ComplexNumbers1/IMREAL.php similarity index 100% rename from samples/Calculations/Engineering/IMREAL.php rename to samples/ComplexNumbers1/IMREAL.php diff --git a/samples/Calculations/Engineering/IMCOS.php b/samples/ComplexNumbers2/IMCOS.php similarity index 100% rename from samples/Calculations/Engineering/IMCOS.php rename to samples/ComplexNumbers2/IMCOS.php diff --git a/samples/Calculations/Engineering/IMCOSH.php b/samples/ComplexNumbers2/IMCOSH.php similarity index 100% rename from samples/Calculations/Engineering/IMCOSH.php rename to samples/ComplexNumbers2/IMCOSH.php diff --git a/samples/Calculations/Engineering/IMCOT.php b/samples/ComplexNumbers2/IMCOT.php similarity index 100% rename from samples/Calculations/Engineering/IMCOT.php rename to samples/ComplexNumbers2/IMCOT.php diff --git a/samples/Calculations/Engineering/IMCSC.php b/samples/ComplexNumbers2/IMCSC.php similarity index 100% rename from samples/Calculations/Engineering/IMCSC.php rename to samples/ComplexNumbers2/IMCSC.php diff --git a/samples/Calculations/Engineering/IMCSCH.php b/samples/ComplexNumbers2/IMCSCH.php similarity index 100% rename from samples/Calculations/Engineering/IMCSCH.php rename to samples/ComplexNumbers2/IMCSCH.php diff --git a/samples/Calculations/Engineering/IMDIV.php b/samples/ComplexNumbers2/IMDIV.php similarity index 100% rename from samples/Calculations/Engineering/IMDIV.php rename to samples/ComplexNumbers2/IMDIV.php diff --git a/samples/Calculations/Engineering/IMEXP.php b/samples/ComplexNumbers2/IMEXP.php similarity index 100% rename from samples/Calculations/Engineering/IMEXP.php rename to samples/ComplexNumbers2/IMEXP.php diff --git a/samples/Calculations/Engineering/IMLN.php b/samples/ComplexNumbers2/IMLN.php similarity index 100% rename from samples/Calculations/Engineering/IMLN.php rename to samples/ComplexNumbers2/IMLN.php diff --git a/samples/Calculations/Engineering/IMLOG10.php b/samples/ComplexNumbers2/IMLOG10.php similarity index 100% rename from samples/Calculations/Engineering/IMLOG10.php rename to samples/ComplexNumbers2/IMLOG10.php diff --git a/samples/Calculations/Engineering/IMLOG2.php b/samples/ComplexNumbers2/IMLOG2.php similarity index 100% rename from samples/Calculations/Engineering/IMLOG2.php rename to samples/ComplexNumbers2/IMLOG2.php diff --git a/samples/Calculations/Engineering/IMPOWER.php b/samples/ComplexNumbers3/IMPOWER.php similarity index 100% rename from samples/Calculations/Engineering/IMPOWER.php rename to samples/ComplexNumbers3/IMPOWER.php diff --git a/samples/Calculations/Engineering/IMPRODUCT.php b/samples/ComplexNumbers3/IMPRODUCT.php similarity index 100% rename from samples/Calculations/Engineering/IMPRODUCT.php rename to samples/ComplexNumbers3/IMPRODUCT.php diff --git a/samples/Calculations/Engineering/IMSEC.php b/samples/ComplexNumbers3/IMSEC.php similarity index 100% rename from samples/Calculations/Engineering/IMSEC.php rename to samples/ComplexNumbers3/IMSEC.php diff --git a/samples/Calculations/Engineering/IMSECH.php b/samples/ComplexNumbers3/IMSECH.php similarity index 100% rename from samples/Calculations/Engineering/IMSECH.php rename to samples/ComplexNumbers3/IMSECH.php diff --git a/samples/Calculations/Engineering/IMSIN.php b/samples/ComplexNumbers3/IMSIN.php similarity index 100% rename from samples/Calculations/Engineering/IMSIN.php rename to samples/ComplexNumbers3/IMSIN.php diff --git a/samples/Calculations/Engineering/IMSINH.php b/samples/ComplexNumbers3/IMSINH.php similarity index 100% rename from samples/Calculations/Engineering/IMSINH.php rename to samples/ComplexNumbers3/IMSINH.php diff --git a/samples/Calculations/Engineering/IMSQRT.php b/samples/ComplexNumbers3/IMSQRT.php similarity index 100% rename from samples/Calculations/Engineering/IMSQRT.php rename to samples/ComplexNumbers3/IMSQRT.php diff --git a/samples/Calculations/Engineering/IMSUB.php b/samples/ComplexNumbers3/IMSUB.php similarity index 100% rename from samples/Calculations/Engineering/IMSUB.php rename to samples/ComplexNumbers3/IMSUB.php diff --git a/samples/Calculations/Engineering/IMSUM.php b/samples/ComplexNumbers3/IMSUM.php similarity index 100% rename from samples/Calculations/Engineering/IMSUM.php rename to samples/ComplexNumbers3/IMSUM.php diff --git a/samples/Calculations/Engineering/IMTAN.php b/samples/ComplexNumbers3/IMTAN.php similarity index 100% rename from samples/Calculations/Engineering/IMTAN.php rename to samples/ComplexNumbers3/IMTAN.php diff --git a/samples/Calculations/Database/DAVERAGE.php b/samples/Database/DAVERAGE.php similarity index 100% rename from samples/Calculations/Database/DAVERAGE.php rename to samples/Database/DAVERAGE.php diff --git a/samples/Calculations/Database/DCOUNT.php b/samples/Database/DCOUNT.php similarity index 100% rename from samples/Calculations/Database/DCOUNT.php rename to samples/Database/DCOUNT.php diff --git a/samples/Calculations/Database/DCOUNTA.php b/samples/Database/DCOUNTA.php similarity index 100% rename from samples/Calculations/Database/DCOUNTA.php rename to samples/Database/DCOUNTA.php diff --git a/samples/Calculations/Database/DGET.php b/samples/Database/DGET.php similarity index 100% rename from samples/Calculations/Database/DGET.php rename to samples/Database/DGET.php diff --git a/samples/Calculations/Database/DMAX.php b/samples/Database/DMAX.php similarity index 100% rename from samples/Calculations/Database/DMAX.php rename to samples/Database/DMAX.php diff --git a/samples/Calculations/Database/DMIN.php b/samples/Database/DMIN.php similarity index 100% rename from samples/Calculations/Database/DMIN.php rename to samples/Database/DMIN.php diff --git a/samples/Calculations/Database/DPRODUCT.php b/samples/Database/DPRODUCT.php similarity index 100% rename from samples/Calculations/Database/DPRODUCT.php rename to samples/Database/DPRODUCT.php diff --git a/samples/Calculations/Database/DSTDEV.php b/samples/Database/DSTDEV.php similarity index 100% rename from samples/Calculations/Database/DSTDEV.php rename to samples/Database/DSTDEV.php diff --git a/samples/Calculations/Database/DSTDEVP.php b/samples/Database/DSTDEVP.php similarity index 100% rename from samples/Calculations/Database/DSTDEVP.php rename to samples/Database/DSTDEVP.php diff --git a/samples/Calculations/Database/DSUM.php b/samples/Database/DSUM.php similarity index 100% rename from samples/Calculations/Database/DSUM.php rename to samples/Database/DSUM.php diff --git a/samples/Calculations/Database/DVAR.php b/samples/Database/DVAR.php similarity index 100% rename from samples/Calculations/Database/DVAR.php rename to samples/Database/DVAR.php diff --git a/samples/Calculations/Database/DVARP.php b/samples/Database/DVARP.php similarity index 100% rename from samples/Calculations/Database/DVARP.php rename to samples/Database/DVARP.php diff --git a/samples/Calculations/DateTime/DATE.php b/samples/DateTime/DATE.php similarity index 100% rename from samples/Calculations/DateTime/DATE.php rename to samples/DateTime/DATE.php diff --git a/samples/Calculations/DateTime/DATEDIF.php b/samples/DateTime/DATEDIF.php similarity index 100% rename from samples/Calculations/DateTime/DATEDIF.php rename to samples/DateTime/DATEDIF.php diff --git a/samples/Calculations/DateTime/DATEVALUE.php b/samples/DateTime/DATEVALUE.php similarity index 100% rename from samples/Calculations/DateTime/DATEVALUE.php rename to samples/DateTime/DATEVALUE.php diff --git a/samples/Calculations/DateTime/DAY.php b/samples/DateTime/DAY.php similarity index 100% rename from samples/Calculations/DateTime/DAY.php rename to samples/DateTime/DAY.php diff --git a/samples/Calculations/DateTime/DAYS.php b/samples/DateTime/DAYS.php similarity index 100% rename from samples/Calculations/DateTime/DAYS.php rename to samples/DateTime/DAYS.php diff --git a/samples/Calculations/DateTime/DAYS360.php b/samples/DateTime/DAYS360.php similarity index 100% rename from samples/Calculations/DateTime/DAYS360.php rename to samples/DateTime/DAYS360.php diff --git a/samples/Calculations/DateTime/EDATE.php b/samples/DateTime/EDATE.php similarity index 100% rename from samples/Calculations/DateTime/EDATE.php rename to samples/DateTime/EDATE.php diff --git a/samples/Calculations/DateTime/EOMONTH.php b/samples/DateTime/EOMONTH.php similarity index 100% rename from samples/Calculations/DateTime/EOMONTH.php rename to samples/DateTime/EOMONTH.php diff --git a/samples/Calculations/DateTime/HOUR.php b/samples/DateTime/HOUR.php similarity index 100% rename from samples/Calculations/DateTime/HOUR.php rename to samples/DateTime/HOUR.php diff --git a/samples/Calculations/DateTime/ISOWEEKNUM.php b/samples/DateTime/ISOWEEKNUM.php similarity index 100% rename from samples/Calculations/DateTime/ISOWEEKNUM.php rename to samples/DateTime/ISOWEEKNUM.php diff --git a/samples/Calculations/DateTime/MINUTE.php b/samples/DateTime/MINUTE.php similarity index 100% rename from samples/Calculations/DateTime/MINUTE.php rename to samples/DateTime/MINUTE.php diff --git a/samples/Calculations/DateTime/MONTH.php b/samples/DateTime/MONTH.php similarity index 100% rename from samples/Calculations/DateTime/MONTH.php rename to samples/DateTime/MONTH.php diff --git a/samples/Calculations/DateTime/NETWORKDAYS.php b/samples/DateTime2/NETWORKDAYS.php similarity index 100% rename from samples/Calculations/DateTime/NETWORKDAYS.php rename to samples/DateTime2/NETWORKDAYS.php diff --git a/samples/Calculations/DateTime/NOW.php b/samples/DateTime2/NOW.php similarity index 100% rename from samples/Calculations/DateTime/NOW.php rename to samples/DateTime2/NOW.php diff --git a/samples/Calculations/DateTime/SECOND.php b/samples/DateTime2/SECOND.php similarity index 100% rename from samples/Calculations/DateTime/SECOND.php rename to samples/DateTime2/SECOND.php diff --git a/samples/Calculations/DateTime/TIME.php b/samples/DateTime2/TIME.php similarity index 100% rename from samples/Calculations/DateTime/TIME.php rename to samples/DateTime2/TIME.php diff --git a/samples/Calculations/DateTime/TIMEVALUE.php b/samples/DateTime2/TIMEVALUE.php similarity index 100% rename from samples/Calculations/DateTime/TIMEVALUE.php rename to samples/DateTime2/TIMEVALUE.php diff --git a/samples/Calculations/DateTime/TODAY.php b/samples/DateTime2/TODAY.php similarity index 100% rename from samples/Calculations/DateTime/TODAY.php rename to samples/DateTime2/TODAY.php diff --git a/samples/Calculations/DateTime/WEEKDAY.php b/samples/DateTime2/WEEKDAY.php similarity index 100% rename from samples/Calculations/DateTime/WEEKDAY.php rename to samples/DateTime2/WEEKDAY.php diff --git a/samples/Calculations/DateTime/WEEKNUM.php b/samples/DateTime2/WEEKNUM.php similarity index 100% rename from samples/Calculations/DateTime/WEEKNUM.php rename to samples/DateTime2/WEEKNUM.php diff --git a/samples/Calculations/DateTime/WORKDAY.php b/samples/DateTime2/WORKDAY.php similarity index 100% rename from samples/Calculations/DateTime/WORKDAY.php rename to samples/DateTime2/WORKDAY.php diff --git a/samples/Calculations/DateTime/YEAR.php b/samples/DateTime2/YEAR.php similarity index 100% rename from samples/Calculations/DateTime/YEAR.php rename to samples/DateTime2/YEAR.php diff --git a/samples/Calculations/DateTime/YEARFRAC.php b/samples/DateTime2/YEARFRAC.php similarity index 100% rename from samples/Calculations/DateTime/YEARFRAC.php rename to samples/DateTime2/YEARFRAC.php diff --git a/samples/Calculations/Engineering/BESSELI.php b/samples/Engineering/BESSELI.php similarity index 100% rename from samples/Calculations/Engineering/BESSELI.php rename to samples/Engineering/BESSELI.php diff --git a/samples/Calculations/Engineering/BESSELJ.php b/samples/Engineering/BESSELJ.php similarity index 100% rename from samples/Calculations/Engineering/BESSELJ.php rename to samples/Engineering/BESSELJ.php diff --git a/samples/Calculations/Engineering/BESSELK.php b/samples/Engineering/BESSELK.php similarity index 100% rename from samples/Calculations/Engineering/BESSELK.php rename to samples/Engineering/BESSELK.php diff --git a/samples/Calculations/Engineering/BESSELY.php b/samples/Engineering/BESSELY.php similarity index 100% rename from samples/Calculations/Engineering/BESSELY.php rename to samples/Engineering/BESSELY.php diff --git a/samples/Calculations/Engineering/CONVERT.php b/samples/Engineering/CONVERT.php similarity index 100% rename from samples/Calculations/Engineering/CONVERT.php rename to samples/Engineering/CONVERT.php diff --git a/samples/Calculations/Engineering/Convert-Online.php b/samples/Engineering/Convert-Online.php similarity index 76% rename from samples/Calculations/Engineering/Convert-Online.php rename to samples/Engineering/Convert-Online.php index 3d26a3f6b..54c24e8da 100644 --- a/samples/Calculations/Engineering/Convert-Online.php +++ b/samples/Engineering/Convert-Online.php @@ -14,6 +14,7 @@ if ($helper->isCli()) { } $categories = ConvertUOM::getConversionCategories(); +$defaultCategory = $_POST['category'] ?? $categories[0]; $units = []; foreach ($categories as $category) { $categoryUnits = ConvertUOM::getConversionCategoryUnitDetails($category)[$category]; @@ -48,7 +49,7 @@ foreach ($categories as $category) {
@@ -58,7 +59,7 @@ foreach ($categories as $category) {
@@ -66,19 +67,25 @@ foreach ($categories as $category) {
-
+
3MP&!~lwCyG1l&@?5e66;W^4e(l;Bk?Ei+R~Q`>Vd zHBEEhvs5ZI&7WDOnWe8VfV%<}>FUBB z%>2OZ7;|E-3dSxY+$=wcCu3jY9?zyQIb-Q6Ly7YL*OkC!P{~M!12DWnGFK)8%$cpk z)0eg3()sac3;x{1arf}&Am+y^Sty%7vhsm`pumuKj8h!Pdx}2;`Lj8mGWHJ7^C^c! zvbOAf;2WzKlDXq@k;O9u(=Zj&vcEU=WpH!ESBBI*q!8TorIImE##8OeEQ8MMr}kvU zC}|(Y%L~e0vP5214V%Qvtz>B^eGw~W(trLx2{g28|x>eqf*WX!!$8XgX4IJVl3>@yfmD+l=r zL&g-1%HZAz4F(zwm()f|i4}L0w`MM^1!IA)1$GJP(j{Wx_)zh+qr3xpqSjVv->myly`w>9c?irR5)61){{jrmPgEcD!C+ip@J-ys3|otG!SWd zp>cVk9pxdc2kTB5EokGd-U)7lKZu1eI45gH5J199fLPeY##$K0uwE?OilLa>#9z$H z*;?oGVXw1hHj3ydZ_8G(mW+)H3hfuse?mdQcx5TB@yhAAI?CI#)vzA>sRQFW%01W` z)E$ceODMV}Tg%X^1ddgg1r9VlGxUMPWF0XH%r#V~kzxvlsI+Bjr24b<%p0khI;07Y z!a~3&uno|ZY#a+>Zzw}q6q|q^Ny)kZ*ad$PEDU!9%Y*s{vT-b%saXNX2}aCup7F?Y z30{P*pNvW#3XcOyf>Rg3;XjH=j^X5-?cp~BC#v@F|1ZO3s5{Fg=(8;VTn}%XQsggj z{nv+YY5+d30r>I;;42z{uWtbUMg#DMhX_BzvhdmoV_{w{cyED@ z01pu1o));0u^M!k0=^k8;R`P<&@t;rupjioBK?VYMKcuWzavz&r`LI452($_bj zSpf7bv^!rB4*G(g1^v@#$DW?uMSO{zD2OPJim}0FJ)koY;1Ya>{*C(?Ok0FYke^13 z_TV(j<#5b?Z1H7w@o5Ndj}Al6Y9GGZF5FGzTkI6*!8}};ye+R^3tSnjB4_s@ZV(klc z=gysaLdC|$))R_gQlSWDl8K2zS;OiJ)x$=pU#l8Ww>_c$eVUTC#y$|rVvY5L605~n zBQtBNe#v^8OUBzjsl_x1Cm&!o=~b&%nTd!t@b6Q%v|$c{6hgx!yFy*r+CY_}Qew&d zfCi^)GBBgD&YVFMcFUG6MrJC7s2L73l|nRFGYm!}+J+ehF7>@AW^Pu(Qgz#Cuu3sf zBJ2amAUC^Rnwr>TAc?6iOumZ?OAir-X2*rC@1D> zCmre7nW+n{rK?Yb#u1GYsY`QAr2YL6G5h!iiqpl02qL!17K%g0!@H~oh|ut-(c-8J z9TTB3W1~ds(i{`%a6d$%q8$?nvLS+qeVx#tqhULtA$g<4Q5QNULc^IxiPWVzCW5t~ z#)(8lJ0{ZAh6p0|bwUHWhIK;2?M92EE_6(U=0=SYsY`QA1S9Lli9|&^CeqD@2qN}% zLSxE?b>ffIMvJ2^bWDWS4;m#>m*$v=@_vX!MLQK5l@klOqbB5xM0`98Pi&cYQWt4%pDV z!^B3RF8ut)UHfcWO4;*T3y=SbKlx$(@x69j-^FAU}J4*b!kU0y=|XOdt%ea zv85@&rq6v?T2%Ccbq&-_2PqpnmKNlIjkTpkMgO?D)_!R^O4-=4v|tBptSv1n`q;5! z_Stljvaw@nAr9DBTUu1K@qD3uHcBZQJC+vVfQ_}KMMbYT^tF99ouzE-SXzt&HrAFF z6}|4{0()#cSs<2Bn7QAKm-L$*jBX9~m5e1BjtE5IrRe~Ssju|J7M+`U6sLKL#l6)aNpx2<_uJEJp8 zz`A9Dxd(Qk0UMSYNsshS>yf4!_razrHYgHR+WZQws$8SjEmHi$mY`FBu^AJNndGwy z9IR1c=%rzL48dp>kNRFBO6y`G16rrz3|tvjn2<;-CNdyf#}qa(cbnK^CvWWRW2l)} ztj;e{CaSgCMT%;PT&;{AkgFJj!F*PNpa}^q{Myg5EuMk1H_H7ukN^vf)Md& zYvS;MQsRDghzowO0ph~Yz=;!&u_g{*C~*kRE$k2{e<;+Lo3&aNJ9)6)G@nb=O{st> zRM=LTlRwIn3e8S|EmEahn!gbn2x6ttF2i4J{yrEW!7rt0bS3HnQ~Mt-5vDc#5*>Hb zq4m=-5^E3OY_>+TFA}{Et(Ch%ah|L%RD8WyNVgR}iCCLk@ySk&AH0nIh!K(3h(hDJI!waq>X( zpe*H(ffg@CM@uW;q6ec@Yl~kMVxk8VVxk8VVvC)cvHlFJWSJG^yn?4mn6?DzOkU*r zRc!6y$syWQF##-+2r*F-Atp*9#K=DmsBwX+f^0=_ae>~mP-cU9o-ZiN11E-HnYo&B zEwmMBo6Ff7wUG;BD2H-MU-gY!M#lXBC!sH=3YRQ3IJe;>NZ~>a$+->LEGLlOMYkc8 zR*aEF`LaRi4B2RvK}Q}+@TRf0f;u&WV;&6-2H36Wr0jW7>a)3q7bwQC1y*Y!3sE{> z{N;kkBwpGah&-LYrK9ZR`zl~&QP84>P30D3!LU9b+J{Z#r)lTlpw}O?AA^BwlB!&# z%qdo@%avUsDPdnm{e&n=n3YpMA$qx@HCt{atc-AQQTQ5;FTZA$M)3Kte;E#kZIsEW zamicZ+@F}|piIFIBGUVx&Drnlw)0}(Pr{8xn^SIphRa|MLoqbaBOI+aXbV6*YiL$- zWxiS)z}OJ29wQo5M3!EoD_3Szlul9`%7Bxg*K5@(9c4#x)fDDxO4XD!L~kg?KuC=y zl58;O4P`h*k*X_K7pV;*0bs{#rxdFYCKyyx^$;hqSY^;^)I?9MEmxsQC+8Pa!VrCB zxj|nJK#E>Vdj~_&)U^mxbp;v~m<+2xK1v_1(drSTX-X-3x~4=8X)^Rv)g&}BWR~Tt z3`ogRO`&`vD%6wI`G9BZOVxS+ax`j#fn>^6>57Q;NS&q-g+bCNO+I>efJPT<%1YGJ zfixyGTQwa?V^#34YLI=fLR*0#ev+0-k)SG38>nB<7Xg^8Dw~c7%7PpzYQ3RIjp$JQ zG^C}Lt4k3XrXj@PP&R@zNDWwqN{2}1Bt22gQkU~$KyI}T@oYUbiZG|5h!-nYWgxVX zx_qsgB-LoO8dWLskJXn@!h`Bb1}b;_lqp(u8D0`9;08z`Nfm{(0g+rVO=T#+%MgRQ zpn%FaRAn%b+^M<}P#mT&*6B1jXqaMmZHdkL-Ivq))G&(h8M?NkrQ68fWWUjf??mWWOFLYkYnQ z%9Efr)t(M=a(!s1LQ;55CzqD002T^c25^>U3W}9nR;H#{u09`6m<-A@R&RhEU<5T< zU54t@DTf&JXh=C2FQQS^FBPP)7De3|vd0gxj~PXnF;P7{nXHpMPTo%*B_AbEkSked z(_3dOGf##$a0_MRRM|v?YJ{5*zK!r(gg+pR31h53yhJ&|=?FI<+>G!Wgf|iP!rpBJ zwwUz@%MqSJ_zA*P9Q4RQQ8y#phA>|dfExr&7aRz`oY-@U(Vov)rFhMEVp+qTaR$~E z^3f{z^^4y7;jdYH&~1TmTq5*@_3XUd=~L8Y6T&J>wQoFgBI9s`Px9TNzt6rJI&9^Z zI7Qd%v))_q-m5bYy#IVqz_I_@vS#FOchgSiCahHkXhY6N-+gi56~o?6ZrctoTe)V~ zraK9}f^M`+nXu}MzM1FW95wGBZCgK}TIId$$6fpO1owTsCUxHO>{TG*yWzd3! zhE5A#KmBVzrxU%WcB{Ep)BJ;q5udfbG4GjvSB@o~yXw4sbB8g5zPM{-*{U`nud#%OCb=Bjlp%Eh{ zq_+B6^~suV4nR+RP(O4$F3+IWmW7AWv-ataCLfOQeEhpPduN}j8gcq?>#kG7S1n8o zf31pL4z4Z^Y(pxxd=S}g)zIw`&-!`KJ)gNJdt*YusbfB;hb3Q# znG{sL=9!1{&UIS$Vw+2S(mwtvAp2b3i5s6@d(61?a75jUnFp&kg-sK9(|k4Q zm9^nla`rAD1e);4cic-IzCDWe^n2iEHft$9v%Zt^e>Ts)PI;LLmgk&L} zb?F|5l|FHot6rJ5@OX&X`Ms83U$1O^?Cqyoe3ANo*@&txXBWAuV@NM&q^Np6>-_mx;&i-m>>Y1?6Zw>L;Q_FiT$_aPz zcs)7X<&hh&1h;)z*7nEKo!}H#{4uxr&eLH%Mttu)PcS>3hY9fGfLV4%lEIIb`(Z^aJit>AB%&h!>mDW|(293WnG5^S^9@n0_cC_%7tn+hy z=2e9c@m)Kp{nN*MW>l>@{l(Z|ea?>gtFoFU9-lF+_x7NesWClz)-IdZ?dnDMS1UUG z+~%#12S3`a>gmAFmmlAice47AqaVKD_4c4vuNt0uqw~2_)nz+(9w^?j?(SCyl^5R5 z?YXq)?&lx%dfCwO+{W#_ZVg+V>3njEqI>$z{~EAi#RsR`m(-lz)co@|Czos}zU*~x zT(6bWPW&_fa_``?c@G|(HXwcTt8>o1?4S40!KLlC4LR}2ruZKFw#?cTFm>Fj^{et` zCk*@Yn8&WHjoRL=)_kDMA98o)?FV8g9J{Gd;OhA6XiHf%ZUdcZ?kY&X^ z5j1a5|KYb=dv$(d#oR@*?iUBUCn)yF-%UGUP;EWgLwm6Lryke!pT1Vyu1n&B-#c}i zq)z?*`y&e%Cw+3y?d7w5mHIFC^q=v^uQz|u7ll8xa*$EI@10TVW4B)E7jgBX@n1iE z@kRCJdq3Uq{x0v)#k#%oTXp;6^N;fO{dVtZ?{$y2_-1wGZ?`r~+myHW-nScKs~@?3 za^Hzl2Ws!8*3Ow$lesq~WR~-Qe_fI7Uzrq}bYxLn=WA2f>Q0<=>R9Jfak=e(^|{=l z`Pic_d-@LAzT@YF!OtFf>xaV;TWTg8EuQ`G8d=Bndp(=oUGwmziz_qJKkHJPF@8qh z5!(Jc2Bjbz%PrcuzvJ?1^E*{(q0tu;bLIsuJwEt} zwVK;iL5Z!7U7YWoK7QQL+vPPqe)zOYNbT^i7apGOwI;UK^UBm2OFs;3cdYC4JIcT9 zax|^r$@Jx&pYUt7J>|=jM=rK%p&0R1hsf)*rafQv_}Y@&&QF}%^_%;_=XQUTDSx{2 z&gDz)uo3&yb{<}OH)89T@AQ2wzjngd!lfyrrhb0)NSh8%X(rD3dGJyH7hd%}dhyC{ z&0W2o8`I~b)L2F54L4PzCk~36`o{Vjt(z4u&duApJn-(k%?aBdci#S3=CtigDhq=b z_~fnmh3(OOy2oqehtCi5zCLA=legmSYM=0o*V=oWRLSo?_-0DyEt8k-3i!72g@;d6 zx7zvMrF{=FK^!LwWsKdXyBVyF&#^`GklRt&g$ z^yl;yyJc;=Z1`f{(3!d)wx0QUiSdQ)?>*dieCFXRqqM8u7`}bLjqKwWvuAH@ez%jh zjo$k0L;J3)KdETnckg`fK}XZWqhESsd}jFKcfwDe zU#m$OaP?I5OU1X|FG>r(b*#<1za?Z=$sag1f57IoU;VhFMNyXnLA9IK*Bx{X2)i`& zMCHn3AIv3aN&7!@Y?)lLxjyyLzsp74*^ItF8H8IA`y=qH| zYDC%Q9dDiqAHVI8(^~aI|47k!cRX|B(Vg-@rTlQe;*U~}XRh1O>f+fC_he*lieBAP zc5+g9pz>~c`oj}uJW#PK=1kZn&6Bmhx<2luZ9cy=&!=PUH>cK(3QxGQW#7iDVcV|t z$hme;`L?0$*$bT}Jv=gR_Gbp&%Wpm3qxj|vpWHh>s!c-S+(o-$ADb6B^C`c%9bS2H zmyg$_Z6~ts{P@`ZVTGwX7KR2LI&*2j_1DiU1O3XLUbObx4Ofal;KR<#$35J_?@-F{ zjjo!j`CZ&H-g#mEd-)G6S$*NDmg?(2`bEuL-fQLl$=`37{cO;RS-WRkzILYF$sX0U z$|J|mz8ZCDuA=hcth6`#2j1=$GQ42=@1ZSMPye)cUh?(U!_N7pC&X+DE{w{&JmA@) z@*hVQI$xRmXko-!)uQR0+soGP=6wb-axobH7W~kxw?3WgfbdRVkj7>SaH!eP6?bQ`y&-h=nt%9Bsz{!+8C-)m2g`YQ0X)$#A|J~{MmMb*pSuaM1rH)!u9pBZOa zo9D8Y8@Jx;*LGe}c&C5~e~gGPJ3q%I_|>Czm%6N2pC&&(Zr83OUzm$7a|*@LzlKJ& zK(o5+jB&Gu+Y*ot^DMa|piiqopERR%*ksAr2II+k;}9$LODRdmFcwNQ2dGDhk7%Sc zq()$&aUM&?)-)WLMAmQ@45ert&xK7u>Ca$ugRvD@5?Nt2wLk)!57>Mw7~v7J@au0M zn_qu7bMmKTeo>Zvsf=w;qjenm&4VYN1^AgBz5C+Hu->m=zpwlLbo!*M*gOvJ$>F{D za~6lx@JWq8vny8V&@R|Nka7?c9!5V2WV1PTEq``1V_%EyZuK5)e!m^t!|FYqtwv#n zVr@!^g~mesY4|$dFih^s0n5U|m>yw2tj^N8AKJ5sXGz%6ibOodv{NFJJG*|y-gkH2 z&z$J@DgX4)D+*9bZ~StcN;}4hR%+8YO8H7CZD#Dk>N zjFEwCtxPUI;u3$c6JJ-ePPcwlG4&>9nqjJqc1X6b4yYSNMi z%gK$;NQ%!+GVL=E%^|9Mb&`IX4l8k!D03#|#X_!1SAc~(tVe0EV1o5py^dvNX6I(d zr{;1d!cN7A3YAt=x{a-X*%=*dc2h(PChjf-ZdOy44zZq8wrE9^l8V`8e+|d zw%DeF25n&#a7wAjI|TyLV%!u!3PoY9!hf&a5wKd4o20*AxeFn$3Yt)xWG~^;S!AXy zT-)p4D{~~5nfk83A~Q+388_)!D8b(;^M6OrQu~07o8^s!#o1nehmIrQ#qM9nQhBFB zMnOtzxuw?ecgX$cY{Q=1f|SKjaV0EW*j#p`?`dcY)8Hef!8XHqi>7uzhNWY~6b>!) z#~-yZI_g0!rwn$d;-fU8IuUmzUa3KE z)`e8zN#keX8VMQ-^s@qw?E&7j56|O7f4h$*?gY#W%`I_fY>jSjW{JzOX?nq3h%=ln zp-T{fC@P$MIK-9C>C+|i<}m7uuzxLdNiuIG;ZcF4Fzkf@W}BBvA%#&FCWR4yDGZxU zHn4kqHp5sP5BJh%UQqsc#tu9bhi68=`s#N+o z+>G;}c|$U8G3JDk6JZFL&TJTLMvT$HCDIe6Q5XlhnA_pk(KPSyCO-V#i9V9Tu}Jnf z=s_p}ZF(oMxcz72lGw`!uf#cV9HJ3N+uOW6bmAkHjpWz)SSk;G&j84(%wJ#6{Pnw7 z;!X78c-_0==q7!23tFQqt}2ePU%h+Z^TIDDaLEqH543?@2xv~2faSisY3od5%mISQ za2mBMw{sI3(Iz?K_~^tHAM2r$J~Wf;$!22CLz$egtrJfobU-2%)Cr-G2;@K9SVvE) zTi0_~QdsCjTm2Di6m;4R-+76`S78R@ry1L+0N^5AGeP%B%zmG=X-|(BJAk+|H3Bje z3Z0$5178;mVQH@~0GvS|X;i&bfx_EcvN=rVLb;5_*jlF=yofj!=>)ZqYFJ}aO`7Zx z4GQT6KWyRGONa_wiN0`~k`RXqxFD{7pCEiG0UR3@WQL*_o1w61h@_+#Y0a4q1KM8p z(PdQk_RxzItyqy&)uBN_Ge+m6`&+-DmU1SOv7fX5C$C>nuRtpzytTk1Q6UAbS$YMW zu>F(0g6PFb2aNj+(TjUaJTX<56h_7`g^{&MVdR6PF!DK47&S^MjJ$yqMs+QP(QHNv zBm0!XXxmo`qn=R;^Rfe@9?u$&JUd;az1y*34JDXpQ=H<~e+L4uAe^9Veu@n9|yFsFFVed0I!b5LZ^8roh!5l<5O#0)|MF(nLxE zhQfpq$SDW$XE*)~juSBGi=ULQCx?dcXBdA*aEu^$aSx7hJC^VmPZLW|5dXO5kR}M5 z@B&_Ijv>lH7$SE8&(nk_%2A)Yfahhxi{SJk`7???qxmz&#J9N#uQ!MG;m^MO*^fW_ z1MeJKoCnOgwX8X|p#!jwPJe->zhIn%r$64CP#Mj=3CUK!H}ODsh2Dgk4Ea8x=dko9 zf6<50@4p|xVeUJH|C4=KI=hIbJ05?w<7pcCM`1=l>q-517=qelNDA@Wr;v{OrN#y9|PXfCPUd&uQ-x*^42`Wbfj`93(W9ZZFTDfsq%- z=lmil553bR#_2sx$=F65n4-&4G9hm7`DgKo2I;}Q~r_}`B{h>pFB6kY=Y!$2qmH_?9%F#7z5 zcz}%R<0d;Kv%UfPUv-h5{@f+xpmvybSZIf|=VyJ<2&(C_Xn?dq`ts>6=!?FaAzlPm zW(e>jA`l_{j!4J%&{O`H~byGcqZR`cf&3W@J(r&B&xM zAIwgqFkd?`KRd7%c3^ZcMM|%w9aw+_Mr&DgrQ*B+PDtPvJk;-}n*N0KMOx2FWh2b# zZsv3kzA{I?*&E!2wLI#%y!kkTXwxLZn||_b!lW4^@etDFh|x?$h|zqFzQ`!V+z_LY zf)G<6W})Ja7#$rD(r9)z*c2l>^5%;*lqSq+ea&eki=R10ve1Ea0h46$H^)d88aN4Q zBuh_ojAV&3$4HiVbBtt3FvZAzz4@6Cq9Uw)(zr*6ku20!gc!*}eVPy>S=yLmBukh% zMzSQDVP%lyjgJR&Pe%&mn#^p7+MAQH+r+9n3M3g;t>j zOp+zV93xqVnqwqOsyRlo&~Lznd?d>-Q;gcHH+=$@r_u77H~M5TMzVA^$4HhybBtu^ zVvdn4w8%*uTrjip#w<*Xkt}KE7|D`uj*%=GrWmc(d1H<*J<`~H$whLjUMQj)3DJ&LE-?#O~ewV<#8J9(D7tOd{XdXdzjF0gGllCEn z7|9~Gi)Ot3#dgt**W+k2CdneU3t=^9j46$LxHo3-0!{qh2C-;!jPw#?j*(tOi}vKQ z^f9NAEMv_v(u;)(=|yZ8o|tQUvj@$XR7c}XF{($4MSF2sl;$*&rJp%w-7dViEVSTG zdhvo)T2moe#+%bf77G=UMQmNdsuY%II2HPTB9@lW+@@Vn-<8TH0+ad+A81}|7eaqP z{g^k)Gg0#8H6vQAFQ+70tS{GwXtBPK-eR%T^I3ebAEzSvU_VYJ&cwlwQxR>=k5dtC zjrvN9m9((2k`|nb=sjC-Dx#IN;8aBKNxiG3e*HNWv3~tI6|sK(ITg`L{5ch|eyKmU z)J#iGMXZ^YoQha8EjbmjW?FJ8V$B3_O!86ZVEq%}WERTeuzw`}wP&_5CHesIul_n9 z$z6XPaG0A&_517wCfOrs^kmLYExEkej6Lg@y?pJWk<#uNv~4|AxmOM%qbn zsz-^$zclBiJHKQW`)qhd!FqMydY(MW>$qv%p3>uRQxT{yqvBAl&^SShn><7}iJLfmg-p~p5)S{TLj1R(0*vSo3<1aSp|~dBpfA%GmMi(sa5>+aC(0-IPdKj(m<02nl#X)fhG+!X`o31O&Vy@K$8ZVG|;4hCJofnfTQ`p z)7cNst_*AEvv?`y{~^C@r1}4C+*mx}^ZzV_v=2e6g0%KnfSXn+Y5q_1_Hx`b@1KdA zR`A93fcbc*x&Lw8*6RUS7T}jKkN4rU2tYLHl7=0@gm7tR#O51g^&nC8AkoYdxrsZi zL=a_s?W?4WK2lc3i8d`JKqpOClLneJ(4>JT4K!(>Ndrw9XwpEF2AVX`q=6<4{9n-k z?c>udn5Mfl|E5!BbPAOA_-QYm=K6GOfo8}wXQ%yqns3v*pXT^(hEbYut1mkIv80sk!#J>4Y53xal055_f0Zfw;Ti4#G|6zUZ_Uo$3n4-2*qBU+INA z1a~NII=w_EpCWM6xh6V?MCVHWz%MZ93<;et>WiDsh0ysPI`uISH>D3kNT<7EamV3~ z$DM#X5jUmZ!%g9T%9V}N{`7fzB~E(LS%3N$9Dn8tU@rU@xuh?$BYXmYXFnhip`$?c zF4C_E91ZRUe1BvTm!m`k-*@PTk9Aqs)%|ANQ6ylx;8Y-e*`B_8LuF6pzkLw@se