From fbcc219429738858de63148dd8ba021db18e2b06 Mon Sep 17 00:00:00 2001 From: Ron Hildebrandt Date: Tue, 13 Aug 2024 14:27:46 +0200 Subject: [PATCH 01/33] NXs file by python harcoding and dev notes for validation --- .../attachments/51dc82f9f0f5ec2f-image.png | Bin 0 -> 80664 bytes .../attachments/5cbd8c6a1ca227df-image.png | Bin 0 -> 68210 bytes .../attachments/9d748230d54a8059-image.png | Bin 0 -> 128230 bytes .../attachments/c6ab2f4b925aed27-image.png | Bin 0 -> 122427 bytes .../attachments/d8e727b3b32dcbb9-image.png | Bin 0 -> 170613 bytes .../attachments/e28ec15bb537c9b7-image.png | Bin 0 -> 160429 bytes ...nexus-files-by-python-and-validate-them.md | 940 ++++++++++++++++++ docs/how-tos/nexus-validation-dev-notes.md | 257 +++++ 8 files changed, 1197 insertions(+) create mode 100644 docs/how-tos/attachments/51dc82f9f0f5ec2f-image.png create mode 100644 docs/how-tos/attachments/5cbd8c6a1ca227df-image.png create mode 100644 docs/how-tos/attachments/9d748230d54a8059-image.png create mode 100644 docs/how-tos/attachments/c6ab2f4b925aed27-image.png create mode 100644 docs/how-tos/attachments/d8e727b3b32dcbb9-image.png create mode 100644 docs/how-tos/attachments/e28ec15bb537c9b7-image.png create mode 100644 docs/how-tos/create-nexus-files-by-python-and-validate-them.md create mode 100644 docs/how-tos/nexus-validation-dev-notes.md diff --git a/docs/how-tos/attachments/51dc82f9f0f5ec2f-image.png b/docs/how-tos/attachments/51dc82f9f0f5ec2f-image.png new file mode 100644 index 0000000000000000000000000000000000000000..32e0d3300d7533670614d2549a6291f998b92aea GIT binary patch literal 80664 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%0DyUvbU3 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 literal 0 HcmV?d00001 diff --git a/docs/how-tos/attachments/5cbd8c6a1ca227df-image.png b/docs/how-tos/attachments/5cbd8c6a1ca227df-image.png new file mode 100644 index 0000000000000000000000000000000000000000..02da891af933006d2937a95a42080ac7076c575d GIT binary patch literal 68210 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

Hr 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%0Akio2C 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

q? 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

>t62AYL&5=% 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 + + 2. NIAC [https://manual.nexusformat.org/]() + + + + + +# 2\. Create NeXus by hardcoding with python + +Install h5py via pip by `pip install h5py` + +Then you can create a python by the python script called "h5py\_nexus\_file\_creation.py". + +``` +# Import h5py, to write an hdf5 file +import h5py + +# create a h5py file in writing mode with given name "NXopt_minimal_example", file extension "nxs" +f = h5py.File("NXopt_minimal_example.nxs", "w") + +# there are only 3 fundamental objects: >group<, >attribute< and >datafield<. + + +# create a >group< called "entry" +f.create_group('/entry') + +# assign the >group< called "entry" an >attribute< +# The attribute is "NX_class"(a NeXus class) with the value of this class is "NXentry" +f['/entry'].attrs['NX_class'] = 'NXentry' + +# create >datafield< called "definition" inside the entry, and assign it the value "NXoptical_spectroscopy" +# This field is important, as it is used in validation process to identify the NeXus definition. +f['/entry/definition'] = 'NXoptical_spectroscopy' +``` + +This proves a starting point of the NeXus file. The comments indicated by "#" help to understand what these lines do. Well go through these functions in the following. + + + + + +# 2\.1. Fill the content of the .nxs file + +Go to [https://fairmat-nfdi.github.io/nexus\_definitions/index.html#]() + +Scroll down until you see the search box named "Quick search". + +Type "NXoptical" and press start the search. + +You see several search results, select the one with is named "NXoptical\_spectroscopy". + +Then you are (ideally) on this page: [https://fairmat-nfdi.github.io/nexus\_definitions/classes/contributed\_definitions/NXoptical\_spectroscopy.html]() + +You see a tree like structure of the NeXus definition NXoptical\_spectrosocopy with several tree nodes: Status, Description, Symbols, Groups\_cited, Structure. For now, only the part in Structure is of interest. This contains the information, which has to be written in the python code to extend the NeXus file, which is created by the script "NXopt\_minimal\_example.nxs". + +Use your browser search (CRTL+F) and search for "required". Ideally your browser highlights all entries which are required. You have to add those to the python script, to extend your created .nxs file. + +In the wollowing. It will be shown, how the python script has to be extendend for the three fundamental objects: + +1. Attribute + +2. Datafield + +3. Group + + + + + +# 2\.2. Adding an attribute + +Search for the first entry in the NeXus file, which is not created yet. For me it is: + +**@version**: (required) [NX\_CHAR]() [⤆]() + +1. It is located in the Tree at position: ENTRY/definition/ + +2. The "@" indicates, that this is an attribute of the concept "definition". + +3. The name of the attribute is "version". + +4. The "required" indicates, that this attribute has to be added to be in line with the NeXus definition "NXoptical\_spectroscopy". + +5. The "NX\_CHAR" indicates the datatype. This is should be a string: "The preferred string representation is UTF-8" (more information see here: [https://manual.nexusformat.org/nxdl-types.html]()) + +![image.png](<./attachments/51dc82f9f0f5ec2f-image.png>) + +Now the python script has to be extended in the following: + +``` +f['/entry/definition'].attrs['version'] = 'v2024.02' +``` + +This h5py command extends the entry "/entry/definition" by the attribute named "version" with the value "v2024.02". The same is done for the URL attribute: + +``` +f['/entry/definition'].attrs['URL'] = 'https://github.com/FAIRmat-NFDI/nexus_definitions/blob/f75a29836431f35d68df6174e3868a0418523397/contributed_definitions/NXoptical_spectroscopy.nxdl.xml' +``` + +Though, you have to use your versions which you want to refer to, as in a few years this NeXus definition might change a little bit. This is shown in the following. + +### How to get the "version" and "URL" values + +At the time, you create the NeXus definition. Go to the page of the respectively used NeXus concept, i.e. [https://fairmat-nfdi.github.io/nexus\_definitions/classes/contributed\_definitions/NXoptical\_spectroscopy.html]() + +Scroll down until you find "**NXDL Source**:" and follow this link, i.e. [https://github.com/FAIRmat-NFDI/nexus\_definitions/blob/fairmat/contributed\_definitions/NXoptical\_spectroscopy.nxdl.xml]() + +This is the github website, in which the latest NeXus definition of NXoptical\_spectroscopy is stored in the NeXus definition language file (.nxdl). The information is structured in the xml format. + +Now you have to copy the permalink of this file. Go to the top right side of the website. Find the Menu made by 3 dots: + +![image.png](<./attachments/c6ab2f4b925aed27-image.png>) + +Copy the permalink and insert it as value for the "URL" attribute (Step 1, Red box in the image) + +Go to "nexus\_definitions" (Step 2, Red box in the image) + +![image.png](<./attachments/d8e727b3b32dcbb9-image.png>) + +On the right side, you should see below "Releases" the "tags" (Red box in the image). Follow this link. + +Copy the latest Tag, which should look similar to "v2024.02". Insert it as value for the "version" attribute. + + + + + + + +# 2\.3. Adding a datafield + +Two attributes were added two "ENTRY/definition". Both were required. By this, now this part of the NeXus file is in line with the NeXus Definition for NXoptical\_spectroscopy. + +The next required entry of this NeXus definition (use [https://fairmat-nfdi.github.io/nexus\_definitions/classes/contributed\_definitions/NXoptical\_spectroscopy.html]() with brwoser search for "required") is "**experiment\_type"**. + +**experiment\_type**: (required) [NX\_CHAR]() + +1. It is located in the Tree at position: ENTRY/ + +2. There is no "@" in front of "**experiment\_type"**. So, this may be a group or a datafield. + +3. The name of this group/datafield is "**experiment\_type**". + +4. The "required" indicates, that this group/datafield has to be added to be in line with the NeXus definition "NXoptical\_spectroscopy". + +5. The "NX\_CHAR" indicates the datatype. This is should be a string: "The preferred string representation is UTF-8" (more information see here: [https://manual.nexusformat.org/nxdl-types.html]()). + +6. The "NX\_CHAR" indicates, that this is a datafield. It is NOT a group. + A group would have a link to a NeXus class (i.e. for "**ENTRY**: (required) [NXentry"]() to [https://fairmat-nfdi.github.io/nexus\_definitions/**classes**/base\_classes/NXentry.html#nxentry]()). + As it is a field, the link directs to a data type (i.e. [https://fairmat-nfdi.github.io/nexus\_definitions/**nxdl-types**.html#nx-char]()). + +Read the documentation at "▶ Specify the type of the optical experiment. ..." by extending it via click on the triangle symbol. You should see something like this: + +![image.png](<./attachments/5cbd8c6a1ca227df-image.png>) + +There value of the datafile has to be one of the list. e.g "transmission spectroscopy". This is case sensitive. Best is to just copy the string from the website and paste it into the python script. + +Therefore, the python script has to be extended by: + +``` +f['/entry/experiment_type'] = 'transmission spectroscopy' +``` + + + + + +# 2\.4. Adding a group + +The first required group in NXoptical\_spectroscopy on the "ENTRY/" level is "**INSTRUMENT**: (required) [NXinstrument]() [⤆"]() + +1. It is located in the Tree at position: ENTRY/ + +2. There is no "@" in front of "**INSTRUMENT"** and because the "NXinstrument" points to link of a NeXus class, this has to be implemented as group in the python script. + +3. The "required" indicates, that this group has to be added to be in line with the NeXus definition "NXoptical\_spectroscopy". + +4. The "NXinstrument" indicates via the link, that it is a NeXus class (or group in python). + +5. As this is a group, only attributes can be assigned to this. No value is assigned to the group. +6. As this is a group, it can contain many datafield or groups. + +7. The uppercase notation of "**INSTRUMENT**" means: + + 1. You can give INSTRUMENT any name, such as "abc" or "Raman\_setup". + + 2. You can create as many groups with the class NXinstrument as you want. Their names have to be different. + + 3. For more information see: [https://github.com/FAIRmat-NFDI/pynxtools/blob/master/docs/learn/nexus-rules.md]() + +The respective python code to implement a NXinstrument class (or equivalently in python group) with the name "experiment\_setup\_1" is: + +``` +f.create_group('/entry/experiment_setup_1') +f['/entry/experiment_setup_1'].attrs['NX_class'] = 'NXinstrument' +``` + +The first line creates the group with the name "experiment\_setup\_1". + +The second line, assigns this group the attribute with the name "NX\_class" and it's value "NXinstrument". + + + + + +# 2\.5. Finishing the .nxs file + +This has to be done by using the respective NeXus definiton website: + +[https://fairmat-nfdi.github.io/nexus\_definitions/classes/contributed\_definitions/NXoptical\_spectroscopy.html]() + +And by searching for all "required" entries. The next required entries are located inside the NXinstrument class: + +1. **beam\_TYPE**: (required) [NXbeam]() [⤆]() + +2. **detector\_TYPE**: (required) [NXdetector]() [⤆]() + +Both are groups. "**beam\_TYPE"** could be named: "beam\_abc" or "beam\_Raman\_setup". Use the knowledge above to extend the python script to create those NeXus file entries. + +### Note for required entries: + +Above in the definition of NXoptical\_spectroscopy, you as well may found a required entry "**depends\_on**: (required) [NX\_CHAR]() [⤆"](). This is at the level of "ENTRY/reference\_frames/beam\_ref\_frame". If you dont have the group "**beam\_ref\_frame"** because this is "optional", then you don't need to have this field. + + + + + + + + + + + +# 3\. Validation of a .nxs file + +The validity of NeXus file is fundamental, to ensure FAIR data. Without specific requirements, it is not possible to understand the data. What type of experiment? What Laser Wavelength? Which voltage? What data is represented at all in the table? What is the unit of the value? Which ISO norm does this refer to? Where was this measured? Which year was this measured? + +Therefore you have enter all required fields in the NeXus definition. The requirements are set by the community via Workshops, or at Conferences. You can as well comment the NeXus definitions, to initiate or propose changes/additions. Go to the NeXus definition, and sign-up/log-in and give us some feedback (Red boxes in the image. Expand this panel on the left by clicking on the arrow symbol). +![image.png](<./attachments/9d748230d54a8059-image.png>) + +Though, humans make errors: Typos, missing requirements, forget to add attributes, using the incorrect datatype or format (Matrix instead of List, Float instead of integer, etc.). Therefore a validation is required, to ensure, that you can share finally your FAIR data. + +This is done by software. + + + + + +# 3\.1. Validation software + +There are right now three methods, which can be used for validation of NeXus files. All are different and have individual advantages or disadvantages: + +1. cnxvalidate + +2. punx + +3. pynxtools + +Open software is usually shared on Github - There you find usually the most accurate information, as documentation sometimes lags behind. There you see a box with folders and files. Below is the content of the README.md file displayed. This usually shows instructions for installation and handling of the software. + +Here are the GitHub links for the thee software packages: + +cnxvalidate: [https://github.com/nexusformat/cnxvalidate]() + +punx: [https://github.com/prjemian/punx]() + +pynxtools: [https://github.com/FAIRmat-NFDI/pynxtools]() + +In the following, each package and its capabilities is presented. + +### Operating systems + +Almost all PC users are used to Windows as operating system. + +A lot of Software development is done on Linux as operating system. + +This is not a problem for big company, but for smaller open software, which are often develop without any payment, this is a problem. + +If you are used to Windows, consider setting up a Linux operating system to eliminate problems in the installation process and ensure compatibility. + + + + + + + +# 3\.2. cnxvalidate + +This package is written in c. It is allows a command line evocation like: + +``` +nxvalidate -l appdefdir datafile +``` + +1. nxvalidate: calls the software + +2. \-l appdefdir: points to the location of the NeXus definitions you want to use. This is a path to a folder called "defintions". + +3. datafile: This is the path to the .nxs file which should be checked. + +This output shows warnings like: + +``` +definition=NXoptical_spectroscopy.nxdl.xml message="Required attribute URL missing" nxdlPath=/NXentry/definition sev=error dataPath=/entry/definition dataFile=NXopt_minimal_example.nxs +``` + +and indicates the entry of the .nxs file, which is incorrect and what the respective problem is. It also points to the NeXus definition (.nxdl.xml file), in which this conflict was found. + +While the software itself is powerful, its installation is difficult. + +# 3\.2.1. Installation (Linux only) + +This did not work for me on windows. (The problem was the software cmake couldn't fine the libxml2 library. Though, if you solve this, this maybe work on windows). + +Therefore: Use linux. + +The installation process has to be build from source. This is eased significantly by using another software called: cmake. + +### Install cmake, github, hdf5 & xml2 library, etc: + +open the terminal and install all parts required to install cnxvalidate via cmake: + +``` +sudo apt-get update +sudo apt-get install git +sudo apt-get install build-essential +sudo add-apt-repository universe +sudo apt-get install libhdf5-serial-dev +sudo apt-get -y install pkg-config +sudo apt upgrade -y +sudo apt-get -y install cmake +sudo apt-get install libxml2-dev +``` + +### Directoty location + +create a folder named "nexusvalidation" via terminal or file manager. + +The folder is located at `/home/USER/nexusvalidation` + +"USER" is your user name. (You can get your username by the terminal command: `echo $USER`) + +In the terminal, this is indicated by `~/nexusvalidation` ( \~ = /home/USER) + +open the thermal and go into this directory by: + +``` +cd /home/USER/nexusvalidation +``` + +### Using GitHub + +Go to the Github Repository of cnxvalidate: [https://github.com/nexusformat/cnxvalidate]() + +Click on the green "<> Code" button. + +Click on "HTTPS". + +Copy the https link. + +![image.png](<./attachments/e28ec15bb537c9b7-image.png>) + +open the terminal and ensure you are in the `nexusvalidation` folder. + +clone the github repository (download the files of the software). + +``` +git clone https://github.com/nexusformat/cnxvalidate.git +``` + +now you have a new folder at `~/nexusvalidation/cnxvalidate` + +go into this folder via the command + +``` +cd cnxvalidate +``` + +now you are in the source tree. This should be exactly the same files, which you find on the github repository ([https://github.com/nexusformat/cnxvalidate]()) + +make a new directory called "build": + +``` +mkdir build +``` + +go into this directory + +``` +cd build +``` + +use cmake, to compile/build the software - this puts together all pieces of software - and especially external parts such as xml2 and hdf5 library. + +``` +cmake ../ +``` + +install cnxvalidate after it was sucessfully build + +``` +make +``` + +Now the above mentioned commands should be avaialble. The programm/executable is located at: + +``` +/home/USER/nexusvalidation/cnxvalidate/build/nxvalidate +``` + +# 3\.2.2. Using cnxvalidate + +Now you can start to validate your created NeXus file. You may also just use one of the provided [MAKE LINK] files. But before the validation, we need to get a set of NeXus definitions, which we want to use as reference. This is done by git: + +### Getting NeXus definitions + +go to the folder nexusvalidation + +``` +cd /home/USER/nexusvalidation +``` + +Download a set of NeXus definitions. Choose only one: + +For FAIRmat NeXus definitions, go to [https://github.com/FAIRmat-NFDI/nexus\_definitions]() and copy the github "Code" line to clone the repository. Then: + +``` +git clone https://github.com/FAIRmat-NFDI/nexus_definitions.git +``` + +For the NIAC NeXus definitions, go to [https://github.com/nexusformat/definitions]() and copy the github "Code" line to clone the repository. Then: + +``` +git clone https://github.com/nexusformat/definitions.git +``` + +Now you have a folder called "definitions" in the "nexusvalidation" folder. The path to this definitions folder is used as option for cnxvalidate, to tell the program, which NeXus definitions shall be used. + +The respective path would be: + +``` +/home/USER/nexusvalidation/definitions +``` + +### Get your NeXus file + +put your NeXus file created above ("NXopt\_minimal\_example.nxs") into the "nexusvalidation" folder (filemanager or change the output location in the python script). + +The file should now be loacted at + +``` +/home/USER/nexusvalidation/NXopt_minimal_example.nxs +``` + +### Validating the NeXus file + +now you can use the cnxvalidate with the executable called "nxvalidate" to use the set of NeXus definitions called "appdefdir" to validate the NeXus file called "datafile". This is done from the terminal. + +``` +nxvalidate -l appdefdir datafile +``` + +All names are "paths" to the definition, application or file. Use absolute paths, if you are not experienced, but relative paths work as well. + +For the provided example, the suitable command looks like: + +``` +/home/USER/nexusvalidation/cnxvalidate/build/nxvalidate -l /home/USER/nexusvalidation/definitions /home/USER/nexusvalidation/NXopt_minimal_example.nxs +``` + +The "-l" option tells the program, that it should look for the nexus definiton at the path after "-l". + +For the proved file above, the output should look like this: + +``` +USER@XXX:/home/USER/nexusvalidation/cnxvalidate/build/nxvalidate -l /home/USER/nexusvalidation/definitions /home/USER/nexusvalidation/NXopt_minimal_example.nxs +definition=NXoptical_spectroscopy.nxdl.xml message="Required attribute version missing" nxdlPath=/NXentry/definition sev=error dataPath=/entry/definition dataFile=NXopt_minimal_example.nxs +definition=NXoptical_spectroscopy.nxdl.xml message="Required attribute URL missing" nxdlPath=/NXentry/definition sev=error dataPath=/entry/definition dataFile=NXopt_minimal_example.nxs +definition=NXoptical_spectroscopy.nxdl.xml message="Required field missing" nxdlPath=/NXentry/experiment_type sev=error dataPath=/entry/experiment_type dataFile=NXopt_minimal_example.nxs +definition=NXoptical_spectroscopy.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument sev=error dataPath=/entry dataFile=NXopt_minimal_example.nxs +definition=NXoptical_spectroscopy.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXsample sev=error dataPath=/entry dataFile=NXopt_minimal_example.nxs +definition=NXoptical_spectroscopy.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXdata sev=error dataPath=/entry dataFile=NXopt_minimal_example.nxs +9 errors and 11 warnings found when validating NXopt_minimal_example.nxs +``` + +The errors tell you now, which things are missing (message="Required group missing"), if there is a field missing (message="Required field missing") or if an attribute is missing (message="Required attribute URL missing" - here for example the attribute named URL) + +Now go to the hardcoded files, and add the respective fields to make your NeXus file compliant with the NeXus definitions. This way, you can ensure that your data is FAIR, which is then ready for sharing and publication. + + + + + + + +# 3\.3. Punx - Python Utilities for NeXus HDF5 files + +This is python package, and can therefore be used on Linux and Windows systems. + +The package can be installed via pip. Therefore you need to have installed: + +1. python + +2. pip + +You can then evoke a command like this: + +``` +punx validate [-h] [--report REPORT] infile +``` + +"validate" is tells the program, that we want to validate a file + +"[-h]" tells the program to show the help message + +"[--report REPORT]" tells the program, what findings should be reported. +This is done by replacing REPORT with ={COMMENT,ERROR,NOTE,OK,TODO,UNUSED,WARN} + +Official docs: [https://punx.readthedocs.io/en/latest/validate.html#validate]() + +# 3\.3.1 installation + +Open the terminal and install punx via pip: + +``` +pip install punx +``` + +This software is based on other powerful software packages or libraries, therefore as well other packages have to be installed: + +``` +pip install h5py +pip install lxml +pip install numpy +pip install PyQt5 +pip install requests +pip install pyRestTable +``` + +Then you should be able to test the package by: + +``` +punx demo +``` + +The output should look like this: + +``` +C:\>punx demo + +!!! WARNING: this program is not ready for distribution. + + +console> punx validate C:\Users\USER\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\punx\data\writer_1_3.hdf5 +data file: C:\Users\USER\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\punx\data\writer_1_3.hdf5 +NeXus definitions: main, dated 2024-01-02 03:04:05, sha=xxxx21fxcef02xfbaa6x04e182e3d67dace7ef1b + +findings +============================ ======== ==================================== ========================================================== +address status test comments +============================ ======== ==================================== ========================================================== +/ TODO NeXus base class NXroot: more validations needed +/ OK known NXDL NXroot: recognized NXDL specification +/ OK NeXus base class NXroot: known NeXus base class +/ OK NeXus default plot found by v3: /Scan/data/counts +/ OPTIONAL NXDL group in data file not found: in //entry +/Scan TODO NeXus base class NXentry: more validations needed +/Scan OK group in base class not defined: NXroot/Scan +/Scan OK known NXDL NXentry: recognized NXDL specification +/Scan OK NeXus base class NXentry: known NeXus base class +/Scan OK NXDL group in data file found: in /Scan/data +/Scan NOTE validItemName relaxed pattern: [a-zA-Z0-9_]([a-zA-Z0-9_.]*[a-zA-Z0-9_])? +/Scan OPTIONAL NXDL field in data file not found: /Scan/collection_description +/Scan OPTIONAL NXDL field in data file not found: /Scan/collection_identifier +/Scan OPTIONAL NXDL field in data file not found: /Scan/collection_time +/Scan OPTIONAL NXDL field in data file not found: /Scan/definition +/Scan OPTIONAL NXDL field in data file not found: /Scan/definition_local +... +... +... +/Scan/data@signal OK known attribute known: NXdata@signal +/Scan/data@signal OK value of @signal found: /Scan/data/counts +/Scan/data@signal OK NeXus default plot v3, NXdata@signal correct default plot setup in /NXentry/NXdata +/Scan/data@two_theta_indices TODO attribute value implement +/Scan/data@two_theta_indices OK validItemName strict pattern: [a-z_][a-z0-9_]* +/Scan/data@two_theta_indices OK known attribute unknown: NXdata@two_theta_indices +/Scan/data/counts OK validItemName strict pattern: [a-z_][a-z0-9_]* +/Scan/data/counts OK field in base class not defined: NXdata/counts +/Scan/data/counts@units TODO attribute value implement +/Scan/data/counts@units OK validItemName strict pattern: [a-z_][a-z0-9_]* +/Scan/data/two_theta OK validItemName strict pattern: [a-z_][a-z0-9_]* +/Scan/data/two_theta OK field in base class not defined: NXdata/two_theta +/Scan/data/two_theta@units TODO attribute value implement +/Scan/data/two_theta@units OK validItemName strict pattern: [a-z_][a-z0-9_]* +============================ ======== ==================================== ========================================================== + + +summary statistics +======== ===== =========================================================== ========= +status count description (value) +======== ===== =========================================================== ========= +OK 35 meets NeXus specification 100 +NOTE 1 does not meet NeXus specification, but acceptable 75 +WARN 0 does not meet NeXus specification, not generally acceptable 25 +ERROR 0 violates NeXus specification -10000000 +TODO 7 validation not implemented yet 0 +UNUSED 0 optional NeXus item not used in data file 0 +COMMENT 0 comment from the punx source code 0 +OPTIONAL 40 allowed by NeXus specification, not identified 99 + -- +TOTAL 83 +======== ===== =========================================================== ========= + +=99.144737 of 76 items reviewed +NeXus definitions version: main + +console> punx tree C:\Users\rh83hixu\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\punx\data\writer_1_3.hdf5 +C:\Users\rh83hixu\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\punx\data\writer_1_3.hdf5 : NeXus data file + Scan:NXentry + @NX_class = "NXentry" + data:NXdata + @NX_class = "NXdata" + @axes = "two_theta" + @signal = "counts" + @two_theta_indices = [0] + counts:NX_INT32[31] = [1037, 1318, 1704, '...', 1321] + @units = "counts" + two_theta:NX_FLOAT64[31] = [17.92608, 17.92591, 17.92575, '...', 17.92108] + @units = "degrees" +``` + +Then you should be able to use this package. + +Official docs for installation: [https://punx.readthedocs.io/en/latest/install.html]() + +# 3\.3.2. Using punx + +Open your terminal. Assuming there is a folder at: + +For Linux: + +``` +/home/USER/nexusvalidation +``` + +For Windows: + +``` +C:\nexusvalidation +``` + +Put a NeXus file into this folder. For example, the file: "SiO2onSi.ellips.nxs" (INSERT LINK). + +then the command is (for Windows): + +``` +punx validate C:\nexusvalidation\SiO2onSi.ellips.nxs +``` + +For Linux: + +``` +punx validate C:\nexusvalidation\SiO2onSi.ellips.nxs +``` + +The output tables "findings" and "summary statistics" can be used to find error present in the NeXus file. + +# 3\.3.3. Example + +### Which NeXus definition? + +The program selects the NeXus definitions (set of nxdl.xml files) by itself. It can in principle also be modified with different repositories. The functionality to add a new repository is right now not possible, as it was removed due to incompatibility in a major update of punx. + +Therefore, only the official repository is functional. + +You may update the reposittory for the lastest version via: + +``` +punx install +``` + +The NeXus respective definitions are found here: + +[https://manual.nexusformat.org/classes/index.html]() + +Search on the right side under "quick search" for "NXopt": + +[https://manual.nexusformat.org/classes/contributed\_definitions/NXopt.html#index-0]() + +This python code creates the respective python file with all required fields: + +NXopt\_minimal\_example\_NIAC\_NeXus\_Def.nxs (INSERT LINK) + +Here is the python code: + +h5py\_nexus\_file\_creation\_NIAC\_NeXus\_Def.py (INSERT LINK) + +The command: + +``` +punx validate --report ERROR C:\nexusvalidation\NXopt_minimal_example_NIAC_NeXus_Def.nxs +``` + +then gives this output: + +``` +findings +======= ====== ========== ====================================== +address status test comments +======= ====== ========== ====================================== +/entry ERROR known NXDL NXopt: unrecognized NXDL specification +======= ====== ========== ====================================== + + +summary statistics +======== ===== =========================================================== ========= +status count description (value) +======== ===== =========================================================== ========= +OK 148 meets NeXus specification 100 +NOTE 0 does not meet NeXus specification, but acceptable 75 +WARN 0 does not meet NeXus specification, not generally acceptable 25 +ERROR 1 violates NeXus specification -10000000 +TODO 16 validation not implemented yet 0 +UNUSED 0 optional NeXus item not used in data file 0 +COMMENT 0 comment from the punx source code 0 +OPTIONAL 213 allowed by NeXus specification, not identified 99 + -- +TOTAL 378 +======== ===== =========================================================== ========= +``` + +The last error message: + +``` +======= ====== ========== ====================================== +/entry ERROR known NXDL NXopt: unrecognized NXDL specification +======= ====== ========== ====================================== +``` + +can be ignored and is a bug right now. If this is the only Error message, then your NeXus file is compliant with the NeXus definitions and you can share and publish your data. + +# 3\.3.4. Further Notes + +1. Punx only uses the NeXus definiton from the NIAC ([https://manual.nexusformat.org/]()) - The FAIRmat NeXus definition is not possible right now ([https://fairmat-nfdi.github.io/nexus\_definitions/index.html#]()) + +2. Other punx commands are avaialble: [https://punx.readthedocs.io/en/latest/overview.html#]() + +3. More details for installation: [https://punx.readthedocs.io/en/latest/install.html]() + +4. Github project: [https://github.com/prjemian/punx]() + + + + + +# 3\.4 pynxtools - Python Nexus Tools + +This is python package which is developed by the FAIRmat consortium. + +As python package, this can be used on Linux and Windows systems. + +The package can be installed via pip. Therefore you need to have installed: + +1. python + +2. pip + +This tool has 3 command line functions: + +1. dataconverter ([https://github.com/FAIRmat-NFDI/pynxtools/blob/master/src/pynxtools/dataconverter/README.md]()) + +2. read\_nexus ([https://github.com/FAIRmat-NFDI/pynxtools/blob/master/src/pynxtools/nexus/README.md]()) + +3. generate\_eln ([https://github.com/FAIRmat-NFDI/pynxtools/blob/master/src/pynxtools/eln\_mapper/README.md]()) + +For validation purposes, we will use the "read\_nexus" function. + +The command used is: + +``` +read_nexus -f NXopt_minimal_example.nxs +``` + +The output looks like this, if the respective entry is found: + +``` +DEBUG: ===== FIELD (//entry/experiment_type): +DEBUG: value: b'transmission spectroscopy' +DEBUG: classpath: ['NXentry', 'NX_CHAR'] +DEBUG: classes: +NXoptical_spectroscopy.nxdl.xml:/ENTRY/experiment_type +DEBUG: <> +DEBUG: enumeration (NXoptical_spectroscopy.nxdl.xml:/ENTRY/experiment_type): +DEBUG: -> photoluminescence +DEBUG: -> transmission spectroscopy +DEBUG: -> reflection spectroscopy +DEBUG: -> other +DEBUG: documentation (NXoptical_spectroscopy.nxdl.xml:/ENTRY/experiment_type): +DEBUG: + Specify the type of the optical experiment. + + Chose other if none of these methods are suitable. You may specify + fundamental characteristics or properties in the experimental sub-type. + + For Raman spectroscopy or ellipsometry use the respective specializations + of NXoptical_spectroscopy. +``` + +or like this, if the respective entry is not found in the defintion: + +``` +DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@url) +DEBUG: value: https://www.jawoollam.com/ellipsometry-software/completeease +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +DEBUG: +``` + +The first example was for for "experiment\_type" entry in the "NXoptical\_spectroscopy" definition. + +The second example was for the "software\_TYPE" attribute @URL entry in the "NXoptical\_spectroscopy" definition. Here the problem was that "url" was used instead of "URL". + + + + + + + +# 3\.4.1 Installation + +This is installed with pip: + +``` +pip install pynxtools +``` + + + + + +# 3\.4.2 Using the read\_nexus function + +Open your terminal. Assuming there is a folder at: + +For Linux: + +``` +/home/USER/nexusvalidation +``` + +For Windows: + +``` +C:\nexusvalidation +``` + +Put into this folder your NeXus file, for example the Raman.nxs file (INSERT LINK). + +Then use: + +``` +read_nexus -f C:\nexusvalidation\Raman.nxs +``` + +shows the output like this: + +``` +===== FIELD (//entry/data/spectrum_data_y): +DEBUG: ===== FIELD (//entry/data/spectrum_data_y): +value: [ 288.5499878 289. 288.4500122 ... 1875. 1889.349976 ... +DEBUG: value: [ 288.5499878 289. 288.4500122 ... 1875. 1889.349976 ... +Dataset referenced as NXdata SIGNAL +DEBUG: Dataset referenced as NXdata SIGNAL +===== ATTRS (//entry/data/spectrum_data_y@long_name) +DEBUG: ===== ATTRS (//entry/data/spectrum_data_y@long_name) +value: Raman Intensity +DEBUG: value: Raman Intensity +Dataset referenced as NXdata SIGNAL +DEBUG: Dataset referenced as NXdata SIGNAL +===== ATTRS (//entry/data/spectrum_data_y@units) +DEBUG: ===== ATTRS (//entry/data/spectrum_data_y@units) +value: counts +DEBUG: value: counts + +DEBUG: +For Axis #0, 1 axes have been identified: [] +DEBUG: For Axis #0, 1 axes have been identified: [] +``` + +Search for filed which are not found in the NeXus definiton by searching for the line: "DEBUG: NOT IN SCHEMA". Recheck the used NeXus definition to eliminate the problem. Be careful with upper and lower case notation and correct spelling. + +Keep in mind, that the output provides quite some information. This is useful for software development, but may be a bit too much for validation purposes. + +Similar features as the tables and messages provided from punx and cnxvalidate for pynxtools are planned to be implemented in the future ([https://github.com/FAIRmat-NFDI/pynxtools/pull/333]()). + +# 4\. Summary + +This tutorial showed: + +1. How to create a NeXus file with python. + +2. How to check if the NeXus file is valid. + +This provides the basics and fundamentals to create FAIR data, based on NeXus definitions. If your experimental setup provides enough meta data, you can extend the NeXus file creation script, to automaticalally include this information (e.g. measured spectra, sensor temperature, stage positon). + +### Pynxtools Parsers: + +For a specifically structured set of data, a parser can be written, which uses the meta data and a pre-structured meta data file, to create a NeXus file. Tough, the parser depends on: Experimental Technique and Setup and has therefore to be written invidiually. This is another functionallity of pynxtools with plugins for the techniques: + +electron microscopy (EM): [https://github.com/FAIRmat-NFDI/pynxtools-em]() + +x-ray photoelectron spectroscopy (XPS): [https://github.com/FAIRmat-NFDI/pynxtools-xps]() + +scanning tunneling spectroscopy/microscopy and atomic force microscopy (STS / STM /AFM) : [https://github.com/FAIRmat-NFDI/pynxtools-stm]() + +x-ray diffraction (XRD): [https://github.com/FAIRmat-NFDI/pynxtools-xrd]() + +ellipsometry (ellips): [https://github.com/FAIRmat-NFDI/pynxtools-ellips]() + +Raman spectroscopy (raman): [https://github.com/FAIRmat-NFDI/pynxtools-raman]() + +atom probe microscopy (APM): [https://github.com/FAIRmat-NFDI/pynxtools-apm]() + + + +### Feedback and contact: + +???? + + + diff --git a/docs/how-tos/nexus-validation-dev-notes.md b/docs/how-tos/nexus-validation-dev-notes.md new file mode 100644 index 000000000..8dd0575f6 --- /dev/null +++ b/docs/how-tos/nexus-validation-dev-notes.md @@ -0,0 +1,257 @@ +# NeXus Validation Dev. Notes + +# 1\. Overview of validation methods + +nexusformat.org listed two programs for the verification and validataion of NeXus files: +[https://manual.nexusformat.org/validation.htm]() + +1. nxvalidate + +2. punx + +## nxvalidate + +[https://github.com/nexusformat/cnxvalidate]() + +### Pro: + +1. FAIRmat and NIAC NeXus definiton can be used. + +2. Easy to install with Linux + +3. Points out some Errors with pynxtools-ellips created file - our fault? + +### Con: + +1. Is C/C++ based + +2. Not possible for Windows (cmake did not found the libxml2 library. Other libs were found after some work) + +3. Last update 2 years ago - Repo is dead? + +4. Unclear if every error is 100% a fault on our side - Florian was unsure/had some concerns about that. + +## punx + +[https://github.com/prjemian/punx]() & [https://punx.readthedocs.io/en/latest/contents.html]() + +### Pro: + +1. Nice looking output and easy to use + +2. Python code + +3. Works on Linux and Windows + +### Con: + +1. Last update 1 year ago. Last commit 4month ago. + +2. Still not finished. + +3. Some nexus def. parts are not validated yet (see status "TODO" in "punx validate" output) + +4. Can't use FAIRmat NeXus definitions. The command + +``` +punx install https://github.com/FAIRmat-NFDI/nexus_definitions/archive/refs/heads/fairmat +``` + +Does not allow me to install the .zip file. I as well modified the links in the python code, but there seem to be as well other check mechanisms. +Hardconding the download link, resulted in the download of some NeXus files, but not all (e.g. NXoptical\_spectroscopy was not present (new) but as well NXopt was not present (old). + +## pynxtools + +Tools + +1. read\_nexus + +2. verify\_nexus ([https://github.com/FAIRmat-NFDI/pynxtools/pull/333/files]()) + +The first one only useful to check if the things in the file are "IN THE SCHEMA". Does not report missing things. + +The second is in development. Has to be tested. + +# Summary: + +1. There are some tools + +2. None fulfills all requirements + +3. punx and cnxvalidate's development seemed to stopped? + +4. Need own validation function? + + + + + + + + + + + +# 2\. Examples from nxvalidate + +## Example error from nxvaldiate for pynxtools-ellips generated ellipsometry nexus file: + +``` +(.py39) ron@hlp135:~/FAIRmat/WorkshopNeXusValid02/nxvalidate/cnxvalidate/build$ ./nxvalidate -l /home/ron/FAIRmat/WorkshopNeXusValid02/nxvalidate/nexus_definitions/ SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { + H5T_STD_I8LE; + "FALSE" 0; + "TRUE" 1; + }" nxdlPath=/NXentry/NXinstrument/NXlens_opt/data_correction sev=error dataPath=/entry/instrument/focussing_probes/data_correction dataFile=SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXbeam sev=error dataPath=/entry/instrument dataFile=SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXdetector sev=error dataPath=/entry/instrument dataFile=SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { + H5T_STD_I8LE; + "FALSE" 0; + "TRUE" 1; + }" nxdlPath=/NXentry/NXsample/backside_roughness sev=error dataPath=/entry/sample/backside_roughness dataFile=SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXdata/measured_data sev=error dataPath=/entry/data_collection/measured_data dataFile=SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_STRING { + STRSIZE H5T_VARIABLE; + STRPAD H5T_STR_NULLTERM; + CSET H5T_CSET_UTF8; + CTYPE H5T_C_S1; + }" nxdlPath=/NXentry/NXidentifier/is_persistent sev=error dataPath=/entry/experiment_identifier/is_persistent dataFile=SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXdata sev=error dataPath=/entry dataFile=SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXprocess/depolarization sev=error dataPath=/entry/derived_parameters/depolarization dataFile=SiO2onSi.ellips.nxs +9 errors and 85 warnings found when validating SiO2onSi.ellips.nxs +``` + +### nxvalidate Errors: + +1. "Data type mismatch, expected NX\_BOOLEAN" --> "NeXus interprets NX\_BOOLEAN differently than h5py. NeXus uses an integer of 1 byte for NX\_BOOLEAN. This is an int8 or uint8." --> [https://github.com/nexusformat/cnxvalidate/issues/34]() + +2. Required group missing for "NXbeam" and "NXdetector". Probem with "exists: [min, 1, max, infty]"??? + +3. "Required units attribute missing" for entry/data\_collection/measured\_data --> ??? unclear. Units are assigned. + +4. "Required group missing" for /entry ---> ? + + + +### nxvalidate Warnings: + +I think warnings can be evoked by: (-t in front of the NeXus file): + +``` +~/FAIRmat/WorkshopNeXusValid02/nxvalidate/cnxvalidate/build$ ./nxvalidate -l /home/ron/FAIRmat/WorkshopNeXusValid02/nxvalidate/nexus_definitions/ -t SiO2onSi.ellips.nxs +``` + +Most of the warnings are not critical at all. Not sure if this is helpful at all: + +here are some examples of the "messages" of the warnings: + +1. "Optional group missing" + +2. "Optional field missing" + +3. "Optional attribute units missing" + +4. "Validating field" + +5. "Validating group" + +6. "Additional base class dataset name found" + +7. "Additional base class dataset address found" + +8. "Unknown dataset wavelength\_spectrum found" + +9. "Additional base class group notes of type NXnote found" + +10. "Additional base class group environment\_sample of type NXenvironment found" + + + + + + + + + + + + + +# 3\. Installation Notes + +## cnxvalidate installation on Ubuntu 22.04 + +These commands install nxvaldiate on a fresh Ubuntu 22.04 system (tested with Linux running from USB stick). + +``` +sudo apt-get update +sudo apt-get install git +sudo apt-get install build-essential +sudo add-apt-repository universe +sudo apt-get install libhdf5-serial-dev +sudo apt-get -y install pkg-config +sudo apt upgrade -y +sudo apt-get -y install cmake +sudo apt-get install libxml2-dev + +mkdir nexusvalidate +cd nexusvalidate +git clone https://github.com/nexusformat/cnxvalidate.git +cd cnxvalidate/ +mkdir build +cd build/ +cmake ../ +make +``` + +# cnxvalidate installation on windows: + +## -- CMAKE + +[https://cmake.org/download/]() + +\--> [cmake-3.30.2-windows-x86\_64.msi]() + +Install with .msi + +## -- HDF5 + +Download **hdf5-1.14.4-2-win-vs2022\_**[**cl.zip**]()** from **[https://www.hdfgroup.org/downloads/hdf5/]() + +unzip the .zip file + +put the file into the folder + +``` +C:\hdf5 +``` + +(can be named differently, but no spaces are allowed for this path) + +``` +set PATH=%PATH%;C:\your\path\here\ +``` + +## -- libiconv + +[https://github.com/vovythevov/libiconv-cmake]() + +``` +git clone +``` + +cd to downloaded directory + +``` +mkdir build +cd build +cmake .. +``` + +-- XML2 + +??? Unsolved... + + + From 730aff9b802baebfb622d537cd667f0de5b7f524 Mon Sep 17 00:00:00 2001 From: Ron Hildebrandt Date: Tue, 13 Aug 2024 14:33:35 +0200 Subject: [PATCH 02/33] Add the .md file in index.md --- docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/index.md b/docs/index.md index 4b436eedd..a1a25747c 100644 --- a/docs/index.md +++ b/docs/index.md @@ -41,7 +41,7 @@ How-to guides provide step-by-step instructions for a wide range of tasks. - [Implement a reader based on the MultiFormatReader](how-tos/use-multi-format-reader.md) - [Representing experimental geometries](how-tos/transformations.md) - [Using pynxtools test framework](how-tos/using-pynxtools-test-framework.md) - +- [NeXus file by python and validate NeXus files](how-tos/create-nexus-files-by-python-and-validate-them.md)

From 548eb9c793f8284b458e130a4881170d929d53bb Mon Sep 17 00:00:00 2001 From: Ron Hildebrandt Date: Tue, 13 Aug 2024 14:53:10 +0200 Subject: [PATCH 03/33] Add .nxs and .py files for tutorial - after ruff --- .../NXopt_minimal_example.nxs | Bin 0 -> 8224 bytes .../NXopt_minimal_example_NIAC_NeXus_Def.nxs | Bin 0 -> 26168 bytes docs/how-tos/python-and-nexus-files/Raman.nxs | Bin 0 -> 77344 bytes .../SiO2onSi.ellips.nxs | Bin 0 -> 197840 bytes .../h5py_nexus_file_creation.py | 33 +++++ ...h5py_nexus_file_creation_NIAC_NeXus_Def.py | 121 ++++++++++++++++++ 6 files changed, 154 insertions(+) create mode 100644 docs/how-tos/python-and-nexus-files/NXopt_minimal_example.nxs create mode 100644 docs/how-tos/python-and-nexus-files/NXopt_minimal_example_NIAC_NeXus_Def.nxs create mode 100644 docs/how-tos/python-and-nexus-files/Raman.nxs create mode 100644 docs/how-tos/python-and-nexus-files/SiO2onSi.ellips.nxs create mode 100644 docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation.py create mode 100644 docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation_NIAC_NeXus_Def.py diff --git a/docs/how-tos/python-and-nexus-files/NXopt_minimal_example.nxs b/docs/how-tos/python-and-nexus-files/NXopt_minimal_example.nxs new file mode 100644 index 0000000000000000000000000000000000000000..4883370f2dee6945810acca20f7167912881919b GIT binary patch literal 8224 zcmeHM-A)rh6rQCZm7uAKF@n+TC0@8ow+O{6h=3&_g`g(AtJCe2ZnE9o>`bw|fWbR2 zeFPrG$M8*be$EMWlg5NXf;!uzXMVpu^UayF*>Ar#cJ>}DEH4msmCIz7RCE#le!=Cs zrUmQR{|O2X*mJNKGp67W^&{jdv_As;;V)E8^Au`{waPdOJ*RRgKN5Dr~Rc2 z6ytXb)^QGb4VTqry(o!9lqRNyjWU);0~ywBah5T1rOufcX6>pOhw)yFulLQv9hHGG zZ@Q)N@eQc=3x1$K)*1%zxmDzAk(dnQko)AZWVzXDhcV?Gd0TQEoiS9tGJ9lp0{2U& z5!f8nHYwkb7Y4D9z&B*yy*)h8zCc19^Gn{N*)kaw)9e$tZ?lzVA_{5T<{1k`p7Jow zWa5QzBJyFbuV6J;^HyJbLEye}8#M2RY0kRtO5`!mO;VSqJ@J|5%spWV%c+okr!40( z{#|-XqnLJL_EI9v0^S#}eIYXb#`jMm(I0laFdg`N+xy1@Dqc1BcJ}>*jfT8^d78N2 ziPMfB)T`BAt=_BmXeX%AV0|N8tFPBtSgQxCtX5lN8?;*8-1Ng#K1ia@P&zb*qSx&u zqi*bt1~DOcY#_Z8k<)|^BCc03PL1~b9{9fqw%LjjF7lx|;n1W__V8-WmMsI80n318 zz%pPNunbrRECZGS%YbFTGB6zj4w*N)1ibj8QiM7{NhpP4Z*Wl;J{ z4snfVsMMO;BH7Xfbswddz{~zbeDp)>380fGjo}h!R^xm;KG3+6{6rkB9{`Tg6riGK z6JqqTlJpF&qM(NDU{}C?13eh;(|=|<&Yv5LFs)^n@Q)iuDkGW;Amrxas^S{z#^Z{R z?{}I}^L>C!{JwRkowv^2Is?V;1DJmtVM>d-b}?T~t7~h06BdD*=ajD6 V>9@du*7ISXl*X@hY^W=3`#04(;zs}g literal 0 HcmV?d00001 diff --git a/docs/how-tos/python-and-nexus-files/NXopt_minimal_example_NIAC_NeXus_Def.nxs b/docs/how-tos/python-and-nexus-files/NXopt_minimal_example_NIAC_NeXus_Def.nxs new file mode 100644 index 0000000000000000000000000000000000000000..5d55304c263a1c59dc3416a458c781ddd7969d1e GIT binary patch literal 26168 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 Gi2nnEHE8Dm literal 0 HcmV?d00001 diff --git a/docs/how-tos/python-and-nexus-files/Raman.nxs b/docs/how-tos/python-and-nexus-files/Raman.nxs new file mode 100644 index 0000000000000000000000000000000000000000..dc52545af8711bbdd00b7e46013ad7468cf88cb6 GIT binary patch literal 77344 zcmeFZc|4VG*YJHxMI#M{L~SA@^PFTEGNfcC4d%@AkRjT8pF30LStXJN4W^nGyYAohd9UaGJooc{-p_kK&$a*P>sZIUj7X9WM||5X~$->hl;Yr@vdS-Y&M@_Fm4+aw}L^en-wsXm>F%?VZj>AEP}%NM?OP(oO%WTQW+Q~l9p1|n%=d`0o?>e6W&bOeKyCc_%#^co3v_lw(aiY%99#$- zr>C=bfUS@3?_U3M1!5kvzLA@Uk2gh5CWM)uk2X4ab- zC&x^?)?Pl|K8~*bK3?{LKK{gv9%lT_Lf_m>UPfly%=~BMM%Dp7LH>@;i<#}rj00`Q z*&k&y?a$2L$lAf#-i!F_bSA{C_j`4u|Dki~Kh4@I%FB6s%`}E(moUrE=*`>5%gx)~ zlUT}>|8qafnDQBY;Cefw=6_A`_h&gXe`a1r)_-4DE@u8rJ7&)QZuXuOqaZH_Xa5Zp zC3(d^J0CZ*+>BmyEL4?cY_%+TnDQBYdIfm~x;eVqdwV;3{>qy1j~V;Z*4Fu5V+FI` z%sj)yLPEqP!wBZ~`&S%9{o8x_dO9=RiWyT0LYrBipGg5GwRI?tKEclZ6fs|a9|wB} z&rpi78O6t+V!YX09Lvm<`-dKbelO%IX8oD|w>skt&_Sdqit8yd3i7fll&#KgzF}@I ze+sTnDg*V!se}G$HePQ5#EJG=1_t^DY><|AaSL<}a*)D)q;)k7OfhIk8tLj7NP9bn1O?bSIq!Az zcKa0?1Ed{1eH^6aR2=1%<&^9dB$(~YtY0urR8C4pS<2TZAW#-pH&|9qQBlI>uL{ia z>zSPKW1pZv-=IJ#?-1q=CCSXEF!@J+%91iF6j}KV^0FJ`RiqS@6qRKZ|EN*wf3dtY zv;2&H_Ke|_Zt z;IDXYWgqN}JA_N1>z@n-X8z3nBrEOsyQU&jJ`?Bv*r}PT+g@B${3tQ=XXfMR6XYF; zx>RP$XU6%bo`H8D?n-Wfp~RnPN8r=&pUA#=LLx_J$|8<`KyFB!-=kA&3 zd1iCOpL@&Me?6}!GapE2&Z#pO02JmpX2xYl`K!cCQ-7l|Ger^lpO<4kCJ-`f{^#ZX z*7*Mq6Muc*w*JpN&M?RLzk6@_`}oWLr?FqpEWd7;fA_#t7YlQNSn%HZ*9VyA?{{(`0l)d{{`A-V zc@REE|9Y1B&+cD;KW{PT@#|S~Mqe?^3%MD4`Ns{w?{5CnfBx7nD|2oHp+9q>^e<}8 z*nj@ah0(t#_g5Td{EGtrhl&3`v@27l>SnGKekcE{cJ=#SfoWI2?iyz7idXWFKm1qi z>R;Xa6V-o4@5-FSzbfb2@b_{auX0{OCKZfd$ekWR9*&;nnVCg}4VTu)Xl7GE&N=hr z2r{uwqcSsx3Yvu*LNpIk!SqL{|d^xK!rBUFgedswA;lnO;tLm{I`SyNTztXwM0 zJ2p6>d5j9WnfJ>^kx!ShdS~TP;gOoJxK=(DgodR0N0ASTWshYYr$XE3gH~DvRM_~A zlXDFD)orXX>jV{6rw|9U3aM~pqqE`|GLTq2l68^_h5GFITBoR>qONK_hLqS+%$9u` z^ScADYMsIMSNMC5Aw|1u1+t5%kZhpaqIH%ECL0AJ$B;gHDw5gfs4(K5)va}&3b#&e zh#fELw^0ZMj^Y5 z3iTfbyS2)x&=>TbK8AEYX&|0`kqUZaT`gLdP*2;61ICbRZr|p~uAqYO2-h{ON-FG6 zuiQO`l(RhYGwU+yOQs=T>k1XBE7xd_Aro)5_hwa5p)Tb50j;Z4Fw=h{FoxWC)cIQ0 zH7dj&U16ubfes;S^DayfnzdAz zm7^6uiqsjOw`CaYl z52&E^L42o1D-~9JsO}v?njedEPJc*+F^9uLn;zjjG~Rj+AvKyp-lers;fuST-==md za93^p@CJG4&YeBhel>3fk(Q}Z zPN`i~2)1Rs*!YwR)16m#3?d(QY-&sCrUF0LTf>ddsBrbk+xpkYx~IHqDLrU^4(VlT z&v9Jhs-mxv9Kq5@lV9NcW^LzG>!kv1SuHt$Y<04kN_t6!eH(OLH}v6p8t?4tM}CgH zWRUaqjP7%VZ`FV13R5tg5fkuL5WLzCtFyZ|+VQM7{I1=&HP- z!n*O_KWCjAV(KME&2k-X%AM>vPeq@)>euTNy|6 zCtTljX;<0LINuNNYr2t~KZd!ZzMvme@OjBhQ^9uyt?nuEviK^VgJ03^On>v&)yNzkCRLOTBmGW9~+7>$Jn zS4@gGte-^#t%91U4y0@z+aoF~4H)`S{1UTiu<@AM-p5Fjg^DEy=Fs5LRjW_pb7^py zt87y{ayrK7U?dw2j-L^_C&o^LOY9WRHl#4k-aKL+4Tuf*vqb09Ky^X*(}&0>F?Rg> z7to+r*JtMJA#m(!qI?3?2~q=Py8 z;UF#=Sk$UNSj|m?lRB4K?;>r2T$BTOXb|=q+*k3^;Iq%3qj!)mRZlkiub_ccsn8F8 zJ{<3(4#`I3)bX3U{8rMyPvBMDN`4wxbxB^ig)Go4>Gu(!fw83vC*LX>IPqAjH6Wic z!kxWW<9OumCh}5fFgIcQ*y#9S!C^(Z75Zc~OtG%}Ig=cRs%!Tf83iZOOu3g;M^Mdp9&QL|B|!9=H; z{%jQ--(;OxG4e?@b&s_w4eS(xTxV^df!T1X-+5$tZ&#?L8V!O-D;lwp1}FCZh(3!{ zoa#<6SEqse?Y`6>$V@Ft)|pK-aQqo{*i?fC8Lq;)-;i=kM~On_H;(MSFog7YHkF-bitDkvic~kF!K_2&UW3RF@r{-#=ICc?%QVz1a9!5L ztQ|ng>{z=f$&v=Q?~Hv=v7$k3|HzX*q=@FS>+#k!`0i(!r?dn8ZhI@O7unfKb&Rv2 z!LZUc9fh4ZpT}Cl&yfZcAJ&*%G|1Js{8Dx|`qu)bnr>tW&+{V(_h5fcCHtgp(J$W@ znRX$as+-r7b~I49&o@`n9@~jJ_Phhh!L_N9>VWz%UY@Yd5!cUlu46kgqC`+7(h2o` zE?}XUGYz8mzkKl!dG^b}^6LS1R#dpKu8$c+Z)b}X#F zkF**)oE+?q>mzBmo8p1<(9{&ai+nh1$3%c94aBqKs|CDhFy=KB-H7C8_!#?nW1M@s zig%?C4X*ordftGPH26~J?Mnl8dtrB8KN@VW3X!TqvY1Z2_wYyk)g)cw3cxt%X&PLE zJagMn*)5O;ize+pEe%3Dam=f{j-;Ia61X>*2923~&LQ6>+}5?AW1O~N zpZtNG8h0)@L()K?dDO_1fqIBYn*NHs?!EKm$%E*}`NrF~N6~<7sn6%nNHgoA{DNro z^A`*Cx5m&wX+!+mN#wo93h8;V$g;Vr25~e{cbItg0m)~!fO_;0`WeGeNH-q)i922Y z4yoO`-YF-622Y2ZS+x^s(6c$aU=(Q*6bYG0Xtx6iJsQb02+z13I)qf=TgjD{LIc|u z*(DoOY49aP&fqojhw0?Yq%;}?vb2Y)rqjT3yqohC^6bT*r{Xhc;C6ZIMx{&|k3v=m7n{xgp*yOf)N+I&)W29OTcpb>4fppxe&tk_=&jGyjM@Z*fwFUe0aGzw0NfXIOKY7~6_W&6* zw)c3*ar6((<)T6bH2CJ)bM79}!?{j6=mZT6mFmk^71AI}Z%pA1(p*x$((fe33$p^H zm8WpOFp{inK&}yJSMWZK?bl|O^PHir3GGZO-~JqO zOVp!g^9s~oIYspcQutEbiPM$nFOvd`OfJ))IZ8YveS*K^_u4R{UwbhcIDe)}xo z>=aV7lfjXHl?MB$_X7;Bp}(aFJ^6st2~Jl%dYuLx(n3cz-@tQ$=4I&4RL^Gnrwv_t73 z)mKP^;L4Qv1}vA7_eSv+#@Xdrn_eIdIxnZi+(tdk9vqZy#D4rV)Vh(zx~CEtcW@tm zC-y?Ji3WXL?b1(>*6WiFQ19YA%$!@q?_s<$vf^(;x~_6|+kYR=F?ER*BF$*8YVE`W zj_>(du-g z-93A@_0eEHDVH#X%ycikn)eFNS4Pr<`u(^+1Uy;#0m)7zsvjAkfxEq(i_UBGTM5nN zF=SGc`jyNX4(xm|4-R!i zC7Xy=l9i+&W}EZ>bR&2BViyu)<=u&3lW>PwO%rUQAk za#z8D_cYkC@!U1B54g|GTGRdzIo5DwB>AN2=U;n&J5c>!U)srfD$BO)INLPUwER z;qn#FeTK13oZqnC74h~e9*6HVD7lyMdchAG%zp0u_7d`uwdLgQpLpIrv*YVr zf)00WJ&01|*8_)U?_ipXk@IiyjR`vP-TI@sKLxZpdov(bFPso8XR zAoqIS_BnLWm>b3R8A&PDoPB&Q9m1*?5L?*juuZvt`U5hB(K&I1oemZ)&0{+A=nyyh zd|(Wz67b_$=6pI>x2U#hETF?Dk>ERTknE-{*HaeKA@#LF>4rsgz~gekDj}?)Onfy^E+E=2f9XW$T9RH<8`_hOF+YbT}}%yK?CU9KUy@>ouf| z@r4ymYIM+%>S7BkhPLtrJfbsA~v%)9S|79C1B%lNly;u>bR$dQ}6|W8jc& zAJSlKcsgzi9efMoK0~gF61dISN{1_V)OSm6!|}4&eteAFS&|qNX+#J6 zn*02s+v)K7-h$Ex$bQ(N6=IC?^3!b;6SRBEC&wn_qbc)`ex`J2Y`RF}Goyq296^qH z-#Q8X_b}B+HNPO0BvWpH|FCBK8M$XZ8c~!6* z{k28G-f#~crYu;We?+d;?cH(I7S~Cxx?RT(%kk$LjUg|1#WiNw)8XlM4~!JuS1B4yR_jd2}If7I=2kTkU+VcsmR(?;UTd>M4 zWKKFY^TA#pIwYM6ljHD3eb(Phzl{9p`)$(Jj}9NB zHe0g$qhH}cvlO{!WAm~d0d#29Tj9qNh;erN-sU2tjQJ%o(;zzV-sB{wkfI4t<$N0C%@-xuj&7}pZpW!1y!aL;Ew zIeA% z^E$(#G>mUg%jH^;%X5~8h0rnnn(eElkaRF#&^@OKDPNkXB@82 zkYEk#Av#>2&-i=}nRmTQ#ylSFutVMT8?uL%ajY-_?MVD>+tx%ntZLR{pF}cPGSqUD z=-_y4+-q|(#>0CWd1J`)lSvOUQs}_J|MG`=DjhyQ5|Mn3wD}NXlbA;Teeb1|PRHk_ zFJ;e>nTNEVMP*=|x)nJ`I+G4#)7K=QAgv{*%@1UueUD3oi)LdSE!mU*0C~nEwP9Zl zu7hyn;OfI@_g?Sj-9bi{^Gf(0p+iWFq9N~5I=r_rbFW1XiTlU6=3@MxOgYJU4DG?> zYWT;x5o5=|} z98|7|_=4n=DM~(Gi2HC=a)H4~I$VC_aq&I!wz)-p&MCBuufmTsPviQ|XYCzAE;-vi znsSB?vQKk9s}^CroNLG0hn%Wku_*2=#?@cvo^y1lkxv$QigXLp5T>6;J2B}KUv~lZ zAQC0@2pJhGAQx7Q_BdRjAXI{Jzgtu3E^=*Ci;{mS+P&U(CB8B`h}5+z)FIuQH_N$~ z(?P+lSZe7-jN>f4>#id8GwH$(mvH~x-X<`=f(`+5M7Yb5cP{T+WK)Uz+Vl<9S(kBL zT0VU)LiXj#jhS4*^GT{%?-!)}JNl#JRdhJ%n_X{k75DqM#TVZr=eXT2$hn5~*c*~H zuj6=6)I|&-f9Wsf1|3*FpEg&mM*A#F-1HKeG3_cETZ8M`uEZf*O9!=cbEZ0xW=rpM zQ*Yur&Wo%St3!MGp-|Y0ET_MS3aQ6^DJ#O2(tz%UTAFFg!Ue5A;xwW&qFIye-J1l*!x{w3EZjZf$;m@myd!Z4Bux z({7*9ivH7fTuS{R9p(o5PWL18R77sYKf-Z*d77xuhW_v(*y?{aIN;QUo~P2NRXMif{2chW)FY$BMiiw^s$B$eur#-%nB zZclOE%Hd^8y77FrJ;|#I`SVkznEf-1zcQ(P>^*27)6^rSNcT4uX4cPf9*-pE6EEm6 zxoxuMG?KBSJaBvOAH94+ZomN_dx>$MjS;WgM~B5jEb4EOYK_#R=ao0+(qUqoo(|Q!F*BMpcSJSH;UM}Zz6YHJ5k{}hWgztZ_fFa4q_rj z?=K_U->goweTVz`!~NoH;}{POn(K>^T!XB;E#K3jm#Q}T9jTT~T$j0@G@eMXRb0_%yiDLQx>`6O@nL&nFQK#{oaD&n*`jrmnF51{VKz?fu8w~!2;|xjkTJ;_M z_fp1(TS)%pWU$u{I>gU*`m+2d?u!Ri!mlIeNPPV2NRY7D{&@HT77_}tDNdIoYfjzR zXETcgmr98V7FH56EE9Z+kOt9xL&md7hl$!1jg50citjj zt=*xX$wtD1V6`%Jb`tbPScM0Wo5yQ1;^&d@aD~HMh501(wS5ZeMjj{+=%+6r;e_BT zlXVM8Fso3heuzx=3KS1rgz3r?X_Unz98J3Ytr6*$@W9E3gM{{y>U-RrBwTkmE?bS1 z+2Ee(yo3aag0<5Nmy&Q%s%h6HWUZlX_0DA^*bBC-VqH!G?W20+S)@W_)H4$<61;Ni zRKFnQyZSToxp6#2)8l$PBv>7r+VT!rx#snWOkNVs*cX3QUqJ#z#@%!PDUh_{OgtY6 z#ix#clV3@~Eh7QrZlptWd;y)GgtUOM;2?XN6Bl*%h6E$3#iUN;`LPvlyC<+88C)OZ7-~K8ywcAScUc^#=C0>Ua*a%f zvYk8$w#z>{uqlurUG^rv7ix>jvFpgU zZ-faaEws0ymrE9Clc1Z#5GqG*l_cbL=#bF4(+7ynBz)GoyzMly&}d+XkuJ_7@{7|X zvdHDN_fb6(zV_bUr>&2Aj7&H%j5K__J}Sk4ge}J9hg7zZ@c5lT@(bjIoHIGd0_-M4YyLQ`C~SOf2i$ne^YPBvyFJSt(|!D5c~U4M1!8RXh;rW)HVP`^7K z%1j|Id5a0=TB5(6apu&q!g_46KZcQ4RvjEku_l3Ts(~ zmsqDu?j%8*?Miq%vP zTS6~PAUpM!GLATt(47{%Lu)Sy9;`Pdhmg@(?}=m=^q2nWM@p_F1X>KA=t1gW0Aje2 zkl$>lCE<>7r+tv)5pr3&-m?%7wA+w`)2lr(j!>)oZX?Gvt2cOg;XJM#nYG-T1Xdf{ zrmM);rC$^6eMqoeA8E$!OTrGjF76WK_|`>T7Jk^?9?`?!ko9SzHYfZ^Sj7F2cS``q z%j<<5<4C=jjcHkdIG+4GqfJ31v^;ymK7j03=dC*wOhTd+B}{G~3HQZWWV?_@FI|0o zAcTZzN1G#SLrECE_sFOj>1r*@5*UVh!V5CKa2&t1hr>;z&4Aew*Zm}{suikP96>^` z*7~Y05~}n^s-}>UM=sgs(lD+sb(*b1 zNBhtkJw1$EFR^V)3W<8XA2p)PAfZDf=g@QHtiqIa2M?k@J$1Mv5ry-=yU_U&^0QwO z5gLtg{L%2?)iK!a$SQ@~NN#b}`<}6AH>=k>E{ntZcrL6$S|}b(usek7ZLva-EuMr5 zNuP@skk{9p(=ksVVOL;z`!q7PFVFFKBJNAM*6;O_&=2>2ig=4WwA^Q2Ml$-pb4{9B z3Xa434SyfD2c%D}jD=cHN_GNtF* zb)QW1GoC9OxwFvTat~a)j@}8K5&n*R zZOU@=#1RtK4OA@Ma+Cx@MmuI4=^a;ez)V-d$mAeDd47cL+nDNP{wE>h~u@?PH)B-jP@>+=+%KYxucy@5Q~ zOz=3JB*DMIX8-(CsDCzUZz*!=>_}~^)41PXF+ceo`BP-}+`==s4;aQfZz&={v-(B- zIP#a?v(921Qdt$Deh%xme|_=_dG$u2Y}|Pg=G~Kzles{`d*Q^F9Y`p9R#Spx zf!PZzFJYY5iL&^HRAza3te^tp)qJ)={Ynz*RF+A-L%LoZ4#>Dn!s)PtD{5CTPEE6a zdx?B0w|i4e73yzI+ySYps9$?}O*=Bv%IrtjHQe71zf%*uj`1bKDWnmZZcu*F>jv84 zmV0B%s_`7bdSmTXWH)=*9=jUc?;ANX=GJ0-R*$@U9_hq#<%j7_+@B)u%6>u4(LLjs zSBLA}xF>ycJ&r%4w|)d^yHf2#N(1)y)^4@RE%f(LTf^tbS=CCxjN2q!GwRA)*NEq^ z^?G+&k&`zQ-UZ*m@p4|^5@^DGTO)2mJyJGp+a9;OxQ_DAs2ul5*hWz*s6bx7BkX>UNzk%k=i%wV zxNQQ$H;{#RUF-M+?J0S++PqHO&+!Y;5@hL9-E9_Kc+R=bF#n32XLZEp_*0DYn<8xW zx=FavqwF|_{MvNGIqezlOS3p!RC_QE#z?rlKpNbp>^=CLgg3@79VK3nASC8x_YgU0 z*syb7FYfzd6BYt5F%Fo#Gpa{^x?Q2`)`xK^R!^Pd6^@s+T&@DS+xF?&o&6Y>1G-nR z43O}y?ev1v$kjBBZ(CpEy1XtK`GC~S8R^O%Btc{S!0ktGZV2P| z#EmGKVLU&j{`BrZa&!K)*gt~jSKTLSLZhhXrZCDKWSZnNR_`%9KNxVoUiKE_c=^i4 zDrBJR=qcNGB;>ls9Go+b>mc&o;T-Zxt+a;8d(_t%Nxn}=HG|m`M?au_-OawQ^%4CD z-SZ7HYL#qQ;sgny?-jNyOyWLra!TkaQgKPj+U&BqrI+qp27YV~~y{$a#8B)rrMupD80J+AjNzqvh zcsyUKtQonGE!QJ}l>z;)nuJ%(W`O0Qx@Xl$2l8N=(;Nn{>n=B#KbHae7T(`Wkm8%8 zN-fwJkUJLa@D*7eEVAr4I|J;u=GE!WW58MOe&11KLeGRi>U;()k*sf0Ucdk`MfboS zWUs&j0dgS&R0rSR5?jOo5w|hV7G&AIQ%eIEGvMKCmCGwQ7?2YjZc~GtsLuT6#L0kn zgFd@U$>&Vcy71qP$Y`-VGS zrf@OfB#VEDGB*QO%(h(IgOnWnR6yrpKsUFuk{B-o)}-a$X+|y_Pumf&f&sB}9EW)M z7;qt}Z(lXiW3S{KrTPK_X)eHkz(FagX{463RYl$^1{6sf zs%>7)fOER@Ylo5BHbrYEQy7rUU3W`Skb&=JzqD_9n40vOnP{l36fFKrW`RmBs=_BXt*D}Bs+J)Fe8E|v&-R$$o2Cv9Pree4b zH@{OqA#?2YKOPllfM1`nlh!)ak2X*HAoAP$Gg=7}IKI(2rE=>T@O|ep{!Zio`6Vhs z66Zll9v70re&&6!zJs*WSY7KSjqO{^U%O0(0Zm&k#$7?WCX2q^Ez5w@mv$Jl$}xZ@ zVpVnq`89ay5+ivAa2Fl&`G~wH+Il}*fdPWikHj`9GJv-+m3)OfW45X%Mu`DkwJwTM z%D6sZ`{Ub?yhWOQAu0@5mHa|!l`5{^h-6$n^4Gb~bpwu{f3@UdH3l4vy0rfy^2|oA zd)6Bn;Mpe6`vduK3#Zcwbp~`4oGsSh#DHKu&d+1W%KP$=ron(LIj(3GV8GIWoA-N= zQX%V?keUn_88J5((?UB3wajLuZqSPke{BXlpEBa+)nNe7j{W90knfMUq&RFwd#K@T zX47RrRQ*1-3rMx)XTemD0V$gghkQcDSm~D>)n~x!EtmQ=4H#f0@SJxLDf94_Vf+>b zoOl=#A#2Eh%jH8CI*|VC3wpx0GNAG7r}={07;r0S(EM>l7<|wk@U%7(MjD=N&S3LMbKPi~+SpJIYke zasC<`TAw31Dm%wW3-rrHiu1)S8PKP*U8Du6{eFc;fE5Ea4VPH)S~K8jJ*&?RBu^yQ zL5CgakGumpY&JOFbpH$IktyRhYD{)Az(lgKbqaaqIkor5E(TORoAVBKGhpX6{ci)v z!o?fe5A9+6KEKM?qW=?j0ohY%|o&mn4%CZf}kc;OO-5eOOR-#p9 zu_NR6_v9Cmp2nNitewzq-A-)yj#T_yrc&U{0JgS6ih6s|4u!a7N0CQO_ei9;pxzyw zgq2(waM4_hzZ+S3_2^Qn8w1R}p0SCzqo1VT|JsC%JR0`a+k*jf4!(Y|%##7@jW}Dc zAg2!vSMT;>fcvj62)!8)R@9k&8YvMwN^bSRaT!#5y+`6}GnSdYsMmC=x|$yYw!}rQ z=|!%eT+e>cp8>^?Ga??qfJdJ7%`M2x&~wEBfee`SRXdS4hyjatANIU~yp~sN;1JA! zdG%BgwtWovVZ%zCN2a%FcNvFZ{aS^xNn~l_tLVd_43Jhg-mMYFfbI9gWc!iatroLm z!_hzVUp|)H&w#{5DyJSHH|c2v?TcUlzILO*82|ACSc_!9Mp9z)AaYWVcWyj`0mfr>w`2}7 zz%W39@fi8mOGh&-iUBG;i@vXlW`ICW!R2~n$?m7Vt}$qDvs%R##o~IzkT1%RvgBa8 zWgG*H_RKT*id<6M{Wb3p>eqkI1)X^GC!W0BLr8_(+=Yn=n9kaIRW1?zV($69PmmPL zrX~B67=YXBHA*u2agC7EEo58go(1kHXdfv*fjy&Gli8OS5Hn2aN0ZClP zBLs8ME|j^K-$pKMQ7dvkjPavui8{v-jC;3EKDdZHn)1oc`Y7(ldq>B=A(Q#@4jj+L z_1BxVNcR{6xJ=jN3?m;q53WhdL%*>`Pf%^%Jk5U@<78hcBHOCDvB2#7R?pmG1c+H)r{|%YnBX}$S6#CNzGuV6@ z_oLm~SBH=*>96Dx&)|4gDx8%o!g-1-Ql23F&%aI&Kg)n89G2{qb9g=&3<_&NW-I89 zxSnUg$I06^i!R{4CGq)A8S;2Xm!f4c13pZ89G^xKaAMnSOTAj+`kdr%-J5F(qi=J} z>~(61J>x!2ueE9kqN~Z)Q?r(k(al`nuTe`pOLpygx3QLJf2V%?t75-yXu92phTRWcTx<~`{b3Qr0_>#mpKFE z<$&;wopWf7B0dM2UUOWg0z~K2`fsz;fDqg4VEI8E2>l11S9}2o_x>J{H=00bdDI8k zY6Ee9*X!dQIzYrC_vm z^R@w@!Zz&7wH=5(`T7qx8v`+QWam@D1PHwkC2iM`oyYWU1e*fUdsH|})(nV4SyuL= z$UM#++gsp!pR*bE{FXo*+1xeSflQv~=bB;##LYbSc0+3*R#{ZZ%-sRR zD?!_cTBM})_N!qwKGV5hUyMS09{9uXWZXkps4if@798 zFFKGqex@bKwm_XTaYk9h4hYMI_-oai~DW)IYz&Sh@d_CUyaRSQib ziHbSxCJsR59i>JTJD~opR8}u=1VTeap~}S(sDT%34I7Y|aStC;oPb!Uvfnxa8K~~l z)`jG)$`#XKQ=ltQCmw&|e~4+G;Zy)O{s3xr)^ReJ^Up47wWS11q5Tcy0j z4{F^`X7z3I1L_p17w72*aC&5o)M4aL0hN|UKOi`oL)|Aa-~agdtTp}sZV;?!Ko);`CZw+xfvjbrx;QR}RK` z_~krz3Wi$cqxrn4$nm5BqZ*{TnI~-&^Rt^}OIPdzs!Om^x9&c4*jr(<0{21f37MZF z$M*q|P~Et>1=Gq_5ADBV`m7&6{-0g|j~PXY7RYS2&^&qw5H8;n&zE3&cYS}wvk;(4 z4AHL53kB+BYsVW($ob0?t~rJRNQ8Z^NDc);oA<)`8<^f|RG2r6lsYqz$P)%s)+OFy z_~R++qaW%HeqjJfgBH5SkSjDR*WL@mano#BKZgMkdCKCMa5zv;FHbEq2?yA9mzRtT z2ZHm~nDM!As6F?7(aKJgQ#J*^oV_35j+9iP?0%@-x=z}0&wd~pFH%<>Lb+ho>W<6% zfodo|FRmZu2M+3NSP}uX8rNH1t49D~sC6dEJp!n^*;*8`P%aav*HIq zF-P`Q;cM&%07isU+AbUbs_}*~{ijI7scpMishDqVn!bVxl(GnPAxwYS^Yq(hq@$9Z z)GlO_`qDlAROnq+JboyK3U&i5)0dB7+F4Gf?-Ksriz75`KK{OoV#XmXi@$FovZeYg z@b^7bW0U(Ki)cX1^6k%AgTH(DRKKoD6@ORaAC=d!9p8UEKd$w`8Qs?i#MF+~;N6u%hG0hvVUFwbRi5z`odWnH77fP)>Ob4RLkM(jXmLor( zs<@5cb2`e0m*e-dR7)QE1^ix;$|-pD6g%ECb`YY+R^h$(!t3>E3P`EyjOZ;S)SkSP z6KaQP+2yTn!6Z-;(l=Pgtr-r0+iMg4eT(Ir(gjp@~zqM_{!bf=XATZXazx`C&B#6ig4$#br9@&$~-D0kYmDZ zRLz4x&@Oc8TOp6C4RClJgx+g&*FB~qFLV@UXCDMuXtu+q7|W|()Z=SFQucXwcAr29#9 zbu{#nTkke0L}UDS=yKZt9&Y> zaUV`lo^u~LbZ{d3CFb+#zFYSR(+YFMt}Tqg^_f0qAQS_&i#RMhlw*L(-e_pQEe43S zCnJX)VgRJ|KKO-TIlEV}6klDBXyo)08-U#lVmpQ`WL9t+exZ-ZN%VgYuTeAEiVbl2mOi%GxA zag_?4M7iaw@uaJ|L)pBXf_iuLwsDQ%3@m6|pw?sYbuP6-Kpo2Fa4<&pWfq-xMtOsJ z++-N0C+o^KCL?!TSVcd12;fKWqgz)GLB6wQD_bkdbxtqSAHeeKr;bHU9|B5vg>OAa z{4cwX{~;U?RHK@4V@%O zceqE*vkJ@IwLF&7f_z9A-g*@eKyqrm`;7U!7SnkaCqRC2_rgtU60rV-J_nTqs4ZJC zD{33c?~>l99Z6Y6ks{FhK2l>k;_+qP`ICf`U(-+`V#YR zm*m+`C7@k@aSK|I2(?S&Xwj5J$X`FwpQV@xy<=Z9PHjoVc%++l(KZpND~q022POg> zunxHsi|Lx@ds>fSy|sMl9T%~D%O>9LJ4nqZLp?p%j`7X;FFqhIMTb6TOTzZpRG#rC z0cGI6PN!@Vi*7A8Y&;np*$+{uu9DfH?b!DOJ+ zC`|5?NQTnKn{0*@QT{<`a0g(y#m{q_wxImUwn!C=WS|z@k3MCa3^F=_SC_db!}v{E z9%>+_(+zV+B9pY%*s z4dhd=-iAi(XBYLd_#>>pt>a3+q&VljQ$ahv7&E8}E+{)@pUorn(wFlSS6oAk; z?I6w+;JhoR+s=pS^b>({A}P?yBixcCor2?SHXT*P^p<#5eVr6AZa?*+z$gXAhm{7u zSz~z?OFm1-6rgCl3oZ7-^6??F=Z2&J^dDkCsogV>yST)7mevpOQeI)S(o7|6Q=wMEefMI4RN&N8=(7?4^KsQboiIH$%Fy;nMSrRci3-K^=hnk_NX-8v zJUTBi6?*9s9$T_gff}2;BCa46lE2hX-8ql_eH~D%ccGOO9WV{RyTWA{CU3}Z4K&C;f7yYq)0=8>5`$s|+*83c9RdqZK&%+9Rug+n) z8_SO^s!RjoT5z0FEtY%DQMBhS<~#2Ce6Stm{aT^tpJTZF5vEg2rLTapgR@omZUl}Mcj-X}y*K5P?NFP#oD2Y1!>sis5e^eP1w z9h6JNJY8j!4#eKli)z*=pD3xZa=>z{@_zVxB3YVz5`vNQb(fu{rsKYKXSgOV9gNu? zOgu?X2Vc8Qa_^3%11G0L!JMLWXk{7IU3n49&q@@KxqrRJp?%~Mrfpq9qF0hV&hYW6YKKcdQD-k(!jx_^%znBYLU6cW^t-G<2Cj*~vRZg`F zW`OSid8JnZ<@AD|BZ?UyGv|Exlm_O9jY<$(kl({O=b2+UmH84&_GG~L6~jqf&T(25{c5EfkN!`U3|WC6hCtcBGRcdpHA<9es-B3p0S?Qtz)=jP2Zy z^H92y0n`=!fPY61{-iC6Hc@0mkP<|l6ro}!Jdegp%-t@=>GzK|cHA6>iJ3pj0;C z$+lHl&^vXtSyn6yD6R3|m&>7i%FFqaS{B%Kv$1t;&H`fOMQ_!1%s0=Q$k~DN{pp&a zj#$ns?~avM79@Y&9HY1|3&vYz=u2sso*20FHZBX`!6Ko%>DWH|r#pqmu>A8YMUiK) z|2X#stMV+U)mpPc<~q`|?hM;)WL=Bj^9NY2@mxsV! zq-Nv20vDHh9LnFTMa)h|dA*jw5rEZiKeodc!f7P7Dn>m7Yy z^Vu>7?`_uAmDuG#{@IGXd)={ovXKFQAeQ5K=>9Mw2a+GpYC0I51Fc4edsS0%@b}1y znxls?zv7t9vBDgX(K=eby*LNs#AXBH3ii8USfKPK=9jt1+TO$Ry=~;8$Jh=(b@{dD zn9ru)@A3x6!>;vl*$1qbSpzj+bHGmEXtUd#!(jJyEN2dtU-pz z5vp7pI^HA%`vsnxKAIuy+qiMe$Pnz8ynHyo3i%7mzj)*jg8jF+ZhmfvTjd{UJ0}F( zrKzjV_@catIvZU55RaI0v)ZN*NIEcUiXsx}pICPs93KMtRx^7&+#UiNHm6rCPD7~D zw@%}uA=qDdba&5L)HA!zi&0lGUByk4r*}~wdHt-Vc_{bl-Kd7I5uRDGW5*}dzrh2w zA(cZxWBSmDoLZq^`1pd?Or22h$se<(a!Z6mnmr6_9|}pG>n?8JEfjPkO>GbK4F!=$ zZ=aFop}21>^3L5cp#YKvOFgWSuAuES6=#gkJQV2ff$)h|vCe!9pYIbNzZBDHoE_BJ zALT5HI*}0+3K_!&^&S$9@yCM-E+m9vKT`kMFFO%F8ma$aABJ~$6hHkq@)`DVDLAL3 zbDuHyI>O@Nsh{qLLV#<>0ZX2t9tCads1=3cdBysAt5w4A9LmaHt5prd@$aR2{+eNs zBRgMEqfrMu#xSsEapJqcl<uvUasQ{$XG^;;@Zn zFoq|eeS0Pv!-t%`WU9dQ(k8s!voj3b*B-TLw;$sz^r}T4M>%UZe$+gV>8!cmdHHqJ zb42{MqWeg9c&?}OGYpp}&b|5u?fAIqsF_MQ?lV1Yxw}d@xO+Hg7xW9a$2g2){mL|>%2aVo?Wwn-ugT;bEjoE9%aXz>0foq!)9$LP;R}}Jf z3@(h6BmIFlb5wSq+?1{ZCZ}UMzdW}*cogx}?a58D5Fem5#^);Hfd##8-9`MQm1~bY zs1>>fKA`lo)eo#fHE z)}K2oSM7?hlga^GK>7s<8M_BXK-QTPYSl(XfJW;X!M0WrkW`~+#!iO_$XJ=bUd=56 z@}plCPw+u*~S9v*?~KJ~`r#YTW(;9;-sNtpiA zQ#Y6IK|FVf|Am7Q;BMu!S~nB*>pL!M+C}6KZ8T}uEtGfPv5P1dAO8}tIxk!c-T z_bvhgRyuoMEf)zky=%|btriJc9dh?O){TUW=EWlwjUyrFf}`OJy-2W#ojnup zZlxig`z!Z)Mw-woU9TDO zOEJQkEe@KM6GKpX^@(>Yi9y4oUC2CjF|LcRU8q@83|HP|b9D#~&Z6 zeY24mWGy_`c{LM*rPijMRrSOG^{y_AHV}iMp(Nk9gBb4xiK%q9vlw(wm>jY1j`3TY zw|>_fVS-gB|9)a{iXMKynHi?Dvr^9#b1`J4XLmCnA%+a&Ik#?)!F2nm>U&N=Xx~7m zqO}-|&z#v2WG4o9{UrtZPGYbLUUe`8WdQ z)_S_!I|jpB^?Y1GhI$wudljfayJr+i8gE0sbkE|1only_Z(iIrRSfyZR!9!*LqA1z zdNu42(x)arx_S)h>+M=@pNaDJo1T7_h3W5cPW8Ts;g#DDSG^{NfYt9;uf8RQqKWg} zHSeMS=I#9u_D~GD4-Xo)$U}Q0!_*V=QLiyu1B?pM?lnWw_P#}b#Ty0m{fOa@>#3hm zje?YZpV|+v6ovCg1@A9Zje?w7s_qjsqQK0hgWqk26ztlNKQD9ij~U!p*! z(Y}_iEv6TmT1mwb@r%u37fy|W<14kE7Q3Rnml5`<_Ew_x#?Xi>TLv?)O};Md7%q>5lui zF#ht8_7m=*e~r~fpM8k_(MfM=numH_(F#q;N4Xi-(+vuvAmEziD)C#?yHTM?^CSBG z&7>yFRinXp!PvaF6{8{LVLMxws?nhK;KjmQHKM`H$$F55W;9qFIhl4qD;mckLDxDq zjE15cv!i30L__X{Oij&}7~UhQ!xDXzBmG$Ps$DeTg+o*AIz@wb!Qo}+yCQ#`K12KT zj0X43F8j7ZG&re^xYn>g(&>haR}Vt|!8>cd9U2XW8Zm7hM@EB|ah-zmW1}IcuDgTD z#ArA^Z}Or9>u8WEEX?ZJqkfAY?eTSr2C>n)OHW;*Ap=H4Sk8!sB>yWKhh`!_tZvtK zF6!4$>&>PGD8JRpsiMWvpyw90(s?GdPkLD z)FU~xjYl}*fqREujY24PXaKR%Ao^ssAy$s^+q$KwZ$-U+>#@QkIU264ODT6{H~PzQ zgMP0x)bsk44^bJYr~jk56_21_56zTJJ%O;&ojGStqh4{>-gP*Ser$TQ)y7NFV0FCc z)0=B3UuV^l3Aa(+%$YmV?xFvBc?UGgMZewXqvex_dPq8(-^q^#`%2{u`WB)*vuY{P zZ_)nh^5?1_Q6JY$*^^acz$xXr-NA}6&^-BUWRt2fU@)Zp3ZEJ=P;{zX!`roEU`NB4 zUwUc9;Cjr-!J#@apr)&LzepG9rt0dCZ4m=Og=#vE<`wd#W%(Xx{ zCq6{=9fSIWEcqBZJ_gjYk5nrBB?iQ*&GrqQ90R8H%$vkI#^5^33&W37W56=w^wTkJ zF;Ko%;J8FjOvg*?THZSb@{SGfIB`Dm2ThFG<`VKYv?D49LVO@f9Lt;KCmLCF5g|{hx{&L#t{so%=D6vVV!y zv|RLOE5Chv@=#yDn`bJ$K>p$^zcGa|U{>dNQS{pw$hT}>JHI#vju-a2-cwZqDIT*% ztgI-3({#2t8>76CmZyxljLU#$IJq+$QthWU2 ze^}mkQ(p z3eL2@WxqfIL7&<*kolq=uSZvUvP=T*p~=y0S4$xGqQz4;f8@`*`C!|6q?^9i|J7#H zqu0xaMqy~j)=tl7iY0hHIY+unA_0s3@m1f*(4NErO}ZvZ;KG<%4`ywXz!LpB6L#&C zfYYL_zZUL6eLFq2FxrRmQf6g)97KCY?5wcuDAH$ddHC$41U?+roMUhn!-o${b}3r9xNOM1>k=@%A`NYvgLX#j2%UHz{iTyOWOFX^znz|NJ`eq-k)2xYg#^5& zM$a`Xlwf^+`;qTk39j??shnOc0sEs_S6-_~A%BL6rC~)WH1G6uxpNgM=v`brCAzv4 zde)ow=2|T&>^SYxwRSxz7$0?RHKc(QWb$*zd>czaVw9+r+Dr=K!CSOnw334E&YLG& z8Au^aCDdS&p%e_72ld`yBn9;_BbAfJQgCu?>h-Co6zuy?-E7oH3c1nKraAYQf==7^ z`Qd}4xUQ|y;`~rdul|uL6-P?JtmW9KZeyijRJn1k%LFN;gj~EGIY|l@i+op{pDYFM zhnMe^pCW}NzPFxqnI;AIijlESZc^~`_pTM7&bc` z)6sVvD~&>b=~t+cEtNu2x69rlIohkyV?*05Qe20=XER|t+O2ox*0NpbA4${d$*HJ! z&r{EC?L&FX4Hs28gzGoQYiB7Yn_;fd_BY0U(84Qx;B_wTp)#j z1=_V*yv2MfZ*FB?EQRs~H7q?Zx8U z7BX6!ZtqYx7J62kcWrF_Sh%tL!j5^3kk4RzA92%IJf~9A=Wxqd_;9|$j9mR#Fgw{> zQ@wpG7<8&XwSA{p*s-^8#>lR*I1XxWFtbN2+I==?vkCGwy0v>xzgS#{*t7Ebz*rnV z?5|cl1j8Q=HEm=O3s#q0+M0}x1;5+PPgq;V!V>od^?a-_oh$<_u}v)8Pq}+)zkMv^ zP8rqlwo@#q4_H3rqf0DgDmv6_I3pJCIZE2tV`eOrFSI^3eh%WBA`@o+8VhMtGW%{^ z6pQNx&-}J8jfKNHHCCNn84J2sa=PWML4N(Z;c9`g0P+M`-#xw^3*rzn8)4@yV-dFZ!{7RUPL$AbN+#qY-z zpg*clyXR7b`FV5A!bKlqpn5Qw=_fAHi?7W@mqVDw7_`Pt{W{{$Km&= z7G>Ku4#J*XvhnB;2jv4lUGVK32Y&rm6$f^U1Doz`u0{8XgOt$T)3*1CgC()vNeBAJ z!3yur@~lB|U^T9_4-SEk-FgA`!R8FAs|1j@`N~$ysp-;-Xx?SxOznM z$*5nld-o2Gap2yh{*_)+nE_lB0yYf+DSsuvOh(I08uy6oH(2QuS+ zL-&Qmfp??1+Q%Z|Ag9{;kh9UKPqR%~mt)bMo45AfmSZ{tW?DVm5(fplQnx+Z9tS=j zen~6bg?41sp8p{=4)O!KzEItd>3;gPLFGee|FpjEs~dlxhk{wba@g7 zrcnd8c6*NW)1FP}`3mugx@o=Np#EOJorm{v@FBH-WZzGieuJ#=KpAAE2Ayg<1nD1!oNYZE`EPVs)nb$kOyAXduRBf#SM&xn z)tM-R0E_HTb**KPb3k)LO*wYuOp}4v=rfx>xuV>C>&w6OkU`I5 zMy+4YLb(df@=xZEpq*GRSDr zyJ>2m4BP`uKO}8JeXkz(iwi;e`m-;DN60|*eEa$J(K5)j)LXGK7U?SWC|DqufpLy$ zJ+CdO&-Ta{PTOT*HF&Gs%HTrV1xv5rM1MS4QJ8rL^||>* zXWwr!Fh6wu{gy{amw0wvmx|g@FP33sVjW@4Zzgj%ZH`Q#QRx=*dra!w;s2LBMH%!Lf(~5^B zM#;;wbmAfG(nR-k-FOfm>ReOaJRWvjl{#EL*y zct|o%eP?PM4^ZR$*`f~J}@54k|$rkG9(^co(9+* z9FBTuzmG{6h3Q_Eg>4uY4|&@xhWxnFw9T;#9N`%%P#cqm%2?DP`fc$`OR zICbhW3|~`u|L|4lhjx-oqqXs%6Il?b9f;|;sn+_q5z}{AGU#q_JZLrX?RGRg9&$d6 zx*H!A5BaB(`mK>-x;OKGagRs3v<4kUCB}oES#DbAZD?1$Nh(@9IBoZsKrJUs*Hqr%N24#$H?bfoRV;~4H!`?z%`>L2sGK2C1HVegTxbT7n%akY_o zpDv?4w>M3_eI506(Tm=98~Kl?2ZrB^hZVn0>N)>mJXpFdU?*Z4W6Kcwcm zy06gBoli9`c#ZxqziZ05ckyt4L2KtNALBv&+KpzbRpszu)8)-mD#{_vdB%}`Rpj8Z z-d54Lx*Xf>Pv-Ay%JIIgK$yLVpl*8ylPbYN% zIT){e;8NLC4n?C1jqVJTgG736SIQ7M%zxth(tkMWu}&k`aTMa^d^h(RCkH>zb}E_^ z6#u0+r01fXr>$t z-%RjMpM(0j=en%>RSrR~Pk73U$4FFmY*C}Odr%}TLAh= zJKKHn203KDNdI+AkQ_uAHvLGL}X2*&m0aj{;`uLOiPf1 znIfZJ&#maEY3{w%lhN)Nm&P}C$zj95iF*@L<)AsLpys@NC{NR*+2Did-^+cUYaK=U zM-^v1JRt{l`+mE3o|c1CQF!v=a~Qwp%+wJV(a+Cs+-P(a?aVn_IqwGgIeW{ClpHw( zs4v>E^u8Q=W(|EgA{X_sJYA(xo*Z}5lP2c%S4&wQ}cKf`+e7!I+ZOD5$ z7!4XRzwReFB)vcQCPy^^L__PhOQ@ItH>M;uo>?UUifqqk_O6})YP(+=sntq=9f@@; z&(%TLBBx7;Ho{-4oSWP*0neKcZP}(t0_fZ^@A|5F0%TfwmfNd`{A=s3_BFtGS+6sL z3=_ck%JWPOqXaOO{kH6K*97p|c<4iTj|9kC_NuMDNdo8%Jyl=7UjpdX9(m~b0Hjy- zZ?$u90{HFiK5*_ZlwTxoYBDkbTy8zsQ*LYmXl^J}KR!MI#Jz4c@cShJa{R|X7;c*Y z>Mhek0On_{cRY}wA0~|SlFE>-nPa}4A_2_$N9#3B zN`SPx@eOm56Ts%9>jcku9?5?DAKLlJ$%?n z^jq`2)2f_7{erwqkDg0_p!(rg7hOyMqkxrddR;~TzlZKcH_)EV^D89hB*1--eru-R zN4>O+&$r4=fWt$*v+q1Xy*9?K3w@pdmd{S8k9m~Tgh zA2EL{#*Q~uRlpLpLrd~2D8S{|u<5eO3OrA{y_QWi1(*fD_NrG?0byNSH=NN_z>U7y z?n|{4xZh=Nm7Y2ZFx;qP`?9eD+{Yg9k~LF+(Sx-9lUga@L&v%oYPV59l4G~VC)y#O z>G4(zIx0YG&xxlUyC@)K!W;L8-4u}9#By6`F9rAvhpof=pqypSQ_J;7{=L`k?lMz= zxN)x5RC5Jfu^yt{&_V%fZdKFIj#9ve-tF7?jzhT*s*E$5sDS%sQg|>)0S0Q*9&Vnj z!1Hg#Lk2l2;6gzi*LTjS*F&{o3DXsjli&Br#2E@$QP*LB`b<1FhmZ=`E}ud~a1 z^uu}clMQ^(KHcd$rxq)q`OCoubC;uDb-TaQTde@yptz-%*DAofmC@OyfeKJh3%=B8 zlLBni4Z`jOWBLOu8~cZ&-p}{h^o&w~q(*(4M-l}D__{aTB*S!?oe1iyKzmN>pMSO$ z?WytTL`X8qQ`xt0z-|Q`o}cvUMXCb)#vN-Bz7OG)%5}{SqMnO>J^b>B0*vSAcL+bB zfd7xbui_`-Pe+0bsEdHXKl{5q6_s3Sj8)VHf$;k(PHk0KpaqY@|9YR_{>aPseh*Ey zic5h%BJ3y4|C|Se-$P3x%Xn!MiE{IKz}J3vC+i)Lclyj%PNd}3B3vlHdMs2V66h!z zf4^OWy=pAwA%@F2{Hwp?rLGi1-%&Yy{a*R^-p|wJ+VJLkn}_oE;rIgt|199Yr=}(n($#y$B?xjY2zRINQ22f<=sOYUjEgv* zC4G8DB z)&U-oe~7~XqO;KuQlx-V00<9y$X^8N48n6Bm0}>Y{XLb8Of?T+sD=le)A?x9sgegc zRsR$j+>7ub9yos~vT>Y5_a5!8+tnEl} z^md+3@ixZqw~fP0e-6#AE^*==Ug!`VEo*gM&*Nt4>JkskJ`3284F#A4{KgHyq8)V-!viEQRmtQr2 zf42#1Ieg>C;iJ|3J1ttp_1jL+W)%;IRYbRv!<~38O!V>JkEHUAa`=p3k0i!tzC4EOQ%vP6lI&l%j_ZZz!9>bOmHd2?^4*>C`_~neA1gRr z(sFLc(d9hccR3HAw4BRpNbzTuas1UXPFIn_3zl*E%w=58zGb{zm0Ql?N`iQ9lC>Lk zsQkQK#c>rX2eE58E|lj&KQ7On%F`IqzXS1y5#EE!-BBusVSd~{cK+PY)u}$%Pv1Z8 zPiOVl4EkOl@bB93AaA#l6QcNcj{As|{f!5>UqOVA&#PG8j^Mf+|ea+wl6{{CzYJ?;_#!xQ@%@FP3vTu3H)2@(FLJI$ca=bXVTAC^~W9eXK=Z7ce8Z-j#B-G>oH2ZeZskXM?VR-dm(*C z_4#+{i2Lr?cpx!`>(iHiSK7F5iG}-08K3zJ{yjQAq3_t9U9NwgIIbk!mBaQOiipoVhDmQLaPqn3T z)}P8(RVsfuM7No~+u1=}AG>gF@1$sMuR_M_jo)~GyJh8_3?DynC-Z;uJKq0w{IG@b z``|jF@_R|1NBQVO@KQXN-(@R<(3<+k#(P+PspstF^7ifJa_a2m>3C82%{0!xdLIkd z_SnzpU%BjOc(D3DrgzK6oIhg*^`}F4|KF!A)pOpsPJxfl02zm~V!54hvu`QK`BNwk=n1()DFc^y%0*@l^bujwA*sOik?zCvLcTAOB&1M z_?#j?Yx450J(t?YaWrnhc81lr2@%{cE2&+@b3ClREJyx-NceW@SK~NGsisJm@+B&a ze;;*;?k4re$56e8=NwskkVM~&XgyCip88RDslQe^05sQk&B#ol_FtRA@w_?9w^h`S zvmrRypZ8PJslPUc`XPJQ@czeL>Yv+s|Tq+7fIhMo;zj!!1HRX9_qx$ z2|kB;{hU0C>K_dmqf54sb9!8_Q@X=Plg5jasl4NUS!Oq$n_+SrP&sp;@q;ivSV#8U zr~YX@f3AN%>D`a)sX{p3OQ1|oq)GkLKGZ+mO#SaiBu~Ic`}2OEEAe|$e;)hwY#!s) zYA#QW@K1!lr2fAM1O?RsYv=ZB0KP21~y+ZYYnGA zLVE2dx+@f)LgR~cf9^lLhk%vK>eT*OAVY|ZgzexR+p;X?mzro^{Q9IFv?5auQnce|>9I~0p1>Oh2 z`s3kLo&%};XOlli5VRvddXRr3DL?vBzD=flI!pOClJMCS|Cqwfh5R77Pf1?AFX^&! zAkf{XbRtOJOez5zjx?U=CX53J;=Lp+-jARe!Phjd-9zvyjVo%AoOq(k zrSV5PjWbqJcr4+=C?3;g-@$rGPi8c#_+f_}@@? zL&8T;`ZD4_LGsa$%>Rdp?f`|$i7u4l2NT>xaz+w;FQP;Jm_EfscbDickh}@xmnibv zU4j+KuQRBedr>)WM&FY;;kW7gNTd2Nh`ui!!j}=lC5oh(uPKvKV>7ZRKJey!`N~b45E295}@OH#k{tIOK;d};@ z)0*fz6Kq9v1{7b1;5|z3`D(6jSCWr%nf~ZsCJ*Zs_ML1edr~Pro8Wrl!+MC(k0W}a zJ?les(FuL*1iloKCnvh!NX|0~&mdSp;S;DmQ4m~3 z^I`+2Uu8$I1I2$NJsMFvaDw1$iXTSw{U}`E&!+Gvr1vGlpHg}|2tQ5uQG!Uv%2O)A zETVfw@@rE+r#toU?oz)fmEaA6GJoElhWqpW=5gw8HlThJ_CwjcAI39(BR}iE;r&Of zUtvrA(c08sy+!fWsK45u=$aATG-|hN`SX74Hj<0_F!>#bz7_RvHWA$vf{CQ}7Sa>% zX=3`|ye8{UoTPXcvTHiQ--vz)$)7;>P5Y7_OJ9fNs8YBI(ak3P@m?oJH<04-UMS`V z{ZjZWq6;9t6$HIW--VRUG729-_4W)Ht~ zk{p!B^061eNyI;apfSlo$jdwNn-K0q_$;DB$ml#to{S)_OR;i!gy`$ie13cCr?(-f zOK=qRd(RR6n#PCuG(Y#AU^AM3!+0kDI?-Jt`8Nm_lDs0q4-%b%_)bxHI)&e*@W#{+ zuSn^1B#8GkvHZb%n^=B#CA=YxXYqb07LWHrF@IDgIeDb_HcD>~rMHjL%cA%fgx@E+ zRwVBY;k8Jv5rtb5K9cZ_lpe0LFg&w1>;*xb7iRf3mF9!-ekGP}EYTNj;`#{l$*pOA z81F-3dg43+E5EKZ?|h%))oEOf>!&P#n$bKB-b=*j%_-c2!Z*|W4&EEY(oZ2gn&dnt z_>|}qDSj})t|YG^;pGVKAiYMAzGw%N??HGZ&4Vl?y>K3#*)@*%9#i~j!k1IL6UjlG z*>{1$mk=HLh51#R;xT=OBOjB$k#J$YeGR2Qo#GKPKcQZX-h%KZggX!{qVNL*@jfa> z|B~{x9qDOE>3I^2CiNGW+%ooy)F`t>%PpN?a2RADE}-7uSvKG z!NnBbner3)nY?SHmp{Qk(nIhsuD`SN4Jf`l;hhOTNBAz{n?!nDruF(m3HsC{>k)7W#OXHdw6))6y~4Uc?f?2fbi?@igpVEHU*u?=$oP_@d3g}w z`2b~lqIz;BR~yeEGTe}_A7nn^>qHM62&VIOCi4_3U*VLFzMPkrJqoU0&n;ZP#$;b0 zw@Xxque)gXp><$dZxS`5^@_(lTw9gaTV8U%jIWZ!%jppA$4&-(o#xfL6rMjjXkEo{ zA1e!vT|{C&^ZQAr0{)n zj}~S#{$1CzIsZxyla}y!?dIng|N7*!EIubRlgV{-KF;+U&eOALbAXqdyHvhRxc=si zY5hq=>)FHTJH5=mE5~PizSQvop9fFAPvxOIUx)Ik&DSAB6KVYd?;&92W;|cl=(L^I z1?$p!pbD+asZ+Q|G}GG$@10@uvV&>e1lLnU$|sK2$=xG)eN>xZAgyOONAUc9OzRlV zw7$`i-~w8&*-ALxC&ubqHLAyO9fZ}#A85U!Cxt&JdBbUb8Sm#}^671#2(LsC?>S`lXA*o$^0NpR>|aLm_EG#H zO6LfL+Y;>cg^uORN1_+(my*6t6pnsk_6HEe`xO~}ozmY*^41gmL&Eil4*e^X1LhY) z+9!$jFgf!m{u;^KK)9IX6cQXp^4ijR?^yDW6XEIv8 z5Fhe0yQ>iHLUQpwN#;+y&yuA#oAjAWa*mLnUy)wABP!51UnldQH^E&b&yV5{5&uDgy(s)L>GzTJ!f+<12gT#P zpDbMs!bKF{jG*AZ&XgYB-^ui9M|@)lCK9wKIy0i%MzA8)`-OzRCTLIX=0)O9AUKEg zSxoYx2p9Gdyrpowzmw&YKFJwO?N@aQ$NN5+z0ZmN9NC5Gu<&~Xu{<(4Sp-oYvr|NJ z)|0+S$NaUL_zVaiMDe33d?bZ0r*!ubj*!XSLih`UxR02nZ$$d;B{`@MqsM*)gR6LKt)u6p8=wSDav!F%7;)gX8*Q=^3z`C0pa{+68XbI@XHnc^40Up*Lb`W(W_uJtgMf<2p8HB@vpWsRh0616CtXEuV2$kbcQQZbeKcI50)JLY=_nn3Lx-zpJOeZt}&$(P%2$} zhgr^c4%W`Dj&2^)ZM~e`Tsh$s4@6w2h-TZ)a&U2Qo#I6qBDABrB=3)cs!BrgUj=+s z{t0+Re63spSCW;CSH@{7WEvaDyc=Hg5nF_kK%kmD1Rm8 zR>%0JN+ROZz}KEi9G}yf_=tT#nb$&m%@X0YON7@ENJvgyWgL6*O_aI_{Ppk^l*Zz7 zoCEBS;6r>u85fE2O$2){QD8|uw2_771MxLLykQABI{03{1l|bWnLMIzjCivW@w)h~ zv|Z4n3BHz0Pw6B567fpjS|#x2_^y;G@VCHMrH%sL5?_^n0^Umb{`2|ifuA1u>4Bdf z_*Zz~d*cP~^V|)r9r{;z{py!W!3r_ephy;1rL4f;nr>Ho}so%^=Bf^`|$-=_Pw#g<*UGW;RS z)%X3O!NzDBIOgKRE?`CG%lxt`4dM6zubc{yA83&Fxqyj3zx|V6zV8n{?_N{ar7hyf4hVm-dUZKmPnWgvAf}y$EIZYx7OhZKt?8J38A5Q&6rm zr#pBc>SAr{?%?4y)5C#F@S5Y!-h_UEjUf1MhTrS2X3@N(-rt<=PjNqn2ZVX(()aEC z)p_O`O7p1+P|lftuN>;-C>cJpaOCIze~kx9&+`lYSMO5mBEtHDP;Z+3MGx_QbvdD^ zii}H**GjL?=u&#_cle8-M-bsD_jtHapRRa74FBVx?D`2dKV(0Fmn&h{2Cnc)v`N`JWg1{c`o+ z&Qo~*t>uetU!Y328_N}oGRd2-?ZdHr%#(AXRKM3wWIf@8LjSW&l>I66AM1hA?F66I zM0Keg35vVB&35oWr1U%v2n2r;3ght7_s{>;aX9<*==)RdG5&tN@n_p3pE9d2x-%dC z|7efC>?_VFmCvQKQK%QRo|caJcjIL@{#)@wj{m;a9^t)4?D?bZk;W@dZ}#slUjJI_ zh4v_kJYYj`#T)+ewQ}ZOo{unua`rVkHO=4Ck@(NxYwH|tlcze^c{$H=u*O}ro+8n7 zH&-`1Cl5E=d#n8U8j+{lOb^_T+qqLm*Xb^{o~*4@3Z3j=JH2Em!<}92ob4T4y)fS1 z!3*WOd03l{>DJY-?^q>|^6|tK6)zl{xlXaRb8~fco-$Lpu~*pTi&w|ec@~RjoL=}{ zo4?wAR#b|k_ER~hU3T?c&<|P9@$uZ3{Vt-H-2Y$uuS*e@1z)4!;f56LRQPQ=pJA#vKJw4s* zoNc`v?5%l|LlJn~!^3upgS9YD6Pg(7QU^iYZ9QzKW1Hh)?cw0!Y&+T6#o22P$`Iz~ z{;u5o-n@g^2d+3ZHG+9R;lIQKLO)NaRfTy6?{~j4+!O7=vU~Hd0BjW@@He&{0nYe6((v*@3S)gO!>!Nc>AU%(j{_GzY68W7w#1u)q58M! zg!agy#<%G{*CVC$`K$Fv$@^xMXR6C?e3|t_jxTxn{jx4}h2~TLbFP26*TJyTxAXIB z{Qs-rWmm3pe#mlFcH^M@zjYkMN-73E$ z^)x#tTUS>H7i-$E@;Mw2C{4yr-)EfSr`S5XT6;QpvCDH%6HaFB=4fp<$Iit8SN!;c zD|^m(xQV2EnK#v-_&=I|fBrn39_63VgA+9RXXoGd>;FHy|Hkk?`r*Ib4_Z;_MsleM zbE&1^*fN3NFCTx_AIAUDA0m;sO!WV|g?`^3|Lwhx@I%&j-<#j?sl(ev-b()6x$#rp zKivbR=Qs37;iTHXABW+#lI9tMrbFrXq`y#kgdJFhl8i5$kx#jw~~C>qUbQ)*4YJ#ga${bjlNf& zgm&giJUOHqY7W?qtCwdd0`Ej zw@qow37krO@?Y+s;$pt|Bk4c-(; zAJQMZ-&yhV>Rd`CUL6VFi^fup8!qS2n*$Lv7bqy86woC+C7-_t)TQUI0*KC{g+M_8 zrGS`lS*vf;853RBC;lQ(mmbd$+201rt{xVC@<8bE3o8G!>tR7lds{DC<-4=1r7VJRv_{$LA`6y+3Z8gW_Sc3vSkCmsvn%dyp3Zn|Qh9WRJ>QcHN-FAi>Er7c zJ*$_H`=vwmJ$X$^$ZPXEc~zJ^oDC^4+y4E2Vaa{2249o+Wtsb{zk?=}C*2bIwPo^t z??1PIb0p+o41h!A>5Ma7PairBDY z$BrEp8#e4+zuD}wL^*$s=e+9o9?xs83-0~x%ud_cDbLI%^9>EgwP@D48H@VJ$+2Wv z3X((S-)H=k%QlppVl?Bh zGel=rWh44Xjydt0|5GJkICiutm0=6aHB(E=u%0o6!E^EQ@Fjw&kA{rHe@GctqyMx1 zDm9@4bii=w`rDx1`kU67_Q*m1rVez%*{FZx-(3Ps{pDcAtibFRpRZGae{eBOGns54 zLuxS7ZnEiST>5;VcEI-a2S@*}36ANv?meOJ7YB1D&!Srx8CFwPJ5tIf7FIS+Tu)CX zh_nFUFZ-UFktGQQvMl#t(ksXiT1!A zh#tRz@%ob|O45Q2>R0I^*P2++Eh5 zd>5`0i_!EzhDx_BiQUG_)q@Tgi?}v@&H^VdzKsLd#f9fY`DjXetIdbLzJcTn6J85+ zH?gqeT6^$qxL$l$7jmvSo^Oqus;|jbGUs`Cs)nLU~K?T-GL`!|h0S(7@|1J6tI>%jLUMMaHu zs1IB6U;2EQSh%=Sx27kaXW}Ezr8CdNhR=0!@@2b`N6Ufh$+KnCnIV3Ap?{_xXu3GF zsWh-%T?kpM-ssNM1IcqlO30T-=c~^*uJ4QPOnX9wNqzd!sC~XoECilZkp1yI^L)$_ zIJ3ulxbDm4xv*#OU2NxZ$}m8xR1kwO9H!kO?Go3E%VH_xdFlQ9y8f!5J5xVqn9~g@Qx44e!K&KY zR0UD16P~FjU(JB$L`5a}s3VzrO5E987h5*tM+4oN`%dbylM~;~)76zH~q1d>1zJ^srb%@VeS^w;+v+ix=OHPglgD=+2Zo&&N&0h&1WL@H|s~c3dY<9yzC7 zC%ihzWa*$g(>`dbYig>fYp7@ro31`sckmEhb@f5&>f}HA(?v4R6P2&AUz8}@)viwd z=nID9b>T=!Cr=%#vef9lk*YsdHl*JmrAqoBHD?}|R8pR;m84=(&y@^b%O<4S9Y!;x zoT+0Vjm($+sXl@_&-kOCaSM1T-m#HL;!gT%6@?sJ~h0PrQl|-3ctT=<|0pyP^uP<*g zbNpA57HBy67?mVFOxF)BFD4;W*v#=?NtF4fqGy<%(a0ZNUKs3G_$x_!f2#K^>Y_1t z-I)(_{8y5uJNeCO>bh}w@eeI8CLvVV%<*4IRAlA(vzVUoNTy%c zP}R^gI_FI+JX~GLoX7~z>mePyyxcr>)zs|yUJe3lRWeOc8#mf$sx#M1#blg; zk(vw7N8o8?%d_LV@TuC4HviFm#(k{WBfx=iD%(gP4x7avLWWlchNHj+fErJ_De zMSTccLqk_fT~|{_b?6Z7Aw!1^QrDCYLu$vrc-bF7+btW`Yqzw(iGu}RsboqY6rwh? zrVrRm{m1ja@$V>sx^_!-yw7DObpGnIS5@FZ!vTw-K7Xe8Kr{ZBQlssbvbFVBTg=2q zlY?56L~CaJu9x`d6_IHt^6)ywcQKc4kV;E2d>SluJEoz+6TcX0?Sg3VV51@9d+nBz zd6yhr7*q+#keR!rEU`dk&@w4Q?4Q(!8uC*gDHSCC6-XF#FnSXAMnq9pG-%L3a-kfC z(@=)RmUyVOc+yIqr6)O{;-~Dd0@7?#E#|lEu2la~{(`=@vXT&(njsP2{g0`?SVSyC z#t>9b$ZR~H#~6U>@yDdH5Dh|f>9SZg%Jc;aXb521>xw%56mjCL%}j*riRYhk`sddx zMK+yRd_XYcKcZgIeLZu>eoTqh*N#TxeRsfU>hs6JhLZ6|hE9?XGrwoXef6FH^0}v; zWy$bBjt+wv+pyRUdXh8o8F~`CJi0SuHd0&R%Wx=XNxOjlC>xW+9*vr^HGZk7Ybjd= zV~nM2S{doo=P=L<4R~QI;vg|-p_T+fUC1)hlNfUFJT>_GGC`E_Sz_oycgmP7IYdoe z`(=WuXIqkabe9y0q*cKa)Ig1hWwaJKl+*&ep0d(?86VXseVI4Y( z@07r|_T3c>qC>+5`|kw(+wZ@i1ep0hGoO%*yGXwDn1xTwBeQzRj4BMjGw(8FM~5UV z43OEu#Dw3F%mb<8`sR7kc_bZ-bRMbBrjy3xgjUk=zAQbD^l*|m)E7RJ4r<)Y%p<9h zjWirNNjQ=Y+i!fM1isbYv8W*|`QS8( z7Qg@h&y)bu-W6hwO_2`N)P;QNn^za2J;j0cRyj|5}(|P&2U1hP-m@NJyNw=#FYg^kIw4>CQST;HsG6s@* zJTmQv1vLf!ANYLBPDfi>rOSRyJ!{PdEPFkcR&$otXNg^fvI^8^2R3EX#rbtTllHrR z&kjtbi|KdiCqa)6{yYEwyyuL=rjzz{{{QLE8B?5OYqTrbedtB@E72P+(Sh$`BiX=Z zMQtl3n^x_;=oZqAOZIeNI}; z{~s#>W}Lvxi}W!67IoHDY+MB{URGXwXCCc=*_CdEd(W-BeBCIg+ViNH`mKoJGGN9D z>J#ZRrY1DMcbxF0RhMd6>Ko^j&7tF~JAR?h{_#JP-n#2f-<#fMR8(|>E!q43$NqCw5U??02fv@!Mh_}@JL^XgRrn=VnNOeczguiT$5VmveQ&?}<$RagarN`&yJc)T)Y~}@yFCG7d$KUREl_bxCA~Bp(V^nJYHa%9AV~ra< zQSxOE)2Et^l@twesNarX&Zdix8R^oB#foMQ{t^6kdHkpQ5Kgh_4E|c)t za3zI8T}BqenD5x3;;(z2iHrUM52`5X??J)$(p5``I^oqFKNVsy>bO47#9MbAfqID`wES`rR-8ig)+>(_FV-X68R~xF3y)!GkAs zbrMM4e3zVJ+F3ou!`~z`A1)((5cRodM)P~;!(YBF)rJK5^X9`(*>sA(esccP{YF$+ z%zRjqho3qhmbR;9b?!5rr{Dj-RRTY+zkbW6u>cldX{vqzJ6N1Rm#8J|1Bj@ zUq9o9`-Yf&N+v4IeiEII~LjPHB*}x|~a&XY7i_^hc^rTY5!Pd|7!HV{ryWypuT>rn5jUR zPiCowY3~icGyhEcTeqG6-u72gkFhdSwzr>WR~Ybrw!hMqmhUW}pLBWM_SXm7i=PzT zzc$$V+TVB=I?K%CL$|;6|6WnCJMABvE&7NDajiaw~X zo@ocr?o2(a&!0&2wLe->-}6R~8{f>M&nRNO{gLf2wbWc+x>&eE&!qob;}jn+I-PP% z27dE@ssxzl!~%0o_3hM$gY74+$o>n-ufq-TG z9)LPJmka;gpCLL|djGjUroO+y=ab0~+m*gfuTK8|JhcCwE7RW8P51Y8R7p))v_wOqj#?rUT0qFdkCslGM-)DEVDVEW^42Kd{CE_Q0f15HmP3&q`Fw9 z9vXh_{I?Y|Zpy>wp%ml$-f`2H>l8gms=ihK--OUf|6Tw8_AUHZTu`_EGxM*?ps%xM z%k#AH;Jejs*k_&ty|2CfWmVT+$*D6B%0oLyX`OWZB;gVnICa(v22yDE_uLZLtKV{AMC!Wzh%}iHWo&sy)nfY~h>Aazs z3HTQwJx*)H;$V8U>yFdv%wHVPpI+FXXV3?oO~e1(Uo<*%BL3W88alg0{<**Zmg~3X zVWkV{lqvnU68Jmb|7r;^<9MYQIvI-iT>Z##d_NNO&l_Kq{F40#vkr(;9abUQG3%=g zjD1LMQGGt>^K5ihjQ?|g%=504@aO*i>8?MoULE-*>($RIk4wMHgFFnCe7vkI=znrZLw z^l$v4CBWEkOX=InD!}_*aECro-##tvJ#>bddRCvmic@qrj6bHBnEGm1L%W+|ygzch zGKfU>$M@3dCx-c5WIb6rMGTqu2mk)>Vic!h-g+^4q$qt~;_rP=IrV%o?_JOV>QTXc z_lKE}6=O(gm+A7aFW@qCsJZ&*{wkROuK&5e8uX`7`RD$a_K1Ds&;2pc{#U4!qbG^i z6zPM^LzW?Hkczpqe?6oFG9FostVGJ@(f$>Y%1Axrbfg0^02zvaIT6W0dLg5cS;#`=-WD&9qc?DU6 zlwC&0qli>S>LI5i9gqRYcw|1Z7STTaK*6{(IiKw2Q3kRoIfvH-aQS&pni zzCp^bpyOd9wUCC$IY>8TI5G{n23d+ci@b;YfK(`;kY31WWEQdzxgS}9 ze28SNq{DBAR6>qGnj&qHKFC;P955cG8Xzr@PDl|l30Z*LfhA>Sb7*U<5>ky=PY&fqaN$t)s(lhg3q2K$;?Lkv_;+WFE2z zS%$oVtU=1Ir{hsXDkJrf(~%Cy0AxHeA6bk%hO9)sK*|=<@w7xLB6}f~kwcMsNMq!5 zq$Sb;>46MDMk3>p8OVI(I%F|&FY*}jJhBp5jeLRpgp}Jr=cf&_E3zL_9jS{nK$;*e zkk&{iq!1}W#vqfBImiO!M&u6UL1a1d60!>U82JX-U?ZImd1MD98#xfEg&c)6L{3G{ zLE0hRkbcN;WE?ULxdgcexdmB@Jc2xnyoS7oe1`mhY`lrij{>qYvJX-fsf`?ioQO0> za*&QlFJurh8YxC*A(tZyktN9e$P>s41;~xa9ms>oa^xjs74k9i4YI*jIv?`L4oEg~AW{oC3TcR(ikySA zL%JdTkm1NUWEye_at(3|vJ`m)c@}vMc@Oyv`2pFun9h#^vNN&|QWdF<9D|&QG)Hof zjz}+L5HcDmMrI+GBMXrw$o$j6o(LbC3ndjmRCygUE8^C1e%yG4c(v!45hf^2iQIHgX_R3pomDh@6U?gS11s zA^niy$T(ygatU$`atpE)c?5YDc@23F`3(61*?1?N9|dG*WFMp|QX4r2IT2}&U9Qeunxp>gER|>0~L= z6!k%^fqEorW7OuTZBVlggO&-0qP>udr%)oeF^m))X!0WMlFAczTb*8S$$D!pdN+V z81)R)HmKcD2cVvhIvMp6)ay`hM|}wOS=5!NAEADWx^WquzBV*jJx~uqt&Q3M^%T@| zQ9Gg*q7Fm72z3_f0@RyP??HV6^(EAIQ9nn`I!vceo+hgk>b|HoQIA4B0rd>jwy51u z2cn*jItBF-)ay}iM_q>cEb1GmAEADSy73XZKDMPP>VaArwKnRpsHdQ|MD2*$8+91! zc+^>_SEAmGdN1k|s4t_wi~0p>)=@frEoh25q3(xT6E&cofZ77JEoyhvfv96pr=VVn zdOhkLsLN2FLwy7FW7O|ZH#tV%@3u5qY}CrAbx@B*Jr%Vj>UpTWQHP_BN1cs&CF(7x z_o6TuKvsIyV8LcIm`KGY{sUqO8j z^-I(;C+YOHq$%o*xcgndqrQpy3F`N# zWy>Y$)N4jlq(HN@15H*pbnlJs1JGR!-G`$42y`EV?uO_-8Qsm$eKxvt(cJ;vUC`YN z-Tlx#1l^<1eIdFhqI*WU-XHg8YO|=1OhXw78%qAOSPhWU{YCVNKc1(*2jV~2ceDqi zIEF+xd@X;n`eS*>Nn)f+gT-n{_9s%u)bAD2E_xDo>G!cWka(5u%Y4^U;sJfr$JGBk z>ES>4h$#<6Ok?eSx83v!=I(s!y^i9AbO|c_gY)`3X+N(7nEja+7zI6*zf)Gn__WgfoF0GwDrxO1G>W%AI_q>1`@WuZe|~jT4uA zVGMr0mENY5KTNMOIb@z|rhtFk?@u)7MJK85lb%MO{)hgruYOjRew|=jo|`NAooBuu zenk&cAN0QV_Lmj&zEd%mzTc&#^rb)Yerx_oYA&z1rO_}s1l&$*DP=Sf!K{){=lzL+ zpq|Ov_w24ev@Mx%b4|1#ym8kWZyw|eceR=q4bS(1+&fic`&D|wle_Jz?0b8Iw@S|* zFPwx>RQ0szL#Y5-?ov-5s3?G2`)3S~@$>@IF6Zv+o%aOyTOFQz>U+Yy)=TepDDi-9 zGkR}7t?2jwSoQIlQyFi~-1|9e}ox$l;gQB%|&hY3$_Tv#xouKfL zf$=6^Cs_Ob&=@Z{C$L=HDrLjsc@X0TE7&j(29)=I*5|$>M2wN`Iwsi>ZWL9HwHoaR z??-MhNq)iy`Ce1cs4nNjrLK2}-mv6DpRu+U2fFYfM?OwGZi!s{FCo=5Cqlwi$NzvcF@{FyNPOsG8^ zjU19ZmTM2zOV?bVIME&g#lxL?4Yr4N>o;y0(A^&TziqwSx`jQwp2=HY^vMnml@u>* zTw@32R#Zvafte<2y8A6VXlwLBGv>A(q;`=PSlp0m*5{;wQ(oD@W0D%hCiXBRZPx{b zuF`m}mM3KgncBm;s9e?Ea$$7c7RbQw7BmNJHU%&TcKkMK0LA;2c1p$uyoYnZbK9JkokE=H=Wab zFw|V_UEIwPUfO;-HH_~F{Aq$kPU{?@LuA?g2X7sr(UShWsrvK4?SV^9b^JWoJ+}XZ zwXf&FyC-|*r4Dt1Q4p)p-Ps9z@AuP?TjK<)9w!_(d+r47wJ$b)tmh2x*U5d_Ds~3f z?BMMWFE~S-#e&H)>Mk%~bnxQwu`ads#j=h4*s}(%aJBidW@AfSVO^-=y-OY4V34E& zx`AEkOyiV9H@G#86>DGa2HihpteMiv9o}VapQ|>>9TfZCQ+pBZ4#~xF?gtLIgPO}y znH`NhpsaUs!p5;4z^*A}?Tzw)>@fQ=iTgdkw^#IYw+5aN*C=9i`Z!OBJlJ-0R+J|U zeruQ6<%}ovZhx>tXjd<|_|WiWwv`t|_Q;ytZM7Gi9VgI@f9VCsn#k%V4i!My^+?6_ zz5?)ge><`LJ^`3yG#>k$C4^;mt%@4x3!#%)r2DXFA-MNkR5|X55bKRM^eD;O#WV2+ z=NrB&E7H87Not(V$qH|*pFW^eY%wK_?*rEsT~^Co;{!wIROPID>;rC%gLkK?_(FH5 z4VUecePPAOzIXR`_k%SfLJFs?@q?#Nn_l$o;tx0U3_GZY_`~B3FBUhi_Q(4b0O#Xw zb`^L9z%W)9g`VpIApAu;9fK< zA8I+!JrKr^G*~)3IuQ1kS69g&2!yan+2ap<4usT?C1!?(X2c zAiTdpprUu#@qDLXD9`8-%%2hrr&-q;G>r*{$w}b`mktI);w_W=oR7gUH~L%;uA&I$ zKc0EPK}Ur5Uj#B8-oDg#62a1umWEMLBG}$9e@NqO5sX&O)akQX1Ra&nHQI4Z1fo`! z+ly|9U~%>t^R{IcW z^~k2t?iL}yo3^e-wPOh64|Vt0tserXPM&?xAtVHB?=(m~lo0|$*S2f0ZGQ+{)eG@{ zc0U9jPATpl@gM{m%JncVstSRvzPIw#pM-$?T9Xr|S3BRJzclGBl%30oBo*{3KM$Uz4DC>1!dK^ zBa_aCLe7?PvbQQj!T;sca__C7V6=0E$E9hZKsup}d(T6l&BP&_QW}K9!;TLlofm|H z#&NIpiSI(;YI@U1&lX|uV3nRq<5ppC-yn3Q-T6>Z@I88N(WFqgq^n(#sTc}N7rhnf z*@wc@u;(jnlBMwr%$q;dNC<^(%g)6Y9|{FsIN)A+E)<@08`5w8oKP^>HDTohQl6$m zZ#R455d!DrK2F@}A}z<|N~s6cc7#HBMo+VL>q8-X=ip1LNO=S%2Ru|Y4TUC6{M+h# zgaT78ql1QeTulmv$A$Bc%^~@vYFnXOD8TJB<;SF)_Ee2a*c=%O!S8k5PDF>o%J(c% zMM7bJ^&)k7i%_6?!5#*oFt9<^wFB=-z1U^r^Uyv7@;(~2?qn{lM-z@*z5B)?1Tqsw zKkhX#1Q;zkm(V+#)U&qRD&;=~g@Aj4e@Tf=2)sKh2;K_hfqM$dkb^{noO~{cI654rO)H z6^g(p=fQiocoB@{?aMf_LSIaggTdt7$c@_^gJ4U$_*YQs2anSG$~Zduf|vd@ z;k(g+kXx3RKd)af#7;1~bhC3XNN(5ZAb=UOH|%~G1c@;RFI~SF1mZq&GxQb*!Sk{n z@*`dcL4~~A=q<{@aAEm|ogH2T!OY4*B`-6Apj*R@7q&wXu-4fg8pjR-)y|sTm$eCk z8-2B3hExUCQjWcOe&YK;*!0kd(MR?Sr;++>QsrecP2UgO&zD;wQ^ytug{(WLmo(x$%Lp{?Vh9Dp4Sg zp8}!7yyCKva|0o&G(j(HQXpMDH3NZE-e04Tpymb)Do0B4o@q@Noe0QvL1Mg3I*;I2p5;+BH~AY+4r z?(j|l(7?KlYE|n1xC8muceMa__>UHls?t@KzAv|p7{GK|#Fn7M*%T~R7aa`pK zJ=Yv;bN-+Y1U}g3x76GR3Kq0GviE{FIJW<|IK96&9E`enbjukbROHNTleb(5Lk!w~ zl6MtCK5L4)O*0|rFH#)2wOjyk)n4oeD+SQY#iVaTJpl-YzdsW8!V5;c?yjoy*b7Qi zW~|$K+zZ^AmclY)FIZ-x*Ot4_6FM&yOdm4Z3tByGHQP^108cabk{&?--ix=H^i~nT z_8O{T71X--9PVnfskZrtU!jv^O7EQ1DIw8a`>Sj(?Pndrs?64YdHY!v_xW z&l7+`pC?_9m!Y5_cni#>Pevj7bC zzW&tskpN_t%Xck5EseKpa%RD@Z337e!~fiHjR2T%RNs|{jcXE@SmkjSygz$;?x{AA42t&PJ?4Gkg2-WwBJ6}u|0^?p{B;R0A zln{8g_H@`DD1?uiioM%J2w~1BvABDrbewqNpz*OyVj*k~pemFQ_V?^!*fCQGq1vtb zt7i)#dGn;F#Rby(#Q3|RKR;zejt~l{X-%pS7F?woOsQ5my?=OVq7a%i@6Z2~CWMD3 z-Z?%egfQ*yl&8Vtz2I4)>AVbYC+Pj!OK`|~9z5G}dfuiD9<}w=b$j`o6$#S(_;6Sx zN+DD#tUCKJL_FQkz=uTmt0Lidl`M|lb%`^B!Oo9%@#yZNT_6MP|z zkMn9g&Qb_5R5LV3>drhbOt~}j+I`#S?Dw`N_hoQ?%uO?4Z9U$0Yf{hx6KQ>Ze{5#1 z$3$s8xaKXt=%ca_n0hc!r~j++Q9@w+W$n4HW;a24JvFKyZL)bncs{G?)xPf1`p5WR zp8i-c)k=DvsYgt?GkX8y;gN@er1eZW_qMN_H>nS+tnLT+2w_A1mB6?~LQp6)f0Pj~ z1m?an^@8f{uB{eA>sv$CSFaI5AC8x=XR#3EMl~K}vRPUWnflDsH>RF4dXBsMbeAR4 z`o`!T>yJbn*)4>dLI;c35+U?fN#5E!O9)K;wKEcB%-SNv`LYlKlmqXDz7xW$evwtS zH-$jYn}x9EliWU0UvGH3yZ6B9!@S|ln}`|W5#DfQn)#WR2HtQ-K&8kV+TTp@@zwQ) z;Vac93?JeRV?#zI^f&T`paY#%JtliY=H2Lk)T!Pe7HF3kdwYYTzuGQ`Mcz<6;(V;U z2brI(%OF0yp(opFOrt1ocq-aBV1|!3%+#3EjpgnQ9Su!CD0+H>?Fi$(BNltZiK!d2 z!cTic*lV+GrfzSw5F(6f*RYQtbbhJ+2j}H4=N|awr>*pgYVqkoMBG>kg`$U zea!-YC?8OEa@;y%ha0zPV_=y-GI=s31jfV_DCjIY|BRAL(da}E{Xyjc(cU0TP6 zO*j+)58SUiW)}y*jr8(98}b8yYIV=A2!QEk4(ycU0pLIRcF~He0GLpyo%Qxy0L0qy z-p6m1jvJS?zi#@*Njfgwd@!%=m?nX6Y|EMR(VPGnx8cfZN5cTL`vicwWI`SY?Hau^ z$mtUZi;b*}w!II4Ho3$1e0mT7mllq?)38Axm;`KIsy#jsj$8@oU1BdKZ7&Lh%cb24 zrgaa5jAl;_cZ>)G;mX$U()|MAp2m^EYEgkOzn|&;UXfD!M5f#NW3vS$U1Nr?n3)#{ zF*DU7J(fuA6fF)$8!YBY!wD(+EOUNUAXGlH7_3$J>OZM|=U7G|!>XFN>O_~S6E4d;1tCWHuO+6#|k$w>D z9@uf<=UG9(>5*OXY-SKFkz0BB;*21)j|Kr5WOiB@5CkK3?VMMhDz%$vO>|xvwj&5+ z*OtbgTN?!953lx=FAD<04>3dLR0YBP8ij+CZv}x~j4r8R!Ehs}v|&TJU{G%Hp&;^O z5IitHY4oH^Fc>E*`A^UZ2D7{lVNv{Ga5U9w#YqT;rAZ2FR;32RuCQEfQIPaJG5TC> zyg3-IxyQs+Jqw1Ovs2a|tqF#AoK9UzE(U|7nY$1S`R`7s8J7pc$UxaoHP3@#+0}bC zqsV;m;5^H7Gs%3eX|z#s{CE*i*1X(lBDmBgfU9Xn=A-#qnTNO{=%#INz;_ivvU2~$ zFCs+XE1B?!;K2b?lcLpRzS!@YOiq!gc7A#{R_RfTT_Wf^lCrFj@J#~QzIR2iZxA&z z71i2p))ef~lJ5}$+|H4Uq6dUPpX`u?)FC0TqsLaOQ8Pn;8Wo;*3qgBf2(){+`^2Qo z5D1ZTzx^;f1XeV7?E9%G1cDkUjY~Ne0u^U{r+>H}0?{oxn4JC)0+Pq4YbY!kF#Kbl zYA8hNu5mj$J`^@MQzOJs;4Xh;HIp9-dGiZz+$Z*omKXI(DvCm(r+IKVx0GD>#DzEi zL?|@2uX(-TVklg(8@Rvs(@?ZWhJoO|mH0@zFu0{%l&qkub9Ci3>lD0o*qbb9RbDA+dS{uTq(Xy6T*OOhB3ckq;ymbPUKy^oB{L>l6COdDo7Awir_lp8yJ$_j%yv zC4lH+on(2I06yP2Fn_(!3k+9=_kZ!u6XJ7vMMYLXt=`2r&%iOA{Tf)oN75;px4R>@!^%uK!uvn+ZpU~4=J78;RMBvsT4Z_ z)vH`7nFl$2<`Pr2be-g+W5~#UQypPs|DCP@kNBXmMWHG$oDVA1iC4I7`Os1=+Hlf# z2hflhSRKIr++D{(uk4|bM)_v7JbUQS-d*>wxjiiD_bwo*wLRpO4uAWi!Vab#8%=7A z9cZ;4I%4NkJ1Fh7J1Dw^9V|WW?$Y)#4=C$W&2AnXeD6*y;5^8cd1-exfCoknN4K?` z!Grgnr{bR~@nEmo%je5`@nGger%~%#@Sx$QF$s_F+JeQMwIwaj*}|GmovKv#+5%a0 zN_eo`7W&;7(|ylETR6Dn{zF?gTb%dWLMOKr@$EjgFiO^J>5PW9kT|ULn0Jj0jLb>t zQGCP(B-6JP8%S56o)jC{m9H^tyqOKGdeQcTi;4}%9be}^sErNu-Z4^6=B+i%&X`T6 z@YZm2huMY28P;g`vxcQ}I`6JAwuWYxs%nh-Tf-*3?fNk?){q;Yy>-JyF0PMp;XXCZ zOX1@E=fZ#y4#KOmxgdYHvz@~TE-Y;*E_ChBg*QV#UR>0U3+AoTq9(rOK+#>zAx*Dw zp#1!vJ=gYgpbPJ#oplKZR$ehsIlh*I?I8y~wW0><9JHr#U>JEChArm6fum=(ElJ{_ zosR=8k90$fx)w2f&xO+Z|nl$D>@L;OuSOHm-EG%1Z1^HAnv&jmm(e{N1D@ZlhzuA3) z73l5kG{mZ}6;$`GiOT(K39X9PrM13h3G02$>^GNM!qtuXANHkKLi{eHGkFe{ux4$A zm2k2p9LlnPIAN$I_N$g?Kbwp8vAJ+u(3!t-$6T-#Cu}NQF&EdB=0eAu)R=|7b738+ zMM<`EVT7hRS=y3ns@2z+GZ#u_U9KLVHWvmj?AOtTGZ*Ob&0L_z57KZ%A#Au8(_f?RV7LXg_%GQe&#%rKBk_ob?Wgf zWwjM(z%VV|3M=UG^1>kHVk@vQSW>?6u@yYsem|w#O{wlc6_Wx7NG0etRh|PDT~B;) zY{`KZ)H1Uo2O8eDK4aXI1I4rYs~#G}!F6#C%nFSaH5<=?n4UW6#bz9E(Oe~e%Y_5V zl8V4VJ2(gJ>eAy@U(T<{Hn{jN?LO+XvI%=5S#F znFU_lz=e&MKJ2b8;{sWs?KrC0*utvsMf8iKw zIBcFet%0?5ZT-vaM$K@oAy{H4w}$hF^oeQ18lHDecrvxxy0*T4>L2_%uCooUzuLf( z%}Yp+Vgtk|e)Y~m8^{z=D@isWF>9W)scr8Sj@q>}Qn3Zev~0F5ENMCD%CiJp*s{xz z^ftfUH@VWvQF67-P~YOI0Ra_o^5s}3Xb;bl?VzY7 zdbw#(I+|LcONG@(sfEQsve?2@2`^iKg zlhxTr-ipClX7S4!o){#<<2e29f@PF^P_yT`)p6U&NMJzM}$F0Yy#abAG) z^BCwWySn5dm})yZ6zlHYTgf1GYN=*&L2KnZ?TPl+hi2bW?}@| z(IcSkKm?qavYO+`7|O1(Dc~L_*J5gUD8yNZh{? z1@_eT1oJ2;q|9+CQ6Mq9osWW&eo7^>98MKAK@sIVc9$k_kx+kj+b% zLzl(C#+Kt}+UPB3xl+>G>0vMD;3nn zjYY7l!;5Q*4dUVG1s++6i-+?!sSPCY@Z^)v`dR7mAfCB%-=p$)sA=c1ET>TdI2S11 zbsducvFc;DX$2*~47t@C!Z#;C^MR{^mOW2^=$)peLUl3he1B`FBY9pnP-gQiF_?1) zmo~a6h8|(u z416hIxMx~fvR?`$-n`Xzqp!#^h+ktP>Amw;h%HjrH&$LbP(Mt!vYYV9zGLXum z3|r~Y+0=F1@fqnr+XK@ftV0|1k{#)=bK&v0>DSYth4zHQ9&Iw9%F%YltZ^A|VfTZ< z_JJ8N_&`_LZfi5ZZjy3M`>PpHZj)qh*)kK%vm8~9jmd;d-FMy?<&lZ&ikUFLR}d$2 zF%z`HZBj-y&4Ptz6wKZX&VsaSpXO-UW$9<4%Yi#y)XXIZCQePaZW)>biKO?B-@z{lLMCyS1S1ma-eca;{ncbuRJk_*~%0v@I44%Z0ON##gq2TxdWqG=rp=*X6?W8KaIqugrn>3B5Ge+|0&t zeKtJnN9|0@26a)*VuJ}ekYxI9Oqp*k?4ll5>s+8#J;5?q_u%@= z^i4UC(%Y7OQZ*Oo@nJ5^_C5T$>Io@lVhx&-odd^$uHHY#=*$_dj3yE*C zpi;T-Q6r^n2;f~?^}sY67Apq?t|j?UrnUui%ZAK_$!Yd|vvIvY8y=Nx?WHj~8x{sw zK0Vtz8>UPq#;y-p@cNjTHH16|He@s!KOqaqWQuGN%Y-8<4sDUw&IBV#z?o3Qa$Y^t zJ_{t>ZblX?yEvj{*xO9ly#EN9(PY3g%gvfMQZvBw@~-h8UuMAMxo?$EhGoJv-Os{{ z>odWt$%erZCo-XB-u2h6mRT^M*S>+*%CdlSTqab{+^0sT7XR}QGk zzM+o(V3@d;3qL~q`_L#{P#MI(joR`i-|7n z(!uCrFaEH1X%K1N-(Kl)8j#HfGbhNT!>SB6vG}J0H7a~T+FQfr`YY~UO#`a|M->j0 zq=CbUcS$xI)6l+^2Gnk}r`e=kZgPKsM|2w0ET1im4o-s;ig#q4J<>pJh3x)5bJF0Y znh`HXCk^5n80?81kOm4pDxO-g)A0Et?LEJ9yWmzqvmZH1BqLFJ71m zLlLOS>K;{nF>d*LN;Wfn`Pm?!6MHK;J^0CMUyFfcwr; z-)&9`obEdFEl)iKM(RoEp3dPo{HDWk64yfLy#3M|Z6FJ5#t8Rl=8xZ7YyGLE~G zVZBdvLgTH;VCqb@Sjn(J>uJlH{A37TZn;%1HW^&5Fa6{fkqlFI4k67-_Xd!|WXXOeng|D8mrQ0SWKJ}nVqa}Vx(+aeJx z!*;!Rbytl0ti{l^iKU9SofvfKjvt)6NA3C0UJN;NcfI89On~7-8$2x`;}0EC(DmKE z39$Q|E?J^WfMLUy_g8)z4<*m{du|cMgQ8?(c0Agx6X5Dxd;L%836MH`@E*5y2{2@! z+r}1G5`b*BNFGhbG3Q+*3;A%m>~8zXBgL@nmr>T`x@b%T5 zk<>;ERce$4F#*V;Xvfnx5};yhVswp~7~hA}7Jf7a%T!DoQr zu=Y5jAKW08X)(mMwR)sIKH5h814s|kS%v&2sx2I=^RN1y)RD; z&(0JN+fBk*uzVBQ!6b%EU1|g*hP!1))WS5xaFevA3;T=V)tu%1_H+>gyTyuQ$A^ib zrDTCv3_E$oVyg0#^%eiecdD`+iFv zh=J-QPLgrpS%cg~n&f=*Gp{>`-Xi&x?0*!a{a*|XH#psiKTGbvWM3mm-E*Nh@s8P(8-?9NIoh~X`g)} zjo;KGYLe|8F^Fd;x=g4N1EU9{LUh7;jaF4V+b>#1?kKZPS20;t^j4l>Klj@}L z!$>(NC>5=Fe@G0uIuEAB9hTmYBApY?dv}VV!uX!*{7qsYi^sEy*NCCtq7}EBtP_J) z-nCfLWPqMzpdbdLygkcLkop}?ZT}XFfo$&U-Y!WDSHcwH)yVy(Mr)(iO2Zkmp}m&M z22vj-`(VT%oL{{*gt#;Q9vL4s+_^&PpV|#DgT&Wl>*k2N%fz@&K*~d62O-Z%k}a8% ziQy8X8CJMr>v>3Mqnh?FC> zJbG0OOgTS%*JwMJ+!sdE`*=xx*}HUMZ*qTj#%bF&yicABi9JRPe#?~gyOMfq^W;Fs zM^DAjxns+4TbV?dBH6&62tjd+I@rr6!o3$ex-@T=2u(6hZoB-FlwU>BR5?<=hI`}> zRwwnaAkNJAB&nB-ruPApau2(FY439}Y%^16IQP969&`4Ol4+L+##>6V+9)K#mfTn} zLnd~IEuwP2H>BRQrYvQNkdsbLpb|mtU9;1%V-w+H{w4BejC5Z0sag7H!X_(k(zKF%Pu~|bc}*fr()8%?swfebr0tNg+m#4%l8II#EI(Cc zEl=Dx-|W&XcWok&MO-o4$?1X-~I_Z1U=&eKMyt{R&J#5f@6AxeTZcXWDP zUzP-tZSI9hkZeQsL`i5@NUH6hB;DD|Bsevfda)u2?zQz5dmSh9&9;vQ=6^_nX>&`D z%6CbI2WvW1*z`(NQP&WnWHEf$jce!ut(Y-`{%VML%?K6e`&4M|57qYmI+@bgJjvI zO$rPlZ>cEuNCC-fD4kQlY^_}#oYHX;DMYfNA{D67$>xYuc-U@rW3Edo?i)%4 zabHj6C#zCnXu~=2Do0a6BXzp-usx|@aU*3>e*XWX>n)?&+P?4ay1To(QlZ|?y1P;; z6!!w9SdcglrNupgQg^*|cXy+u?(W|I+B^H?JmdQt&wX(-l9b5Fk+s*F^D|RX?AXa= zeN$3VYC}gS-Of~;y-<0=trw{{VPA$uHK}OIYy+24QE&d3k8|lhHEWlmUK;fCY7Knf zEe#p-zRhgaCJn8d?x~nmD-8{fmi7N#Hx0CSq>f!0mc3e$bYpB9zCAhXuOF0#SF`#x z&1szmwz?^roQ7%V>yi>G4JXkfvg+$JOtw^54t7n$+97Fo_7$e$)YCOV@h4N^$=Z93 z(r{|sy$Aj-R0r>yG{dM)!{sSeoN6ve10R1+O@pp7J0R1{{mNeJR(GnfN3MG-j%@8$ zA|nkIxUeP-IqetEw@*#O;<<6J$5MZy{rM@QPFzbv!+i}5J+G$W^Wp4@E%&A2N0)*w z^-rXMMCy~HUZvs2WVfz)Z_>bjo*QXm?wN+)kJ}Bdbv6yDjUP7M@i`5RTHb1TwNg5| z@j+lZ9?&W~p6c`Ly(dfkZjcV%zUxVkS4>>3nIiW+Sl4i-eL8kAn-M)8^^OVP)4_Lx zQR#?ov3#MkO*%F;YF;wPKOM^gsyMESPDjOei>enzrK9znc@xV=Qh#Mf=hGgv{xJF2 z(($l4s}$3b_qJrh?W5^v$CihM^15Zl-IkeapQfXusldbX>4$47{-h(F+zH(qXP9q? z9nYs{G7$bSzW0yL8A$YI#-j{os%yAwVFvhEFd+jydE+PppC8PoNrn9Qkn7XdZrqT8 z+@7Cg$pu0J17ML)WohC{>&8~8{}RG7QHI&A5;L*2thKuN+Due1YP&qRmI0G3x)+aU$za7N%Z4LJp-Y&_%p^gCAKau_t4Iqh+?x&u61V&NlDa`fPloDOvS` zY%zDwM!V4-0aY(%qgJp>(~jS>k-+R%^>WaHTr!)-&R|6Y`-us1Om%yl_!Z7wcts^_kvTL#rV1V8DpTX@17_hI&_~<2*4B|L5pu9<74Qj?Tan3Mc za=j$ip1TaFwC>S&<7ESWgdcW(b>AR-8U`HEI^Eb;+lU@qs9?kiS}j{mGm8Dy2wzq% zYmD$H7k}oz)kgf))F5jA-ODi3;_m(M1Q$OD(zS?9r2Kj-1a zF8zk#hCDEJUW0vk=$ra*&6an02*`buf2@8!PJ9?ft^IrqXY!S4`EZz5II?75J}g@? zr&_+~`{hHy+AdX=i+=EOoMG~+`OD!ucJTPa`sFBgnwFKvmxG$rRu798;4`_0F83(F z!&&PdwD^{U2rt{afdNVI`gDAZ?Y%@8{x#X_?@H^k&Lx<17k4IiJ71)ubwka{Q{UI3 z`t<1ldz&pwVN|`L3S}u8r4_c@ay}%n;F+xDh1I~aR|)(l%19*jLB*@g@T6`RA|M+D<~iC~iG1)F`Ohnj}{ z4SufxiN3B`9aiAmX(p6WU=cUaDA33zm?YZ@OdFW4{5(N{z)Q0doH{A6J3{yFPh|ym zO)u!Y;X@GonY{W&5C)JMv~XJxPL*Z?xF9TO!8(gUNb7N@_Rj@DU~Z$r(LqqG-7w6u zbr6CAFQ}iC3lj5*K>V&-u7tz$Kydl`by@$Mwci^p^ z2s3GwQ^P(8b+|Ah2%pX{A-@7#M(CqJh0(v7E?BR?>7(n(!K}av`|~}%wwCq6lHazd zUI~@`g)p<8@d>&2Z;U1%<=v+5W^~k|ci)i9QKhtK)&7O8i=PI?^A;ShwN4G@PMU3@ zMtlFBRle*|VIxiXdOcQ(zI+&FawA0;=wP2-M;{8C1vA@S{u6>vk60roMELDVms|7d z`_AiReRGFiOfesfyF*@&H-1u}e}jmh^KL3IpJM&Ug`F&$1rdYr0tw3j5%|7g< zz_DeEzV#g>>&aK=Kcb100_7hL$U3-Kfw*nc@5Ot|zBB1}llJeot>Z5BTcg0i*Es_^ zT_v44uYVL6eqcw~&kG8(&V0njH_r76hSu`@ik7Ni>{}OAdVgLp;s>(^XfW0$mp^dzLNKJ`dBnIT zlg?C?&kv^leh4}&S*RN^B1H7zLy&xP`@Xx&Lg3`_+(~H&f%cFkIgw;Nclnm(=C3vzK+t*9NmrTbR&$kv~%CkxjmSB_59*SaE2O5{ugnn=!sXi4D1b zw>~|g1XJ(TB+f-3Ob~Q$Zih z1|}-hn(a=Ob+y@t+Ot-`-cw$5y{Or``O+O~QNO57HkmpajC~*8vjh2h--NP(wFaZO zAxR6qOueSXCB^sdQ*=65lUpxkJOqSnhCGL;1eEsd{ z8vK4ZHF?K>8&IzAyMK>#o6UaX^|d|YeKTphoa%k2Ff9!KnlnLH2*z@QKlu@6>+CwZ zC@?d0!wx%T5Dt4Xl0YDaaKlgly0bCozyRD)Atq$UC$z+|M5ZedV_0JvJbf2!O{m8%d^7W8)df_-Hux3jh=hn zt{*+#8$YT|kDFiF8zjP?r%&?2TrSA=!up!2k7`FQgb%YJS6hf($9@-HOp)R{%Mo2xdAZ_XVx2B)H@U*!J-yP2Pp-m0>n40PZn$%&^Qq!{+=MUJ9SilF8jQ1Y zH*;7_b%eV(&v+oF2b+X>h`PoTBW~!4h~X)G$}-=>y{#!e1sgKa(`=HJ5sqpHs z2zB^?aS@6&F{0YD2c=f{f~~?=fA&SLUtCJbfs5gC zdLnss7o$B@iJKlShUI_jI}hmUhv~k%4o!~mGaoM{vBvg5TYtRRe#nl1H9>{V5P%EBYVVF(OFlCuDyV znf*6U=%B#RHud{f3|63GFjM#`FgtJS*%q~eLFUPn4GV(BTsIh*k4KRcMD};H>DqCZ zP?+?pp$LE4k1lax<~r7-Q&kF`rtJ5~oRPbB{Y@p#-`$Y9qMYovZyj)RxKkGu9>tv{ z#hMDYo@eDg>_g|>?cMwjk5hq~Wpz8csqneCv08EBaoilu6rbedFYmlF8@3G~BQEdvup> zKRER6L41myL~qzqm3R>~IgP;tTmYvX|?v3x`zh2OS#L?7|(}7JJ@}R>hziFr4TkEiR z=ySukK01*3!?zmwGfI&gdWM4zbNLRS1HWwFC5{F^Uu(_&jpFxjZhh8W){U8b;_^B# ze(CG#Zs9ugvg$MD(+M38|E}GARvA6!Hoe|(`(Yg>KPWe~y}u5-zj>eXS*b&|%dF;4 z+UkXlUyln0qf!&2N4G5w@lWQ_Ivx0>_xD$!6{-&Epp!{ehvo92E-OV@K=&_zCOLgt^h?#QZ_OI!BaLmnY zJ-QbC+;nf1Ud(;7iYGI%Ac3H*pumdH!d-%MCD$z-I(32P=_Xk+1u}Q(cvg{$Nd`WuzCX9 zGjupMprh-t-a2&R11KFxyqffx*5SwLQ`MfXL#tp$EYU$Tt?B4{eRWvsF!P;ve;ur* z&93D?MZPuZICTgNu2$kB?LQ7@KKj-FEBk>=a}zCI2H3jq_^83H#Dh;84bbB6n=Lfq z(4tMlsylAJ(F%Q<*34Nk%|nTo!Z}IAJz1mpk=;fM|4B{ixJ}R^dkh-{Xu+sD7td;O zxq)_KxyCwlJvgYJ-xDpqH+=Kog8pb?>!Ui=yr;&)CuNGvDcEyH~x* zzqIL(Lo9J&$gD#m}ZfwQ)3& z%`}+JWIAuvD9vmEjWxp0L-io36ZTu@5i@8fx6r5S3h&I=^VKRsVQYFixCxWepJz0`PVRq%OySGCZ6tHIRk zO)IL!byI~GtS$6ag^#IqzKnURLJ=FcK2!-kIdNOMS^2CXZj!`xv7J7(tszQ2pG$Rj zx9tU0J}QVOGriuNa*L?%(x)>m@l{}yrA*X;Zzd6z=rc+A_c*wIkTd1FgT*iaO) zsq&IgFnUyVuTap*dfS@Tp%`2+Hfdjh?Asm93#MS~80Gcfl0pS8m1N3LdEKn4b}GUC zRS-rvb@2{b7ld@D-8aUB24OB2k_JKQXGr~vrI`=PgoFhOoq7NW=0s9jnHwhgy-j+~ zKrsgi#5gvV?;eCsJGW6q6$lz0l7J}?WP+!`SCH9nJ@4Vkl1oP@%zka@^VIlNYI1C+ zAk60m${;NFSyiN8FZ;YrbvE^Pc%4a)FOM)@I~9bG;Y>LYgdxsMVMFg@dnfN~8M*GU zdgMW+Z4f36V#JLg{MVd0N9lWaXOo*CO!jFMxV=#BvpltC%C#VL=MByvw5|TYrc_)I ze%$zY`pb?WOkwh?A3<2i7qkl8R~Oe+Z7uf!q`rdGpOU_>^mr0GJ=RnprA>k1&Nv0= zkF7rj%Ka^4H|8W%;NO7C^;(6>k4t@m1^hxI_s43nG3#;#q~|5hjnqeZ%rF%x3bg4R zz0NX8_O;Kv-s{+-JOvKyI-n@rsQ_=wZdD*Jbqf823e;*=!D;*<;y?b$tlM_K0{xz? z>{Dg0{Jhl1kly!y?@O=4?Fio#U}pvIrvcc?+Wm*Th5yT2%wzq{+d=w1CO)77X$OWr zJ#A1x`X0Oun4!Rah6Bn}K)Nq|Z|UD{+i+=-AwnT^|HS_h+x36@GSc>!c$bT4+O{i7 z?$?ZC@{2_ZH0+eM{D(dLF6Fz-yt;t60qiiEt$?<0L|Wcl`SC9Pzt(l1rojL9iK?^Z z>SP64T{_b)WsZC+y`J>?((9GmIFAT!3P^n~>G2_4X!L)12Crh@#f+PwfPu9;Y!s*w z;n8fKhXQM^A0~p4+&7f?N7D9@zOS@hq}x8~7uyzUX}bw-(*JH}Y5Rv{UrjB@mVbw0 z-mh=@rpx`wCv;ZK*`h%4{4<$Hwkym$EvditWb1&cZ_g{h?chanzpLBOz->N9<-VY_ z|NZZNnK0pF%dle#gkIb_`^zqQJtOr+mol5n1G%p(z3zM3TDKp{+y-jm(BvW*SZ~s|sq-(>ki&thtSngArHx z?(3>a!RT9g3YkEH5yCIT!FaTy3@KfLafzrmDW`)m?1{~pjyHnArf?_E2V+Lp16Lf5 z%YEJSu&BUSzk{J9b-rWw5G1npqjiYTfw_YA;K3->$|uuVLiIhb%^^SLc!bzTS7v?ZM~_X!XFtb z^zETA`5;3PQ23r4ZlPGYAtdG5A^G|y@yZC6M}X5X;mZs|g}}H zmIE4OZo&KCd8Pj7!_0juHceYpAYYdyj+(=(`iHxn2{ZEvOgd^M8h#D7%kH2wbKAI` zvZ)eni0XFBS_$7T_KCkEl}Kmu8?6#2$qn7eUkQTeP3aP+1ak?zx~l}iy>2ZorNXmE zw`sDc1asY1e;}`GrTRqT+L`>B#E*1xzSO_AyuS74U;`BnQ`Nc^#G~u;X>H%ZD(wGJ znI?rQw7r{hvb3{G`1n)^;Dw3`OUMPV!A2!?nJVxx4fXF#yj&G3zAZbzLM8JKGS5^d zbO81D{=Oa+eUkWlp=*tJwDnvi?AcvRA%(>+4gobLwG+?Aj;!C=@5GqZLhzBk0 z#MXwC%{nq4XtZFQ7*eiL@SuJ%u5u1DQJCS6-R zP_9qi4s54Rto--?7`A7Y%twsd`l8%@CpF^8EtxP@u5%e3VHwrGXYJ3OY!*P=g}m3D zpM=QwB`zX0)iWQ`=QQzOsZT&uwNn6MvHb=T!;@@h14@;{p9C&kDovm z5Vi2h%60qj7>{SaR?FPZ!ph835ol8ZZ0E~XfTXi z@JXFDxPOZoWMp1tq2cSC{!@q>F_#g8s9(WkWeytfvX}Uu5}%Tw5m&St;!-kfO{NCM zy-V`@QoqBbZ`2@ba-?e5Dh>AE`}1M`b`A9Biq&;Eqd|U)iEVGaB+e!ulxgst;f!u* zz}p#DPt!|7L43XTg%F zBquFu4Vps;PA!~>CVeqQi?JbZOa0oY#p&Ajp0wDnh155B^ta^|;}tEcFig@-ElAu& zjWp`hKg*B(ub2*d$c=WZrA~10boe={Xt^t`v$f%WsUpzfOO>6&j@Z$hd)58-nn<}{ z5ivEmx+nER-dmPB;YjOsQy)-=9!yU5Rfk8>G5L#X>cQI;mU?_D&Xme}bPgKO8Qyx> z>E63MiqvD@Oa_qEBkR{%QUdF-U~_m(;T7taa4w!6Cf-;$u3j#zU~4J+4_#hV*in5_ zI85BHaKV8K7kajE{7qvGjc`0CmGNHlE872otqG`QWMYz$2E#uyYbe3NwyoEe@vJqGs;`+f#KCx2-2 zhj%@?#NykFz_WuLV+F4`7PAj|QAr$&WG2h*9w+9UaR?l`5m6W7P>IR4#)OJ~b%^=8 zUWHbdxlMxc=HvRRui}W4?8rzwLD+X9y$#W;(erC->WBnl=#ci-yXpp_sMoaSO`-yX zpESVCabED)ksNIQmm4yS3%VC$+O|bqEjlh1`>(I)8~O_0v#-z*FB1BB@(-7|zGhy{ zMObBduK&bKKH_}mBl@L2V$S6ajvdYM7Cas5i*w((w^&bmVO2k7%=Z#{1$oY5;w5?F z`@@*8fz3Sy7s|uT?{;1HC;QDMcN}YS`$UB>cTr!-T#>eJt~45O6M7XlY})8Yl4DoY z-P?BfC& zer85bcY#fczgw5yF5no++Ag3bERoKf;po-=S{BdKLv*5VN{F3s^k8XJL z#tB<1WESsoQuceBICxIjIH<|bw=qlNN{K5U3;*zR#KMyce9x7C{Xs(UuJg5Pb+OmLGt?_-0Xb8 z(ajD7d#mp`!w#%_y?C%4PQ1T)!LGfX;62-k>z*xAUU~MY{m@qMb8H14+ZJW2urs5r znO_k==DlLkwkXXDDVbkzZ+)jrvz=_Qp$Z!e*_E^g8id*jzkr?KJK15{oR`fumbHiUdzkvV4&u7uD0qX!|KAiBxFyq7^o!htzQ#@T zL0nOqs;x~&|l56Z1dH6nfp*8)A#*&7duG%fy9L%7;;Ye33f2)TkOnS9h1+<4sP`ZwOBD+=1EA8 zOZ*+_)>Plv34fA&8+LNehAIG1L6S0YBMt=e+}( zl}j+%mvzKha!(9vAn#vCleY$poa2aj%!VB1Xx^WV3{$Y(QE-hN1t-|ie4ahid42fN zfliS2TN6jrN$^FT%-kt%V=Cc{5**0yY|i80nDnJ`Zb#e&2WrX5*NaN0PLcA;1q4g? z@qXcA=3hy3afy#*>hHLj^#n8Ra+0?_bVpqJ@O}5Mcz};{{1%#Z4JQ7-k2o*;LgEFp zRmIYwLAW=Ykt>NC=$CLqJBHRf41eE4hn1~oj%=A50c(b1+ZF>>h1}_$VD>kyzEzS4 zf8>jJ8Go$T>NL1<12yS#=P)u?E*SN(uzfZLr3_j;Bs3GR3%Au@**pU^!&c|^uAPp@ zE{w=RI{Q?Q0XOYZacnxDz@l!Y4ZHIHCFA7zJ48ZA#(Vv#>4#P&ftgaPmP-OZJfi}}h=P&EG6sGlF0xaL2^CH9)s`H?e1i{-`f}uo>uCqTL zs!`KdE$kAHOB;rsp0p-T^eN(Sp5p{!(Nw1*;#4d+o--o`o(#j&GzRr&cR%rQLo`hN z*l58IjRIR`R*R3qe{+_V^tY6_Zjm6k8m&AdQHBdaBf;&@zlmQlVNaUV?g-&ujS!sI z2*ERpK%Z(%nHz4_%QDwsUT`?{6@yCko=ThyC)PO$2Ng5*kCqL`9}jlo(+j?|9zD6> zSC4;0vA3XkqDd#97kn9+6Y|}Y0i*STKcfea&!N^5!R&UH9;X*RQ+dAW_H}Sa3*w7d zG1>BBJ-n0KR`ZY63x2j9XBkFgw_fNGXug;f#1Vn z;`fG&+?jB+JosYX-lh>~)n?U$Iab8c^V&XfZhQnH{^VG#JpKRA`(Sk0o0lTZx+fD4 zJqjg58POt2=xd_DRGal1MvH!EG!m!vKXNrC8po_w*tED8ZLaf8`h^(5OO1hBjlIp| zD#YRh!(Gpe1#^)EZjS}O4AzgsnW~ID9*3|8$*nGYi9^l>m7<4RJQ|;Rg5^c=I2`qy zR+LMyy2rPK_xqNBk00tMAi{ln#Jm!{X1##kM(T9Qx$s;>bH@q|e33xr~IF z3#MA}9*_%0C+O&$i_?cZN>n2j`8*h&bThp!_gfjT;mYW7Pu>_{ z&%tE|p+_@75jQVS;cftP@gAo4SzPJl{C9s1u(I-|S(g#T2ILL(^EC<%rV-ETvOpyA zjXYL<40vZi9;s$Nwla!(*@*WH+t$>GjNsAV?-kMKw3I4Qu-*O|Gx3DDZy;10ajKUvb1i!3)Fp9pO5yP2G^t}Nb z%audF$D1MLPNo`!KH3PD{<7?`5pKLNH-e8{tc^IlKYO@NX%urrdOuQ|C8+50{Oi}- z^SBYbjaNMnrK}#`sJhuG@_&pX_lLe0&&@L8`)>=Hgcvcv^}&`3nMO2bc(Y~n`aKxv zg5Gb%>(AQV2COQsT|Q~80SkH1lK~FoQrUOZfYA*{tvj~TfalIH{bCLp5bIWb%J_Q* zY(M;&5;Y9yW*V>wJ-Yn(>&c8PV!)*2clDz#8W1(to1`)ZOyQUl15A2F14=C&kr7zd z05%nC5T1)O<6ZxBE^a`tQ%k|wE=p}A<< zb@`ED^{5`Y$c$6jqR*5e`~bwk;DY}w4CaQ$9IRTorktV|ETk z_nLLicX$rgjA~GLy-p6gZM{Gwq8#uzi{u=^rKIx;(S;hd$brYUM$e5qh%dupwKB8e z{bu->(aW=OVYF`KCZBAy?e42SL+7nN9K4*3dF!r4D-y!cn4%GuSInId;E6Wktgldc2Y(3c6OYRFieiSjYg zeX<=g!Dac@nV?||85lB=ruUz?b#Ny7@e^q#F0eNDN4nnBdbTQ`e1$KG>YB8dZU=Pu z`z|sATt4lWfhXC+>aVfO5OZDmI`ycxKDk1N3`Dcb{=alIKHKKtrr+sM4_h^LYuOA0 z-!OFDM}EkfpX(})K2HaifnQ1ow?2rh*`FJ<~s=;D93ogQS4tqvBKWrL*tuPHpJ%cMOP> z4DDeC=ud`Gm%c;km<%o}X`Bo$6Ru0oQ~F4quSw|1WQo2>2;j!5L=1E|9bs@w!n>2K z;7G>Z^ZSYPnT*S^2!;X zBT~R|XWddTZgV~#CCEDzAl&= z5;8OejX8jWIEI^gzRxFrxC0vpRZl^i#>_dHf^(auT=$~CAHZ-Ywkf!0-G;1X^7nB$ z+v;WMTzY+;S3-Om9^99LDxJ4vzgwAtjc=KeHAU#;iJwMkhK)9-;M71SOiV#FZlFy8 zLEPu>x<~aGA6TW}{A!0{s~)D9d5e-?{72OnJ2#e0#gf%5cqtVIZ>Ee%1wW1bOTiQ_ zSV;k^j{DL5>O^tB_d5kIMt32Je+mLVO^+y~e^23Ompz)KqD)S3)zn6*7})7*#?!{B z__yH#IpoOiot;LG`cyoMwVim8eCgdTH7h--d8){fOodOW)wTLJNELkTRCM8>`cw>M z_U*Q*U`L^w13iDVv|-BbBvk19>hI=iaU$<27UPKOV%I4Vn@UZ!yYV#zM;W$^KF=xI z`qV2i-yg|^P2_WDhfV!dT&&tsH>#oh{x!HkI~ClXT`yJSAEshExo^)EOT{1#@JR)u z8docxioU~q2stkM@j1?ueE46kADmgfPAbTZcDtZ*Dx~fFbQwE*@KH)i%DW`=gQ3jF#X? zzt89V2T8kr(Ei2bx}Q@-{$~o<)@xiM6?Q!EECn~!zGO{KF@GOvf0)XJSgGJL9{PQ_ z9gen}#209EY2d2{or%Nr=56uaT~o#SEmd$EQ?YSd?A727UKB! z91U2o2Hg^!rbKEgBtF6;uVAuB(EiMGRZ`J_UyxJrv)u0o&km%bGsAOSNyX)u+kZM7 zOcnkK;v(?+CJjawYeL)u=BB7i`~vODgpOZ2rGZst#k&yi;8pkED;uVPrE%S;m4JwTC74M zZX;WU@6Uiqr;~x+?4P})_se47gbbt-g}r9EOthV#%?m1)XQ)PmmwvT6uoRv&WG6e`> zj5C|eWno+6X#tLPvk>WAzI%xdR1Y4uSa51a7RH@x;!-+13*RXfF+rUL3iW96Yjzfv zQ0i)`M;2^C2YkLubPI6FN4(_88j5Z%-%YK-FPk zp&ixVU5SdEPTWgryRt|!>5kChP zscYs}JQtO=IR4mODHjwHcKv9HTx3%E@1^HC7=Fa=>h`ZWFzJSJg^nl}dl)9MGI1Dw zA1(g*m;5?Op7*OJzoA8xTARs$GK?eZ!E*ss5TuK~$bhg^GpjrtDE)#|*ez zsrUU)M-1T0o^!Om6a522gRXa5l`&#bR7*W7m{cFsm4jFdt&@30XZUvSkZ`dZY_sC`#4 zp=zG!N9KWJe4FP94oV)P&wQvbd{Q11z3bE}S(+sTA!g^DJH;?Avl|a6a5w z+tHAZmP9FyJDZQeT?=K1jnEr-uz z^~n|!mg8O1ikF&uFGo|;4~K1=RyO{du^f$)EUtXrxEzbiH7eip=5kQ@YIW~&1&DgZ zgpCDw&rWZh3edFL^YOQ*7hpq;PF0-43PfMIKyaE0aHL&1LX{NY`X75r&|D$v=@pn? z{kK=^{wpwsC|O4qtU!N;Q%_zYcqc1Fy|n@gO0T|AeI=Bhe?I40u7ut77-N>pN(}x! zIj{ASm0)M1x93*kWXcnEC5FjYwhF6`kLw*ZWEI8{t+Y|lD#SC)>H1X&xo%0;iB*EX zvl=ZY>@7LKbv1g=_;&K?n$<#IzFOp7ufcThz#+rk)__DL!MSVJph@>9!zNqOb&AEu zXVCSO$--}?0sUF>Y#QdC{$cm-SSl)3&~}fby7>*WcW0zv*rM(}Yn!FuZD3+iUShJy z(M(3D!sCo;YZA6G3`IBMY;gf(B0l|F({fb5L_CZCo9a&UlWj8@k&gI!Wf>rh`o$wp z*BP^CDN6aB&TnW-{6?O?uoUN-4cheRK!V8CO+c?fiGM!zOu+c~{sr1EODKD9CRrPo z;5KUyABz|HQSri$5GV4v<1qeFT_Qil;`a>IyIx+gxPEd2RfaKWXCIQb&m%_UtWy7- z;UCq}$YINcw$Yf*f$vem2OA~w;v!+qFxZc`hHgJZ9r|49^-ZM`>#5xH~Y9G9{Va^cH-6x?yDY5Wl^iS9)^W1 zv4;F$-`0?WUWXP$pJ_n3Mk_`!GKCIgUiuV2O@|#FnITDsS(JWwy`Jn_l5&)6dEkN; zZ-?Dm^u=C_sPxb#`Q)48ajCVncv6u$8#S;XO55i{8g%7BMshy1lxJ@>|s#Dq??fSjl-kFr)&HtM;M1Y4^*X zQFBSRdbah9I}=n0zT3j$dT$jX_b6)DZ>$1K4Xsl{W!CRLufvkGmDoAFOCRk4C3xI$ zrV`uld2M?XuEh9XPyfF3k@dlne@N01k7coQjVMRHC_<}ir$j5FX7z1BI^doRG^Z5# zG)j@bq=YF)L}~VuNgNnPYx}lH2@>h~_sCa5^2vrha=*~2ysQgu$#7pmDs%2Nb7@T> zo$jRpsu5v-$WQf$UC3pBSgkFediCm0`Cpw`vZfXsgWR9ygq$}=^Gb4C*0zikzVb+P z;o$lRm~u!-2RJii*n_QluoQ(~P4s5}D0An1iq|3~;9AM2&9&w{coRoeW7e5UTm(rU z`|#=X?!~6dKC*D4H~lQDHtUH^`46(*Sju5L_IFG0$4x3M_a0c`M!pJ~hbPkZq!6!x zbMVMOp=752_%37zCyI~Gj}XnFs> z&2acPRp9Xzg(@>|$dtFDGV7_|&VQSjUrY^Yd(jZFdY#&85FGGCl@4nBa4pO%vXJ%6 zlCMwl`I+=fvQGKUhoSuj=xDniO&Xn-ss_hM{HI0({sXFE)t@;V)wn>Zdp6J2n9e~# zYV=^X%1@+oW^&*f@_DA}$k#Ooccb$U4<;eM^Ujz3rccwLm+xpdBk6=qdKlSPY0`7i z-!q*4UX9>~Y6OQ?gGyy?6khtL!3J{4*KVlA84YPc`)R>rH|NMcPl8I%>L0De%}I5*74feySIF)Ou{)%z*5AFm>|B(|Ysugu+jW@EHy+KVKSd&I9@RvBc~AX%Sdy zWm(R559P5uDMM)QNbtDrT2W$t6@_(C05$EHjsF`!|)ue}s zV3ZPz|5CtG1(ybAnECKaNnKa7T^`D|&9j+<0>J@ag~hKd2exas9)an$`Rj@{q2Fw` zeMK%?#d>^)(9LPU((LCgSHa&h=(O8z@?r4)T&S7bBk5Qr|J&xMv!oagL_fBi9T14a zwHU}b0NmDo*&nl+U9_9O$Z7KvI_JegAH5jMN9dNAzjG#`;a|W&N3El>*;|VT%IpYDxzU2$L>O9b+ zXHL0?13bi>*&P-x&B?;#F7(6hg0tg}s@%xyj#7L;=Wf>3ts~0ov~_O6f8{20Co(t0 zG{1Dkv$({=dr!EEym(jPHLxfxZrDm^;mPi@UeKN4N}svG`r5Mi zMHcReWo@$nchF9DqVfTEv}?bq*osOrXGP+!6z3OYPmzb_DL4|I2w~&B!3zMb}BK0WY{W+z7RVx`P^65hHGBtAN`2%vUEXRIp z!Z5|Sd)N0nVPI#SJwu6$#AG`=Wj>O`;gI}Bro2EEc>FWfY4b-l+M-@8^D|PLFhHyt zH+sJ7Gh&nm?UUc@<|{Skx?oqqwS@mpke`Hepf%XZ;@)czr=t3?$CWL#V6KR(gJu3j zvG{?(UC77rIA;S*OsF1an3;6hufgq@x3#E0aOcJ3ayq;$d8&UzcO9PnQD#}#>Y$=7 z@D1WB{k|VU)^(XjA>|_(8D^rkoUim?Co=@=F{$j99Bbk-nDQm{LZ40gsT#GYG|;1e z9`g|8VkoM>tU<+ zMTU#~`fz+ccw)h^)!{Jd4`tq>o?!%*(YlB2c2^@%g~dfTj6}$PkN=z2FA}xN^*^>| zNF?auN(6&Qyz>p&*2g{);R&DqVq&D=c1Gg%%&q6Y?~g=6mtN~@m5362UHbQZ88J2r z{soT9?@g2a7KM9#rlx(16gm)Em+`!wNWqhhf{AMuE%Eb9c4~+taK2paZTKJ8lA@M3r+}LQW^`AhIrqLo_lyaW> zFra^wI1fdO^KA@*E!qzn)cpVB^B@=5lpE1lz`^Iy*lW#*Oi_69rrgTXUFmaw@*OtK zKN=Ua7tjhUT5xcpvCeD3qWqK5;`|*gI7ZPZO|JBG`zWFFjKq;E9UbdGj6|!7X$RNu zi4s2PXu;!)hR?sHFD|~I?ZTED7SZ74gSdpDU&b?^iH;y*HUh%uBL@62qt({BR{wa1J9;f*YbEh2BB_J89kiV_eM7 zRsoUV_T&bUFz%X2o$&~vpCzt8_p?M`)Orhw=%CN@>WCtr>K=(JniWwqZQ`qN3})E> zT+$WBUA%CW?ki$Ho;_n5A?7s^U{tuf8zOM{cD?=&T1Vnp@lGFKMMT1ZgZm@VGQ9Ee ziLvYCgqit zXR*wemmm^}Y9z|2^X(_CS0|&j3Z;ad}$rbeoyWe3_ zv)4LIU$3X+X7aO9+G*nlI^i=RpIe8?F^7)m;CpQVMZW9sss98D%F&?~!>Z-zP}8B* z^gbHm@^}sZw$7dSH!Oz9MTa5TAD@r3(xGY9(14EPWd00~!L6yoS|)#Zp#`_$7Rf$4 zM%}D`QVSCgUyI02myh;8sKwyrMMV4|9_${Q(%%=#eG*1Rt2b9G{3S9!mLFCPv{*i) z^NV(6wL(WJ=USl;#XnT&l|sSej$VX&Z~_=QHJ86IYkq&eaylKJuRo*OyMdaUOIYhMlhp+Ly=*LpvTc6^8E% z8OZtn`q6m|*TOJlv6%AhVc4{;Cz0{OfLU`kA9yWuD9dngHGLjF*9rrLw@+MWbC3u|OSf#lxGv%TvMZT>Pbi|WEOeu1ZmAG{7@8DgY zGVhYxGy|02?b^9Y_$(=?I&ZR4n(}XzkX~21f0xn)N9`Z94~J_@43e(RPL$7Do-|f zko$Ao)>oH&{Ctq76!Scp3zT~@ak+aN`EiL4WXhQi6M1f7xWO=BpXK{JPV-9`)Pos_ zCd|wcGI87G{l%fl53Tx{ynjf4XUe;iA75FPb+YAp{YZP?PjS!X*O%&eYi^jL<0Ja` z?V?*@kp8ZI!aj0Zhk;;0!n4ppal8-r9Q5S zudWn%gGx|X8?A)oKCpBi-L>ZRo)+JgkovJ>iMDvNl1lLNRd{I4fK75=c?64NDk1Y8 z-n+M=$VB=6zl{tSCi7<{uGPlv-&S|%sY0L6b*jGWtHQqHT_{RS1)XLpIen=QPSm2= zor$w`=^-hxR3hhD?oUenOR2vp^~Y0e7}!jOxHsDk-;S#=og0Bv;A6lf6-@cua(~t6 z_SsE!StaIUDsx|6;x~A8+}EpNN120b;jq(pJ z9k1>#^Vp?1gSs3mz|eZ^cr@H8ACrYasFBB|e*UonAPFRb8&3nB0cT ztTfn4saP%abUj~TOVL;wFe-FLkOt4zKDG}~Ys7q4gS5H}nr83Tpb-b+Y0&3ZnYV+p zHDI*8S{pUO2c<#VFOIG&pK9Q%HBz#)1}jzVKG$Z(Vl9}PJ$0oPBY8lG7R((Gc}WW%D|<{Ua*ebICN=AKTF3M8Sx=c; zsM@VA@$Rt}2X3%nJL>1M*ab%|VjY>{ON)!!Sb(G!!?@sq=4LhwgdlS-O}<6?z8r8V zb1x-+!xA<|EujO)^L>;#nS6JlK7tdA_o2BRqcqMSu3~*}Mof`&47|%9M8Q~{Id5Cy zX-343qUdNHY>%xb;*w7IvURA@tu0c6@GSQ)(p-PdnwgAWwhpp!aqEW&La?Dp?1_Uk!uE4a>=c%Ook`GF`C+rR6;(q}hR)`MeS z8|%SnlYTV+xxtvOmXB(lX9pff0`+`DI6=(-}+6pk@L9EGrR4w zaG|>m7r9K~cs-FR*}~0p<=gBsQxp#4rv`h5e+fr;sn{-FRU$Bzg94~8!*h=#%%?S8UZTEH(;-nu6V`)F`-9>T&;-Q9_qadFMBr>{~yjnF`mpN8wMt*X5q= zqH+3fPy>t6blYuqq0%85CO%j+wiA8veSS1J-k7)=x5^!T^|N#g;@3NuJJBfyCjMXy zPR%OOezSWFK2Z0sMsAGAg@{2}Zgh(Q#}U+w#WK_jd^=FiYv*`|v{*!T9+>g+RIK1W z#|dtH96ntCvGYt=9EO!@G&DJbbO}5+Ck~Zk_Y%=Q9u(Rg0?T-q`kV2nqQ5}o_IS8P z7h4(dAs(hV?Gn^|-~Gr)%8@ta?k+*^cq?)mCBTsjfXF9%`Pho&p$T9r_s?z#V5!=V zq7p>@K>{YesYDk01dyoRv8eV^^L4Y}?sNM=&1g<5>TPMAC2_7y`MkutKQVml)}RpB zls#X6%I#nGq9&0xNK|FV(^%Td5Z-Pb}1BJfzHj*Bpu8#QHaNbT6M6nX7~$Kgdp zX7UzXW^dFxYt!7<(HkVP+rPVmH;;iCSKP7J;~FPxqTx4yFXQ7uo<&K6wbribWvdx-7nf#;MCFn^SXdEQ|1nRwvxlJIFypSlYl zs5@HE>+!=W(;X&$o6LDXJ8#^{vIE`0vD~%Y!P3B1-E)J)Bbkvut7KBR8(0cjZ&!I9 zBF%5w^S~ijGgqOeE$a}v3f_x6hvBg%w_QMH+OOpeE_ix=yhWC~i*BR|?E)Fd*(pl)UorNySNu0l&#Cc8TkMOc)krQ@3VgN`d!3T1J`@3l~ zT$(u{tnb!&#;Q(c-#k-sjriyY>9#gEDmj{YCEZv|{R2l-+WfO+rIJo4WHCvf9ntUQ z^Zy#$azy?)pM^EwI%0cWW~_9?no5rrR$DLo^-VrzM||$NAmOvCBQ)z)&a|25i2A3R z7@bBtg3FNG$=s8YTZb-v`^*7{PWAFG`_cinF?R>8J?nr8cMfd1yxaid}G7rp> zc_`f(eltVnph!Fu(>%f+ET!>?jXk)WeU`nL8`%pEygf|w3;DhUi?y}2hbyzGx!4Oo zygkyHJ;2`{!|#@DwmnLIf95U;KW-0e9;9NAYG<6PjOi?Y&u*_R+Wgt)AaWQTkeD#~ z&i9(~c3jeU`on(59bu9yJAoh$i4$A7z{H<)Lp5&n@W2IT*Z<;)Bx!4D^{8FVE-YL9J7u%z0ip)4-SIY?I8M(4jA5xO)wl_s)J;ng!KEH_}mU)bj=2C z4x-+Y?@Rl~E&8_EHu8QVJ#MPc97G?}LGZri?JaS3-eftc{UaREl?P79|4zCueV&<2 zCYR-4=Asmzz!C`^uwy?H-Z+4z5ih#y0IR3#cUQUQAo{KjFx6iUVqPxaN*o|lUFIn2 zF_{z8V&TNrB?mjA8jGiz>G(ErC!FBNVkhc3iFucNKIzEfXXZG8w|f^mp)+gSCOUz)^KzUpwk@0F zJ7J9@1Ft!WKEIQgcM*q%1FW6FruY|!ID@6I|Fm|-K%#-(_H+h63=^HviP=teI^!6N zIlAo(15p$Fe><6a`%+62^9K+U`YLg zr-S-ds8(7FzY}(u(|d-4+sEG%zk&Ff5S#>e9`2Cf?yi}&clZ0f|9mxH%~VZ&RWnobs(35=TM$M(7 zZ%@2l1%5u`+a+b~n#`q=pYttw<2aYBdh~N`I<|gPd|4MnO!`rj(8b>NqksiM+~P+Q z2fj|qdCrggCRG@);k+NUQ^8F?YN&)3@EU8}wI4N#Pw6@CCG-R$e0QX0m}|>({Fg7# zuBkgxV&>96d?o!xkM1@iY%ckz!*(u}7MaoSb14u}W1VZvv(<-xc>w?6|Esp>aIJ-9 z=G$~x=Tno~9j5KvG~bp-Kc7TJ=%(`mQu)aF3+Rfu!QR<7V2eyE<{?&|=7l!htA%ti zXl&JO)fUmb5fX{Gi2S!4x!8U0B6QA3r2@}D; zI?ey&)h@`EUT)CY0GsYZAU${?fjh`ooxR~)?BB>=y)g~cu0gbRbcwJWK0)-uRfxZX zXl~=7?+zj_@1MLkQ58LKXcY}P*v2rSXfSQ(PvPy5FSc*Sp%FKdf{CpIYH9)1Wxsx_ z|C86%^i4pXYshcTtpOfuZ0px+Y`Sb~XmIhEuiZMVrP9{GSb7Te^^8-I&#mKeY=pmWI&Z zHOE!Vcr}FFo-_xA2ly0xs^5&yA4>anFUj(*NGP;+y0{N38%mm<+BlS!3jJ{ZP`W(l zb!E?Kq2z3CV!7!bN&$D=3$ET1O4EDairI4~)W$=*k^W3S?q^?iBT1Cx=w=&9qBgE} z2T#ILXM}idq;4X25wMYlKkV48(Uy%Qv#pzFH&T;*JKN2DxRG*Ji=7ei5qu6pQwx5E zhPf9$$xtKA7WWWF7g~s8D~!7A{ZzX(@;fxVdt4Z`8m^vYl9N}945J5N*%^N#%%&?J zX5&K*v+)pxQMImTjTbJ45kw~-sIZBiN_gz(O|;SbE)@yeM0fH^Ch;Z`c4F5G;k0mk z?6kjIg;R;2E5U#nPP-+&W_~!uIe5(W^AD#^O)D+>xh$OSxT_a2x?Q7v9b=0-k0DV{4LK1_lOIpH z-OewXdL1jdy5*l}vU@Zq`=;J8Bx+3EhQ<(*%%5yu9z*B53GsCdWjkw*oR%$?mOeRo zy7ufCQu>h#(FAff1iD3&MH_@@3J43FIuqxy>Ovte1X*^|$Hm(CJ7UPcSf(C%YQ|D) zu*cu(8cThyRNix>QY_s~dfVCOKrDG}-H4U^&7|@uiLti0kXW0acQXwZx~*cHZE-G} zNwWH%Jd7nx-?|Y?Aa(Sg=NC(V%s*bgOhLX%JE^fTbTDO0r|_RKr1I{ca6gi^b0vlf zXB0)&SjyH@dbC)QT7JKGEEU%YUo6S2v>5C{fw_lPTNF!5&$lwx=AVeAlb1i(_naI{ z(^NnzmNrecTlDKkjEyfjh9DX_x>4yEdKV=LH!(DRtSHjP(z_d>)M{{XJk1K ztcv$m-g{B_-DooFjxqGTcD_s}FT~KyEf|I=W}q=@j1b5V+oTiWKiP1 z&}xU_J%E&c&9=(1)c8nlP^`pKQ5}H9lDgwR#E_K-JDQetsvo}aK?GU8K62l9Eu1!f z@GDaltsQ&#Dp|Lt;qO{<3e1p=Wn{LAp7HM&`Lb zB=6K18_#77)vS1?brpO+?`O@wvSU#Ux&ID<0yC}yHmL?PVkn<||DPGB#84H~-g;wW zY&y=!ixS$IRxwmJ%eB$JI>pc!CFaNeN`MeUtb`LW^y+qNmv2R5XvX3_L$iO6w)rok zZSn4S|N4PN)BFA1Akh|0BPG2Cd0A68^}q}vnp$`tS#vrpnuLAOe^azgS2fz^Z$kc- z&;|xZ6G**7hi?Z(07o7eyJX&nt5Cd=&LnB7i7r(Ei4Z zddH)vD^v};pxl~Q5=D#iFEE|i`>$<{2alozU#+N=Pvn``L{ZsE(?Bf}MRWFx0CyD4 z|NIvssL;-Co1Wpos3=;IcS@tphA2|{{yULm)P-u~&ml|I^G*!s$g&X$aDXll_G%{eP?qr_E3eUE4IAN-DAHCTjfPl+3`% z{lT)Z^LI88l6U{OcyFTk`hMq!z6v9d8$juM(|`IOshwq;h1>WZ!zsVWq^u67hHLsQ zo;g0;mM@0uOkR3&V$}$;>K8|lUCDf9x2=n?%~vBRa_3-3Uq_HtPb{2rYv6S_&FZ$W z^b&IfZSEKSYv|+%DwQK->+IPP)LUp(SK$71o*Q9{(~qEWZcR;DK0v2i7i_|5wMU*= zOM67v^hP6Wyf_iGyR>AmN7&*;B1lyGF7J(?C)+Aw=oMk()rlaGi$mZzg4#*A@JjTT z&7Kv=b0C6NiG1|?2>MmZ0ii;X^zGr7GnK1HlDgmNN$T*L(t?NhG z_&%bjme9jALVvwX2!8*?eCMMO868Devq)kA@-9WD3jO#&s51;`6-7M|owl=M6p8nA zZFihk!Z2K;s7&KuBldbn(OsyTcN&88Z+pM`RS5d|E8@_Opz`0_I98mn-Zo!bN1288 zW5OodD>5{F@V%`%@}~LRC|le&&aZ^q_#Ugg3VSv)irz_jG`^2jU_C9kHi|S{e_a%* zTsp3!Zi%3Ow_C@ZxW3DE2uUJubnfwjMqt|DdJl(3MA`DKqv-sP0MCTo|Dx6J5JkgP zSU!q6It|R3Z7aTe6)M4arfAgwzwP*4iO-;v7e&kQ)tC=Q+58nzv^1dR$_bnPJ${gW zKvDEiWLVKoL`qonr6_t2m5kC4qUh}3xuG0@oUJ*`J$=E>Z)6lD@GHK6Rp1BcPo$gzuR@0`s2U-hE;DY+NO6IO`_)3C2I@`OLf5< z7zfF8s7efdN$j=oQS}(gaHj?sK4NU^H!*bS#54}AA4A`Y7tJ#V{pmmBz47G^b*qp5 zSBD=9V`yGf&(rme#!yv}14)gckY{_}&HflePn^ZE^e^r_B0|$KbQx?NH{Qn3e&=i% zz88qK=}X5_Vz5l;V#%5(7fT0zK0GkQJC^3msRGYF#yc}tX3XgpOKwnqxowH1s}iO* zAeOM$1WA!tQny2|Sjs!IJgCcJY1PQ-kXDK%S+y->x0z<05Fz$h+AiJ2(^yKGxVCYJ z9GmG-#^8FRcr%sK3D;(#(RRNN`fMf*6K%MeR&`mm*c0Qadp(8maWe(fmPD7$v}2_t z0B)x82cqw8&$xxA^tiNeWR)%Su~+?iC;M-qJ;TO5dLt$uCEq+Vfj&wdopeCHtU$ z#~w7^O0NoB?Q7q6D>cjd_nb-#wh}}ocQjhEl~k^K%~o>jEfFGHZM+p*X;67#a@lb^zm2`P3|2A4yUpnS(bkp#tW>4B?)0x>uPPaETzSD9WxeNW%gl&}Js}n*Jx6%Ez zD)3GL^M+ouq7TU9!HYxnXhCVeNS1Mp3xXb!oK^sPaF-CFr!X!w)NyV z8m|HKapYfSZjZ_Xk^9RodDK8&N6r+#4tIga%9ug6jIqmrtF-?{JA z_4RM!Z2WQYlqPbjAL49!4{;Rx*Y+$`a>rBd5M?iEiPD%HQ&V@f;~%KXD+Lxp(K z@cF%Q^n0L0IG-SlQ&dJKl|c*hmJb5SdZ)II0DyI9*KBb0#@S$Y|jBNk^8)OT9hV^jd;2? zMlzY>NwS|Wo{qQG+jtTdm>L)3DT~leJddYVl0N<^o-VHFhbdh=T`DF6f&^N>XWpE* zzvJlxq5!^qjkm4a$5Sm8YDl2ikI~JvR zAH=jwpn$KVAz71P(<4ZroJ#zaK*zt;nR;_Vf^8m~KuYH|FM*V1d}RVvh1a;{;slyr zp`vrHtqC^1o&=kYZ2~z?m6j}lR9@mzf-PP?fyQ~{eeIb!k$eiL?K@X8k&x^^DKSeT zfh=>+!Muq!KCwi4dH;+{{w|3$3R%~w?Gs77_Q7ouDdD{vT&0PmZe(*Jb$zjN^kT0> zS};votVAkb%Wlb~h(wBukq3}yi!(|j$yWY+J&|&2gO*4-E&85FkA;RX*AAL__I%jH zYCEWwxS?nVX?kS49b~_HeT%o{BS3&fy#W`;+-U3%HJDz z+W7Q$QcK4H*K6O{NekTP)qVbUC%t_VlV?xyB=Xb+ha`en(ECg6lSo*{BKs!U{Pan5 z4N=o~Pbb;pJh8p;*PhFMCXuLqj{cKGiAE86-euEq*+nn1h=Rs0x+bmC#9d^ki4D8x zcL8yX?jjx5o!Dg?hwLINkLGTQb86Lbg?Ts4|Bx9O<+~|Mtz`|%&qn!~cOfG}cax?8 zC+wyp*RSurl5G#YN|g?L57n7n7mPG}=qOsn+Q2$0;JSyx-qs*AmkTK)bE2Ah30zNYExbnPrCD-cP~5I{tZ6`hd-Ubbvfm zfaw6Kd&%w~d8xzbAo+=#Hw?DM?H(j$>8O!x<0ITgO1HCYD{VGNAovz4rGbcBXlg-a z`k2f4ZwMaxjB;}k@(qsP<%txR`<~k{YgzfcN-U#yVo_|EW*l@ZTP<{WI7U5KG;i-~t zPd3qrhN1|#iK<~$HmLa~5|-q}pTa25O@=fz_;TwyVQ3Ua<8;CmMv*?P;gZ})w>wIU zu#sx2aMMOwx8S*H3;2Jn`e32t-LQYhaq!1l<6c6^H|gq@`UgX(TeDuEnhK#(L0M*W zJF>yn-fSTE#jW7USWjtrDcyO}dJ-?NL$&o(R0&hpk%kilffq{yaMzKro;CTnmbR_! zGNAg#wKT56s`TYE)>1hY0$58~KD>gm&f5R@sj2JszL}1%A?xzd8v1GfIBEK_HMYF2 zH8e^CZq`t1Z&6rSLv5ecT98-{y!MqPLtqUp8al1g&!?-&4Ou21kFTa`BA2ydH5md1 zfiY|~wchWvzIvP0bja@TyaF{>Q`=>cXc2;G(@9C_3#N2QBVHd&yJT5oaxnFdI{kIA zOEA6c+00=Bc;f!ykF)v(z?Y{LYZaYy+7ro^RWw}*Z~x^d{D%kfuFwm_1rd^*z{nLu zD!bPoJeoRx45A_nvJd%IB#1!f0wwrBQhJ(Ofz)f+&mJ$22GXi!;ZR7$dV=N zgAWL#q&Y&+jrF=Yt}mXp52QolE^Hb|(}Y&BaiC4tBan7yE$irN3MAK;UCMu|4_<%e z`3bb~%?Fb4FNp{WBvBbis}V>md3O8tEdwcGZE=L^29mSTt>y@%{mX?YEWnm;6hK|4 zM6N1!CV)ybI{o9^(EwV#?pE>0qySPGouB}lu1x@)thm%EU+)0hcr$=H*A)WU02;WX zduuNTlxti^05uJ6@9X~EpVmNKsrW;GqHe0KVdPl*orCvG$A^& z!pl)u&((oa044Z2g4rp6K$>kdrw7>d)B|bj{58)$b`GL~AB>P3SoI&?T9EoTax|^8 z#aXSVzAD_h{y)5R5*2p26~4Qvtvz=vT|>GYa(^|!nTZ9kV0w^I9Z3IKfBG~^X2d}> zN&_FUUbWP2L=o`H>oP!cpsl?Mq>eo&Vrm;mMLpe0LtBl?Eo$&S&$|Fy+(!Vl?N!pV z^8NsVxL0rQ$N;*VO$dJjXwc~nSZfWS_^>RO>r4wErC%QrKo5of0sOQ|^9x?uH?OMa zz0@^;);dWG6=37x37}-(0lUY#2hiVznqf#CKq>b2*&NygP#JZk2GFwm@gc{$fR_|3 zm0x=V(DlLL5g#T5(6^(_x*r@EKtAoSMb8@)Krf#>0E1)zJrg>;=>a6_&Ksr#(5gn# z;sw}rP6BLxumI}PQX+NnUNrtAfUI#l0Td^%_hA4jUFG!vn=V`cK~%HfL|BU z7pocsQO|One$Q?dMDsu02IEo?T}mHQvyX2OVe$q=j3D|2)~=-8K@`_bA}xcckqVOs z{fDRY>9GadCxBn|AHLC)Z4!V5{@FspfU}Cm$TH{LRTNxEn3Gpghdqb)^*ahaRa)wI;`#6IKt)pQQ(LMu*~Ko40RU zLrWyQ`_md~t_fXhsa@3gl2_0#O?p=_>xH*#slvN?A?an-k$UlGgYOZuGv8e635_hM zKiAvVpV2Rd3Xx(6EzKw&Joxj#diEy=`rYBe{2WFg>z#0O`z9&|w)l&WBPi^3@ZReC zqDj2SJ~g(G(wvQqqe8B)tDNtgNc}Ne_6tm+2KgH~9q6)`>J)6z3f#=L_0_`^F#lcc zS;vpk@Z*E$SNnB>-h%CQVA2`t+M%OM2D^-Q+3c+U#U@wq@{-Mt!gYAj_^OWrEis|;^88X<(Gn9YUZPq8B8T*T!F{8CO8}^s~>@yT7r+?@X z*1xR(5B^_`|Hu9PKleP!{eR?nG|_jK!QNU6>}_u_qYXKe^^gC)+*+UVJCd!Yv0a0l zb`8>P2mD)~GU^5XtxvlHtyi==YrB*U2L12N|6%KYu71?}e`)>5Vg2xJFXz9uANg$G z|F`$n8uDM?*1zxjzqTKy|HJ2z%Z~L8XRym;R|qwzdzW@<|99<^?Puvx7d}~kLj@f1 zU(Yjs%&`AU=NW~){y9%YJ>s7pNDbVrwWmpYZM{}DE8u#qbcYOf+4XmK=;i7;%zf-w z>rr-g|7X8Hi|lB-l=V#i9Ql6_TeUEDk~8$Oou-Nn9sl{-Z1!L;?-An$TLycNu@(#- z>pIGN%-F$W$DtfW|2*e9w*CL7L3!3PxbU~=`=))oR_n5hs5bqu|v#^S+JZfegUgLaaB%S%9nd>IydlY)Z%)h@Uxy7WJxw;UG zJTvn&&un%}-{Stfqa3c__wpbpcKtE)#81in7G-f^9f#&|;X}oL{q`v0!ViRTqO=Qp zpZLphKt&fGd?I)9+8Qnlr|yQn4eUW-@F0B5C(Jlrqa0nE1@CwcHzrVC79>x!X;ArIvRVsFc$SP z6zt-{mD`xg4R7nh_w2{Hp2z*2pMU9IT0<9p)Zw|?@2W1==UEcu@vw`G|y;AT!HqR_+C6PRR;p zoM~o$;IuAf+$b|2!e=$r%gog>uDf@vx0yB1v!j{c-Ol&0VGA=WKb@1AOXgoZyKO@= zk8HImW96D=)_A9iW^U?H(~!B0nH!ytEbm*?%p0bJ9~z$D%86Dx1QHxn0ak#}0IFD9-d!g%jYtn1ltOuP>)U>jbT`0V99VF6D}JSoVr zeCQ(+f4NjBLx=k&R=S&eCO#o@e|JorV`jexCvTg$)v@%_oo||~-|00I*UgE{h^r

fD?+ab(gJHKM{PMTPp5KZcC8wYLZQ}4IElZcSH#3qL`;Ezg_a^~Jcpn1>n*XdW zjP^rx((s;+4*_#?Ni*wuAl~2W8%UfiW#%3dP*uXrD!Wu1?M^C$$P1WR^Yn9>dF9g| zhEjNs=k1Dmox%J2`ZTQU!?(b*EA1LS#_tswiCZR4sypFuTRhj2lAw}oV&$JpG_mS% zMVeT{+Ja47zhU-!%NLutV51U&ySw-2@)Y~lycs@?71*TnNNd)?o~ z#F8~%uZ@XQq2|<%O)RUm;~JS*_3dhzSoNnWm{|EUi<`LN#iyGV7clWMsIxuKVPf@{ zW;Aid`0zW^zZqHe7vCBAUBtW4o6n6bQA|A_8d<{=?il&NqOT9XTsB(Up;JcIb(v#8 zSx8Jaa@e;Ijs?TxdJ7>yiw zW9NapPDU;u2_B7&yy5l5l5ZN~I@_kCIMp$-uv}lSX5_DqnI5&RV&tacIICdfBR)ug zFK=YcJ1k>lP5UcqWR06DU}WXr%wyzY*)n=P%VlI$)yr<=Lj8-*7?s7ys$-VH$m;+6 z!@N6g#Qx?#m`U6nUzvwpSat8uCuUs-d&jI{U9XvgI~}^8`8jjlex>b3KV)|A*!)++ z`^U1UCh=!m)(*n0gl%-0LR@pznh z(f2(YtDa!%`#i$d?<$2kJqQk&gUly{=3+0it{)|_wci3>nHD(hRRZ&yphv#_w=-{> zJ^R1{AVf8s_HAKylEC^%X7!tGVpcx*Fy`!?4~F`MGQWLv*|YCD=HzJ!9=n5?o4UR_ z@C~T)q=C$N+S*g>3g*-wardH^F{_T~V&-OsKI`f(WNW)Mm)YDHD+)l>F`UP|w_W>L zjb|}mKDZ}&iZ8RnO#1a}I`f(JtKFIaqYTUUkDbDN)~8kS^ocKF#fJH%dq42 zkLNU$@w*S-o}CYvaAivJMFZ;D2t08o<}4yG(2QAWBpNg8`Y3So#myPoG-S3v_w>%| zdZ?eGyIU8>U*AXffG%mRLJ!qqUX7^kQ#F{wj}1 zSobX(vxW=jVAl2b>^N^+?0^|r**fmYg6BKy*!{DanPYB^m^CsJzO!zl9~QA^?%?yK ze2a|C#Y7nS53%~Ae-I=1Y+mi3WF1$0Azrj(a_P~Zh*iJlBeBMHzag%4yx#8uuZbs1 z#d}Gdcjxe8nV%C2%hIjK#G1bNhB%x;iJC6EoERjyB`m-V?+UE@v6!s$l6k~;13vW0zJPd3?5b4IL-VF`9V*|P z1zNiW6MaE@&m-GDnpJ-eF~lTH_I|{5BrswI@w%UzPfVYR>j@zQ?5|MA965~`!DVGj zOeVf;SvNO&0`Zr>FZ&vSvWg3VE{=0ftiYpj|3X7Ql34R``zz9 z1nEFhp@5nOWkLPeJI6fIo4CN>l0IRuvsnDf-Ss41-x32olpFVNbB%)?^!Ep+-LAyL zMb2*kvC>??PDV3$r!TSF>68pLdlQS=>mK0g-+5Zh>_L3u^V=V1yAxya-lIil;+y9d z&uGvI*AZQ9;4=(&DgbraryX&G&=Iu7^Og1#SU?i=T0_=E9N{hT+&mM@Uj>d@V`!fC z7x7pL$8A9ziQ&a~GqKX`8Hq8v4>`i92NH+wg!(5Fz2?MG=Qlk_H{kr=z7{VER6X6M zWbJ>N5xWZAI&9VPY)HJSD+ti*;rqLgv}Qa|Ww{y#C>P3{Ub*KVqLwag^`z|7I z6Sk%;d^YeKk>mYj;LP)974Q1Zz`Bn0)xb|g2K~Lk`hI~2Vp{pd19iO^$3=H7b2r;Z z0}pL=$MgAH{0`9pduiZL9Wvkf_{zXJbM?Oa;V!Nenj~2Th8(4YS z?ipBhKJFO!9kRv?!7fnL_pj$b)iZivu+FDb4Xj~lcMUvB7DBQAj8n&F*SuxmZC;qz z16>Y({gdS;o}(j>!!H=P-O$T723$7qy!sFTy<*@Joo|(#hU1W%GJF4d153AY2dKO%*uTcQ@b8|m zmB;iP?o$HB|Hl48aB{}L8h3lrz`7m=Oam+OwG((=LbwZT1or;1rw!b^1QcblUE|GB z-t*$gFZyzI3dcVQiPVF=BQ{jm|U|{7FM0qWd3kQ0>Jy!HJ$|WlN`d$Nv zy&d7b0I2=?9s`$^1e9Hp9uvJFDz{;~7X5idHgtgJYFH4V@Hy7Lg>{?m6B<#&A5vYaj zy+vRY*uU8G7Oywpc|uLaH5BzDM-AVqAqMVH-H&Tw|1lD_hV9ve5El4!BnG0u_igaR zfckva8d$RIORP6=rlwWgBY`(sBg1nw>Q}XqEt>${#^%|OJes_|zLjn_6y=(~x6HtskQFg+7227Hg-V}7 zxzf8WL_KZ2h9Vc>d~HwPeYzO!o22*Sypv_1jP0luvj<`OL?KX}kM;nneWm9ac;vnd z{i6H~EbLza*iYL%Z1<70UZC9eFkshLgG#-?{u(z2+p*e`;G3|OA8iiWx%&_Zm}THK z<*O&>0#@}eamxGDuZI+7miS(nqlA-n3he$cI8c+iu&;2r2UG?cut~6HU;lRc)DS~ zE$KSd0-P#8U=r%L$jZZ3J}VrzvmOK=#vAzeZSUkaqtKpwI=nvTMEw3sKl)~zW?+0h zCI7&kAG{nj9G1PHN0gEO`(UleR@cZL|axDdUKM7>;^sl>1m2J844 z$Lsew+`xsKy4+cZ{ggLpDC*UqaarSml}=`h9yQ3o(mcP$emYOZeRVooZfIxwHbmD*kApH*#C?dW=?MST^@f;n(Ad>I|+dFM7u2l-#Cx5#0Fgxah~yId-%+8M}H9hEBw|#1LseVi)aZfW+)fw;(_BN%^BzG zTdwH3LnxQ&Wj^4JzW5~raGl1q|Jc!o;Y99 zts?`f0Chfv^A<0;_of5v<+DMkg5Ql~7Q1^uB=2M$kMo>Pt1@}KT!*3@siT2a7r2vw zRfiL(aey5R95~ay&t9PNHUMvjoz1ekoq@~L?^Ha!je(UfuQl2uacBVjUUuGH2KYOr z`vz`hV96qw2$bnVJh1P}MRSsXZ^3#O^cVX3BQCQGxfpn%{j;yX&1k1)cgR*6_VSt# zdID~LHS17Al;;)UJQM0~*XNbj8Sz~g?&y4p(SC(ZNX`KqC9=7M{i-3u)_~tv42pZe zqtn35>TF;c#+rDp;|XKaD01s z_JCDpo@+X(5w^>Sp#k1k;UahP0wH2QJtI){D1de&XJ$H9AN4fiOSxP1@cl{vF>n?h zFTz24yb8!K;>nqhVNYhy@1=N1wB1f7585OgyB_e_XR8yQDDP`%BaV8 zkbqywz|KkDDZPQ+o;)deu_D^HHhud&ERWv_w^Wu2_^ziTLks2p$Rc(xXW$-d(|eXK zYha0T_5h|l`|xBGQ29%M67^dV_zctV=MHE$#)QthRR;Tseh2K)BL58xIvc-#Gs;1t zaMD;B-x=IS%S)mC!?M+Ipc$-Mg@C)kqJ6I<-V<2fE&(-utOUk;k`7fI-^-EJuIGTd zet_~|ux9RnEkVQ+ilRLO`{K1C_%1N~cnefH72wc)*$)l|YMu#j>+ppqS`;?$L7|;2 zWZ=cO2ic8;t^FA6YRA8??F97S-0N2)P}h43;&;coCs!_j_XoF&b3TkGOHFo60QQQ_ zIcar%eD~jP^bdtC(f-weISSmqYY#*)=8+G14Sd&(7B>&JPkOemZ*BvJBC9zA>~Hlt z&$$BIs`F~#mMb0mWq@tSEDVKc@1a&aB^Q48kk&1m0xw{ieJLm2iwJz=!23tEvETzc zEIa^JpAp!?XV8;V*$phL{M~_{?)RRxI2+m{$twgN+fvlr6y+cb-{1t>x;~2ejl_Rv zMZYWSTfp%`gp>vInR}pRgVG)(rAZ| zKx@3PGn*tW;;S>q56Smr0#LHdQn&K={Yz)QF6m>i z#l0f?U6~02K$Mp~wdLOZ7tY+H%BA1yfa=cxs^1jbTaNpC?_WUe*HEtC9kAbu;Ly1! z*RWAw^=L1y}>wmDPaT6U(Nb1=icz-g7FB zQ@&f^r~04wwm`Ycusy~5I%nVO5m0sdP_FZ2;K>W|v)ce2z@`?6?G;)!vo8-+0x00J z=uUV0VS8b)L|uR4%o6QB?y)oHZFTtI`bT*GJ0mBbfbBK8r?VTjtBw&+^*vDT4E2ow z*ngm^wHD`_AQN?*52Wg;9kIQnG@Lk(#!cXNi+bHS?5F+|l%H=LHuc(lXYLwz{N}hc z{LTaS4P#RA+=O=p_M{f?k_#VoXHj9fcFLWbZM_{j;cs_d0oJfXSKV3pH*UN08sjv# zmJi*zU6HR2#b3KK#0*?hzq<3UUtiO9rn_@tgzvt|=E0Q&->cJ@$ z?a~8!W1&Oz)ZINe;nuI@A%i`*CK3)ZkM`hP)Fh%7c-l8RGK6L)ZJ4eDUBH;}@me_~yYggSNSq{OQ3T z{fC6)`R&2izutE&`^SSDFP@b)I^BbPS3}_2&Xb#A**h|WCyUxovrL}+`$h%w$n444 znu4h#t0!x^drnVYUE>WU(n#Op4Ltc!V+2Yx^JH1J*~y;ze)6^S)OC-I9Xxft*QvWFJ4?WI zKTlS^d@oNHb>b|;Jz3IrD~%g3c0csnH|sL|e#AF?TII=-o_uYi zCrkK%X^W>mhqXzbJOhLv3lDj6_~_`=%;!9L*7#C%<%TDp3B8qe^r0tD!@{NOTTi}v zdXDRmpPszuPydjnS-o^Ut4={L{`2l*>g+OJI?r;f>cvWz*1(JXktKbay!cR;{wZzS zc=0H4tabC^)RJbqQ3JgAJ+jewke5E!2V=afaYWO-7~~)PV!jtAn>&Yg4De#*3Ekku zqQli9#*246&zANi!OQxd_IX)zo?+=>$6_GW$O*s2^YOs=f(I;TwkVnamyzwDEJ}v%UmR-&=cIpz?~@@o_evc zebj#DrR`Xj7he3J?BbB)z)VO_I1QBg-}XC1K4&7}!_Omxot~uV;{&%rA7n)Q#WW#E2mawtE!o4{l zKODYWytzZ}1|eg2db9GgAMn<7!pFzGHNM4i!JErI+MmAcIuPwvse88H^%&QO?Bds# z-YnCa$?v_{1VP|qpK#vqEmOn4d9#F(WlG2Mku(oGi^f59u(z<%b!N4&=md4iVd0OP zn{u687FPPk+!ihzeJsr#xM0`$ZLqsW?_g?hm>-%@W=wQQ`%rZ)jL4>olgU) z3vlU+agHxhE`E;z&KAz=w!$?TIBUtvRMZ77{}DnmuqSl>l+w~*vGzBxCI0XpP{#vg z;fT47?A8KhUBC_~LSm?PTVK0KrO>f}Kk=av{*~0tF zeM>!!?b^%skMO8{vHBqd?zs9cn9ArI8MKFpr+}yv{?HupvD8YLOqO_<8~D& zGH%0w=T-!|W&uk4O+5CKFt_u->!}5N(}8^hZaNmkcK!Z={^_Suom*S1{T*zKcHOqX z*6|Q*_OC@w!wQ8I#ZO(ckBdP$7?`IpUn>} z2BMCIz%zcQlZ)UuU0()jyWSSx`=-ad4BK@a2fMz|xB}(7NCRHjJ<72H_IHnb?RpdT z+8&5N1Zw+&a*0=SYH#6skSlnEa*e}9dFDn>(~6^f;~>0Y*b?Vc4OmqO15mDd(j9E| z6ZV^_S6pkumj2%Y)baT;X?Gx-hMQZYGARQZ>cD190uUwn&whr4h{uS8Q{l|bK zK>hBpUDy4Aq96Jf&~*N1dJ~}bT|w^{cn5<4J{-#+@4i{zwSRx&f3-550r)t@~4o^ zvfs6i={I3Jg%@+Yi0!*xjW+2Mnj>(_80JhHmx>-21>++B#u=W0d{pVkG za7X#8!Sj+U0sn#{;{c8$umN~r`|>Z8(g!$IgdMP5Wk!Lb8=V6Dd8(L$rMvAr0r~}v zPrre3q2)^l>T?0=xDTk~MC>QeGcQn|BT)NaY;X0`!L24xREamByc!b!wgI!Y_-Gdd z6rQQuz&Y!_rjPD{dKyzJ?J-dJUt>_N{SQ#vJ)r12`U1~wiSTWJ{Z#)IsI(uzoqrGz z2h??1ppI*?f6Gh{(=GvZ+=%i=ZKKoP^+f%HpXn-4+c}iKng_=N>|A|Xr3?ZlzFnA> zj&iSr-RZ4hmrFnEXy}Fhcf!Gt5ft%)&cW7x1Gb|ivcf((po&{_pvF}LAujB&1sGhrcFIBE>lua9Wc%?h6G!*-oV0(D*i{C=Rl&jjF-cV8ScVZXFG z7aje8qK`eaFMcmrxQhX0`Ro<;({W@!^jAVu0$bNRf!c0hzkRufBsYXDacu)^=XnWR z__Yn#uJb+E#W$ZzuMWGRYek2BuvZC9A5e8fQSKM-=a?1OQC@D?m+ycW0I2hG?58@k z*skvzsN-IseuqHmhjIcXuizMtTi3p&U1Qki021|1;Ex|(=UYmTHHDwQU$2v7GQ?LU zY{%%>k%98P-^cYuRVoqNPr{8^e*pTyNua&Ob{*dXA6F}q9D{O@$t357?RaUV>pa-v zN2m?EN{#ov^>DoMAiliF^S1a9$Zdc+-$l8!XVE~Vk4CxhybJ=4 zFH<=ED^UDRMO;x&dS>N2u!Wa52)54aU}qMYAmGh6WkRO{^*I7HF3!!uGyR9B!=|8qY1u6%GFod@DLjT^;w^f1Ie`yaCz37S9U;R7S?*rHrD|?~72AUjKVSA+#;b}1_FE2D~K<#Hx zp09tW)CAbku^{>c%KY*pevf{SIG;BXXv*U}Iv>UU8gB$t{|NTi?;f_SAJ+$Jdkd6y zqX3R;Jfbc&1|FO6)$T6JHNFcd`fy1=osR$^n&h}0sQRkF(PfvV{e|N+-V7-IJ6Dv8 zKeipPWri@f<3PV1$3qJOg-87?eovFRc4@t^|52g!2kLwm+nWXEvg?lRx;_M3`Sh?o zC|kF5N1%Q7g$@saQs3(Ur5@x3?#oe?s(PdSMBcs+j{E2L{quYE{bE1WO~ZDHN8An6 z`4-AUM}(&AgAJ0{^bfec%-`0aT>V`*ulgHcpIuedEd;%u;PBs{LK|#)^`CmY7CxDW#wFJlMco3-mO_b~W0w~Y50?M`C;JPD4upZ^=4@9}Frwl{6_{UES zw$*=JPtKPMsPzlmWqdad$9bJQ>G%~`C}a>!MKi&7h(T-o!~0xx3fov6l|GC_XmofOWvpC2L!>Ed1g2K zUTwEwYx@O!IR-26IG?oJi-9elUrMfk{j{GRisu}?*e3+GelNKH@3%KN#^X3`A5kv; z@3pX(fA{65xSsl}fg0zBa-G-Vyy`bVxg00gk@%z1u%-XBU_ap(T>zAM{!O49{{j2S z_@gWAa=#XZ#$$i&mr<_kI4Eydyh&&TP@4bRD9`J8DfJ9~m*hK^9A@jMhgjSFXl$2s zxsyPRi$b}^5y6)Je#_l-gEi(8&LjTV9F^$?{&|$k zdc1N?Edlw&YZ*14wu)gJ}a?-wZJ>I9(nPe6U|BP`sh*$TH<*g8K4>by!& z#v#BOE|?hsC4Vv!sPV!;^)CV?E-D$Q^F5qT=g+`0_r|(41?v3(rMVdmd^KlP+7;|C zd3ohv%X^9fO1}^a)OA0g)(4>G;{wB`Z%Nw))Oo{5+xQH&uGau{ybTnV{HoZl^%A%v z!wuj0DA##5Q2qEQUl89e*##)`Hcz1Re-nT@9tFy@#SHY^-OSDdIONXS)H*=nJ+2Rw z`{)MTei4B?K>5!7fdfLrQ)U654a=}`Jn(D$tkk(cL}8^R0kt0h>Ua;R{XI~4;8p`A zA8R5oeDQ9(2EebI?NWyWW&Lp@up89=f`GE#mJ0lP(}VOpqu|dIc~IEe-vB>{G^80o ztsmH~ercetzoLBhyuqn=fVxhA@=h4;js#||AL+IPsCk1xsTa;bi0b&X1m4f}XGUG1 zt}6ib{Q`$fQeWslh{0BT$%$N;r{zpOnH84Dk# zR0ryMK2XL@V}L`i6;CY+6y69Eu=kJyse^!;M+6inCi@-B0oC6p+hsi(sBsWL zZ6AOdUjl5jGSmHqK%Ex=b=(ZpaV=2RNlpWGJrww&4>G!dn!gOxc^FXE)#n1GU+V^x z@p{Iw7*AJmNhu4|^>(26=_dn)SM?3{lXZxDz&DfpQ^Urg{Sp2JY}bAk<*FwPRGxd3 zt6u~A30u3{1gpQpVLbXNI|vS-T>THg{k@8niz;ts)$0Y%KpUj9Jt_wtiNalGbSZ0A z|J6=lP7xGw1m8g>WVQlhKo@ez!OUI3&bbeH>`gCjGo3~rd(piGX1+k)d-Uj$Gmapi zUDp3|BvWye3joO{vDR- zx8D!ssW0oiVe(hx^NXDHXA_I+U(rt{zS|-=tltL{yKRq4n*lz9#%UjqWJ7+u`mw=l zpnl$0CN8T4_a0YLiqa-dGq4WPBmHMhHjd;?|?n`8eKM7<4?ga zu(8nAJ2_KK*1YFL@E!av*l$a?$=ZGgnOJ$R=bJcV-dv7g5a+<0fj%|In)uj?tmPIB zGjVTekdR+5>s%!VnRwd<|9g#xfG+_m34f0?aopnEcVCS+vBqWM_~6?I?o{?OaW^6I zTne5Au5gm{%@EuM$GW}5!oL8l@I51uu#W#Gl;g|ESu zejp9cOZ>4fOxAb~Jhu^buDJW*`CjnJJ78ZHv$Y+@`#InJW2qH*f11~e_njvti_84# zX8uvB{p_&%X6rfx_$dmV4W8BTFTD3mO%5z-kM}74v>s+F-^c(nV>x)bzs1a|+c(V2 zo^Se?3}aA#gtvBrna90s=v-xznXwEw;QC}UhpqiRa|}@9var2-L5!TS|I>wCOmR5A zV()pIHiI|gZPU0?W&4`h_v(uB>pPoue)+Ja*%ptC{r>(uy-5QztB!XS@TW*WQ5yU% zP}2>@{nbI*`o)Z9ZXyAkcn&fyJ%i`dt_u`G@Z82pgM#;~H`$zh|S03<492%A}*Jq>7)Ve77<@8-hG|}$Bs-5u;p6=#Xr!?pRIm_<;d?BT|ngFuPncQ<_e&$Ljm_y z-{&@J1@n~6+sqANEB^~nc^7b;%Yq=M4M6o#0{V8?E<~)yRE9@0LB5(P+(k|IV!R z^zV_U-s{h_zE9YizY3lOoj0Aqdu;M~<|F*BclSDbnj*o^fNv|3H*p-(8`R2(Rw)d{}5c%Gq^J$0tYn35b zMcnz&{ml8tBTszv(LU3Vw`&NzykTX1;?c|VJE~T(#ycAwKre z|3=eQ$3^vgQ5Cze6?Ky?$=!to^b#tHicJd(to^kM6BX=k3~cPc#zsZ#?#93_?Eam( z!;gQ?=g!P~ynQim-poDc+_Ssqd^bSqF&zt_g{S-ZFV7C3H{T$@nu$EoeITAp2%wKk zUDdn#AfH#*VRQ)~#dCc@m)6MBg}Z@+F+i@LSO>^;+8W3+J>Pdx_tMDU48k4o)}N{g z`RUvKbY956pYW&XYG;1=?D40D{NdtH+l2kkY=1hq1IABj{#3DRtK9lS{bhfd>`&q6 zpOp>niYOKgw;OI}oF1^{mw~oKmgDB@uBZbXZDSu*}-XcHh zeDzDn&1Zge?#-uq&u;tCj^^vF+Mo9$(M`TM?d zsT1PjM}mf4{OpJ_z~-cR`sJa$1`g`TKLfvbi$0}Duj3%8)-Y_FdloLd{48|Puz{fephxzvWT&bY*^n&_hXP~QO8IF5B--F zRLw}q1F!oxFK^_0ne+dA<+|rDU&;4+>nn8$3Vr3g|2<#AGP%X(+rGs9!&iODNpyI} zeW}Fy$0uD6`^x#p1HN>5-m=kccOn+=m94(ivqzuw?ODF$-E!ey+hxA={9mW$GZy($ zUS7ML$#Z;VKK~3~n%ZGYdekIeI)mH1T7=LyAxc0q$sisTS zZlmLT>GSdO1(&0J$=qO{#o#W!R9P6LwD*EM>ncX~JU<@x1W^?W67vzjm2EUk0!MJ2R@i-Bte zU;h56^v{PZ1d;Wt59bkBeDpqB=0gLf%y?S#&`0LK z-tnQauT&wPw|vO^(22;bt3K3B>pgDzSs!X8K3ww9Uau&5@1PHX)pa~I$A|I{&hSY- z;6uB;_Xb7oM!UR|2WM>ep-;YGNN)6z483ln~Ob@L(i{fhIE{P|cPTIGm@fM_3rnMlFKjy}{>2uy|JJZJ`* z+qUqb*fT#8-#7K4ey{svz9JuLaH#$YZ+{=sYwML;*w}~Im(tgVEFHl}^zfnZayv4k zfy~!)@R9kHwm#&xzHi1=AnPEhe5jJJ%dzsITCY3)$gJ%{r;$E4zPb;UyONhRzp4*a z7lKTceW;Vi{L#lMVEbCz71PT5P?CfFold2Fh<&Ope5jiL;X}QC8|Z+;@JC6X4fFuy zLiGm&ZFRXE)%C4`J_&n*mj?P=|3Ju>LIYv65%A%ef#QS8OsxCVKsF(8Xn9~Ded&Dj zy?X}o0&O$pra{gtTsDyH+zx)nFBxe0OwY%qP8o>xuk#E9^MLQUrwx)XdfY(Q#@zV* z{fL1M?i_MA{jh;nU58=a0RugJTo6!hk3rsdJ8*o$R~7iDH9nZO7&y=L)j9*c$zAjP z`+5WQW}=sY3{Sj6YOgX-d5epOCN4Kf{g6clg30uX8Ve01Xys)V807eLo`F`5Z&Yw; zCa^k$$fg*`=kC2lnUf6iKAmVF_DfAS$bNgQf%BRwjxbQ?_x=35M;d7HDCKH@#M-sD z{i_Z&(1ecd4xSlcpkdc73N?KVlIPUVKzDr4mwMaBAa#d&1s;4mI!%le}kOo3owwNz3%bF`E?H(whK7o z^MqfgbOvfO{NeXIUIr3!LgRrQL;{PufdX8hueVq+FzdFOoKxeDv@84&O z{Rw?Lm4WOcvcI>s!uc3ctyGZ$$Gf%s-@QtM%+s%LAoh<#y>Pea1eD_qgVa~5hU0D2 z@$c@+IF2sKrAAjV5c_l^X5F$%1`^9WUn?5OufW#lO9g|>r!8ZkyX}^)o>9smbprnB zX-O#laEYy42YSRQlKZW zK0?y&>gnC?72i(Y(#!RC;C}PO?-Ot9Wq)^FFTXb~>v?|T;w3$Ww8e}Hko&{)db;?z zMpDKZJv9vJ)pSX|p4^3PYM!1h3H!L?dTKGQUzu9R^mGW_s70=xR{U6cAnt&kDhh+J z96hxc#`d`Ds)y2PWy`I>gZi8Na&#uyw*YRdiM^@^o9o&Hh zy6pe5Sh)h%Zx_4R)Pf$YCFPESIv?bcX5Y3tt)d^1u{U4Pm>-ZDZ@ zf2vO?88%u^(aV;u+=uwcD1}cq)KB#6nAdSQj?)ntkwf(qc3#=N%n&^l?A4s?1@u$E znYur&mmv1{!*!VIHNp2ky&OLQdETJ6o^taO@;3C;%kRhTdV0D0cI4z9xNi(|BW2`qW#QN*K!03zZTv7

)O|%f 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

9mKxj&y$x&qo)5I&$@mlj+i~iC=Q~W#4QGY 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 literal 0 HcmV?d00001 diff --git a/docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation.py b/docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation.py new file mode 100644 index 000000000..edc823e6e --- /dev/null +++ b/docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation.py @@ -0,0 +1,33 @@ +# Import h5py, to write an hdf5 file +import h5py + +# create a h5py file in writing mode with given name "NXopt_minimal_example", file extension "nxs" +f = h5py.File("NXopt_minimal_example.nxs", "w") + +# there are only 3 fundamental objects: >group<, >attribute< and >datafield<. + + +# create a >group< called "entry" +f.create_group("/entry") + +# assign the >group< called "entry" an >attribute< +# The attribute is "NX_class"(a NeXus class) with the value of this class is "NXentry" +f["/entry"].attrs["NX_class"] = "NXentry" + +# create >datafield< called "definition" inside the entry, and assign it the value "NXoptical_spectroscopy" +# This field is important, as it is used in validation process to identify the NeXus definition. +f["/entry/definition"] = "NXoptical_spectroscopy" + + +f["/entry/definition"].attrs["version"] = ( + "2024.05.22 - Hardcored (i.e. no software generated version available)" +) + +f["/entry/definition"].attrs["URL"] = ( + "https://github.com/FAIRmat-NFDI/nexus_definitions/blob/2811f38f8fab23a267c4868ec3820e334e7a1199/contributed_definitions/NXopt.nxdl.xml" +) + +f["/entry/experiment_type"] = "transmission spectroscopy" + +f.create_group("/entry/experiment_setup_1") +f["/entry/experiment_setup_1"].attrs["NX_class"] = "NXinstrument" diff --git a/docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation_NIAC_NeXus_Def.py b/docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation_NIAC_NeXus_Def.py new file mode 100644 index 000000000..29f08ff3f --- /dev/null +++ b/docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation_NIAC_NeXus_Def.py @@ -0,0 +1,121 @@ +# Import h5py, to write an hdf5 file +import h5py +import numpy as np + +# create a h5py file in writing mode with given name "NXopt_minimal_example", file extension "nxs" +f = h5py.File("NXopt_minimal_example_NIAC_NeXus_Def.nxs", "w") + +# there are only 3 fundamental objects: >group<, >attribute< and >datafield<. + + +# create a >group< called "entry" +f.create_group("/entry") + +# assign the >group< called "entry" an >attribute< +# The attribute is "NX_class"(a NeXus class) with the value of this class is "NXentry" +f["/entry"].attrs["NX_class"] = "NXentry" + +# create >datafield< called "definition" inside the entry, and assign it the value "NXoptical_spectroscopy" +# This field is important, as it is used in validation process to identify the NeXus definition. +f["/entry/definition"] = "NXopt" + + +f["/entry/definition"].attrs["version"] = ( + "v2024.02 - Hardcored (i.e. no software generated version available)" +) + +f["/entry/definition"].attrs["url"] = ( + "https://github.com/nexusformat/definitions/blob/0e3421f8cef02bfbaa6004e182e3d67dace7ef1b/contributed_definitions/NXopt.nxdl.xml" +) + +f["/entry/experiment_identifier"] = "Measurement Nbr 12356789" + + +f["/entry/experiment_description"] = "This is a real experiment." + +f["/entry/experiment_type"] = "Ellipsometry" + +f["/entry/start_time"] = "2008-02-01T09:00:22+05" + + +f.create_group("/entry/user1") +f["/entry/user1"].attrs["NX_class"] = "NXuser" + +f["/entry/user1/name"] = "Max Mustermann" + +f["/entry/user1/email"] = "max@mustermann.de" + + +f.create_group("/entry/experiment_setup_1") +f["/entry/experiment_setup_1"].attrs["NX_class"] = "NXinstrument" + +f["/entry/experiment_setup_1/calibration_status"] = "no calibration" + +f["/entry/experiment_setup_1/model"] = "M2000" + +f["/entry/experiment_setup_1/angle_of_incidence"] = float(40) +f["/entry/experiment_setup_1/angle_of_incidence"].attrs["units"] = "degree" + + +f.create_group("/entry/experiment_setup_1/software") +f["/entry/experiment_setup_1/software"].attrs["NX_class"] = "NXprocess" +f["/entry/experiment_setup_1/software"].attrs["url"] = "www.internet.com" +f["/entry/experiment_setup_1/software/program"] = "unknown" +f["/entry/experiment_setup_1/software/version"] = "version 0" + +f.create_group("/entry/experiment_setup_1/excitation_beam_path") +f["/entry/experiment_setup_1/excitation_beam_path"].attrs["NX_class"] = "NXbeam_path" + + +f.create_group("/entry/experiment_setup_1/sample_stage") +f["/entry/experiment_setup_1/sample_stage"].attrs["NX_class"] = "NXsubentry" + +f["/entry/experiment_setup_1/sample_stage/stage_type"] = "manual stage" + +f.create_group("/entry/experiment_setup_1/sample_stage/environment_conditions") +f["/entry/experiment_setup_1/sample_stage/environment_conditions"].attrs["NX_class"] = ( + "NXenvironment" +) + +f["/entry/experiment_setup_1/sample_stage/environment_conditions/medium"] = "water" + + +f.create_group("/entry/silicon_substrate") +f["/entry/silicon_substrate"].attrs["NX_class"] = "NXsample" + +f["/entry/silicon_substrate/sample_name"] = "Si-111" + +f["/entry/silicon_substrate/sample_type"] = "thin film" + +f["/entry/silicon_substrate/layer_structure"] = "This is just a silicon wafer" + +f["/entry/silicon_substrate/chemical_formula"] = "Si" + +f["/entry/silicon_substrate/atom_types"] = "Si" + +f["/entry/silicon_substrate/sample_history"] = "This sample was found in the lab B123" + + +f.create_group("/entry/data_collection") +f["/entry/data_collection"].attrs["NX_class"] = "NXprocess" + +f["/entry/data_collection/data_identifier"] = "Nr. 1234" + +f["/entry/data_collection/data_type"] = "intensity" + + +f["/entry/data_collection/measured_data"] = [100, 3, 13] + + +f.create_group("/entry/plot") +f["/entry/plot"].attrs["NX_class"] = "NXdata" +f["/entry/plot/wavelength_x"] = np.arange(100) +f["/entry/plot/intensity_y"] = np.arange(3) +f["/entry/plot"].attrs["axes"] = "wavelength_x" +f["/entry/plot"].attrs["signal"] = "intensity_y" + + +# f['/entry/dataset_example/x'] = X +# f['/entry/dataset_example/y'] = np.sin(X) +# f['/entry/dataset_example/y'].attrs['signal'] = 'y' +# f['/entry/dataset_example/y'].attrs['axes'] = 'x' From 613dbba26a74ee7afb0d9565e41cc1ebb468c011 Mon Sep 17 00:00:00 2001 From: Ron <139139971+RonHildebrandt@users.noreply.github.com> Date: Tue, 13 Aug 2024 15:23:14 +0200 Subject: [PATCH 04/33] relax con statement for cnxvalidate to be not available for windows - it just diffcult to install --- docs/how-tos/nexus-validation-dev-notes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/how-tos/nexus-validation-dev-notes.md b/docs/how-tos/nexus-validation-dev-notes.md index 8dd0575f6..93fe90cac 100644 --- a/docs/how-tos/nexus-validation-dev-notes.md +++ b/docs/how-tos/nexus-validation-dev-notes.md @@ -25,7 +25,7 @@ nexusformat.org listed two programs for the verification and validataion of NeXu 1. Is C/C++ based -2. Not possible for Windows (cmake did not found the libxml2 library. Other libs were found after some work) +2. Difficult to install for windows (cmake did not found the libxml2 library. Other libs were found after some work) 3. Last update 2 years ago - Repo is dead? From fea3a0468bc88308a29fbefceb1da3dd5ce207da Mon Sep 17 00:00:00 2001 From: Ron Hildebrandt Date: Wed, 14 Aug 2024 13:44:27 +0200 Subject: [PATCH 05/33] add comparison of nexus validation tools --- docs/how-tos/nexus-validation-dev-notes.md | 222 ++++++++++++++++++++- 1 file changed, 219 insertions(+), 3 deletions(-) diff --git a/docs/how-tos/nexus-validation-dev-notes.md b/docs/how-tos/nexus-validation-dev-notes.md index 93fe90cac..1a2fe4028 100644 --- a/docs/how-tos/nexus-validation-dev-notes.md +++ b/docs/how-tos/nexus-validation-dev-notes.md @@ -25,7 +25,7 @@ nexusformat.org listed two programs for the verification and validataion of NeXu 1. Is C/C++ based -2. Difficult to install for windows (cmake did not found the libxml2 library. Other libs were found after some work) +2. Not possible for Windows (cmake did not found the libxml2 library. Other libs were found after some work) 3. Last update 2 years ago - Repo is dead? @@ -70,7 +70,7 @@ Tools The first one only useful to check if the things in the file are "IN THE SCHEMA". Does not report missing things. -The second is in development. Has to be tested. +The second one was tested. Seems to be fine mostly, but reports some unexpected errors. Also does not report some errors, which were reportet by other tools. # Summary: @@ -169,6 +169,222 @@ here are some examples of the "messages" of the warnings: +# 3\. Testing different Validation outputs for a pynxtools-ellipsometry generated file. + + +## verify_nexus from pynxtools: +` verify_nexus SiO2onSi.ellips.nxs` + +``` +WARNING: Field /entry/data_collection/Delta_50deg/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_50deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_60deg/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_60deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_70deg/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_70deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_50deg/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_50deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_60deg/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_60deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_70deg/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_70deg_errors/@units written without documentation. +WARNING: Missing attribute: "/ENTRY/DATA/@axes" +WARNING: Missing attribute: "/ENTRY/DATA/@signal" +Invalid: The entry `entry` in file `SiO2onSi.ellips.nxs` is NOT a valid file according to the `NXellipsometry` application definition. +``` +_Total 14 Errors_ +_Total 3 Errors - without documentation_ +1. Psi+Delta with Unit+Errors written without doc. +2. Data @axes + @signal. May not find NXdata? Attributes are present in .nxs file. +3. entry not valid in NXellips. + +## read_nexus from pynxtools: +`read_nexus -f SiO2onSi.ellips.nxs > read_nexus_output_file.txt` +``` +NXellipsometry.nxdl.xml:/ENTRY/data_collection/data_software +NXprogram.nxdl.xml: +DEBUG: @url - IS NOT IN SCHEMA +#################################################### +NXellipsometry.nxdl.xml:/ENTRY/definition +NXoptical_spectroscopy.nxdl.xml:/ENTRY/definition +NXentry.nxdl.xml:/definition +DEBUG: @url - IS NOT IN SCHEMA +#################################################### +DEBUG: ===== GROUP (//entry/instrument/software_RC2 [NXellipsometry::/NXentry/NXinstrument/software_RC2]): +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +#################################################### +DEBUG: ===== FIELD (//entry/instrument/software_RC2/program): +DEBUG: value: b'CompleteEASE' +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +#################################################### +DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@url) +DEBUG: value: https://www.jawoollam.com/ellipsometry-software/completeease +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +#################################################### +DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@version) +DEBUG: value: 6.37 +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +#################################################### +``` +_Total 6 Errors_ +1. @url. Changing to @URL could fix this maybe. +2. Software_RC2 not detected as NXprogram. This is indeed not assigned. + +## nxnvalidate from cnxvalidate: +`PATH_TO_NX_VALIDATE_EXE/nxvalidate -l PATH_TO_FAIRMAT_NEXUS_DEF/nexus_definitions/ PATH_TO_NEXUS_FILE/SiO2onSi.ellips.nxs` +``` +definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { H5T_STD_I8LE; "FALSE" 0; "TRUE" 1; }" nxdlPath=/NXentry/NXinstrument/NXlens_opt/data_correction sev=error dataPath=/entry/instrument/focussing_probes/data_correction dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXbeam sev=error dataPath=/entry/instrument dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXdetector sev=error dataPath=/entry/instrument dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { H5T_STD_I8LE; "FALSE" 0; "TRUE" 1; }" nxdlPath=/NXentry/NXsample/backside_roughness sev=error dataPath=/entry/sample/backside_roughness dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXdata/measured_data sev=error dataPath=/entry/data_collection/measured_data dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_STRING { STRSIZE H5T_VARIABLE; STRPAD H5T_STR_NULLTERM; CSET H5T_CSET_UTF8; CTYPE H5T_C_S1; }" nxdlPath=/NXentry/NXidentifier/is_persistent sev=error dataPath=/entry/experiment_identifier/is_persistent dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXdata sev=error dataPath=/entry dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXprocess/depolarization sev=error dataPath=/entry/derived_parameters/depolarization dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +9 errors and 85 warnings found when validating /home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +``` +_Total 8 or 9 Errors_ +1. Datatype mismatch for Bools: "H5T_STRING" or "H5T_ENUM" instead of "NX_BOOLEAN". In NXlens_opt, backside_roughness and is_persistent. +2. NXbeam + NXdetector: Has a problem with " exists: [min, 1, max, infty]" +3. "/NXentry/NXdata/measured_data". Units are missing (unit should be NX_ANY). +4. It does not find the NXdata (in this file it is at /entry/data_collection/). +5. Depolarization is not assigned the unit NX_unitless. + + +## validate from punx: +`punx validate SiO2onSi.ellips.nxs` +Not possible, as only the NIAC NeXus definitoon can right now be used as reference. Did not found out if `punx install` is functional to install the FAIRmat NeXus definition. + + +# Summary +| Error Message | origin | Error in .nxs file? | Error in validation tool? | +| ---------------- | ---| ------------------------ | ------------------------ | +| unit + error without doc | verify_nexus | ? | ? | +| no @signal @axes for NXdata | verify_nexus | no | yes | +| entry not valid in NXellips | verify_nexus | ? | ? | +| @url error | read_nexus | no | yes | +| Software_RC2 no NXprogram | read_nexus | yes | no | +| Bool Data types | nxvalidate | ? | ? | +| exists: [min, 1, max, infty] | nxvalidate | no | yes | +| Unit missing for measured_data| nxvalidate | yes | no | +| NXdata not present | nxvalidate | no | yes | +| No unit for depolarization | nxvalidate | yes | no | + + + + + + + +# 4\. Testing different Validation outputs for a pynxtools-ellipsometry generated file. + + +## verify_nexus from pynxtools: +` verify_nexus SiO2onSi.ellips.nxs` + +``` +WARNING: Field /entry/data_collection/Delta_50deg/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_50deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_60deg/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_60deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_70deg/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_70deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_50deg/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_50deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_60deg/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_60deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_70deg/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_70deg_errors/@units written without documentation. +WARNING: Missing attribute: "/ENTRY/DATA/@axes" +WARNING: Missing attribute: "/ENTRY/DATA/@signal" +Invalid: The entry `entry` in file `SiO2onSi.ellips.nxs` is NOT a valid file according to the `NXellipsometry` application definition. +``` +_Total 14 Errors_ +_Total 3 Errors - without documentation_ +1. Psi+Delta with Unit+Errors written without doc. +2. Data @axes + @signal. May not find NXdata? Attributes are present in .nxs file. +3. entry not valid in NXellips. + +## read_nexus from pynxtools: +`read_nexus -f SiO2onSi.ellips.nxs > read_nexus_output_file.txt` +``` +NXellipsometry.nxdl.xml:/ENTRY/data_collection/data_software +NXprogram.nxdl.xml: +DEBUG: @url - IS NOT IN SCHEMA +#################################################### +NXellipsometry.nxdl.xml:/ENTRY/definition +NXoptical_spectroscopy.nxdl.xml:/ENTRY/definition +NXentry.nxdl.xml:/definition +DEBUG: @url - IS NOT IN SCHEMA +#################################################### +DEBUG: ===== GROUP (//entry/instrument/software_RC2 [NXellipsometry::/NXentry/NXinstrument/software_RC2]): +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +#################################################### +DEBUG: ===== FIELD (//entry/instrument/software_RC2/program): +DEBUG: value: b'CompleteEASE' +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +#################################################### +DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@url) +DEBUG: value: https://www.jawoollam.com/ellipsometry-software/completeease +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +#################################################### +DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@version) +DEBUG: value: 6.37 +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +#################################################### +``` +_Total 6 Errors_ +1. @url. Changing to @URL could fix this maybe. +2. Software_RC2 not detected as NXprogram. This is indeed not assigned. + +## nxnvalidate from cnxvalidate: +`PATH_TO_NX_VALIDATE_EXE/nxvalidate -l PATH_TO_FAIRMAT_NEXUS_DEF/nexus_definitions/ PATH_TO_NEXUS_FILE/SiO2onSi.ellips.nxs` +``` +definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { H5T_STD_I8LE; "FALSE" 0; "TRUE" 1; }" nxdlPath=/NXentry/NXinstrument/NXlens_opt/data_correction sev=error dataPath=/entry/instrument/focussing_probes/data_correction dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXbeam sev=error dataPath=/entry/instrument dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXdetector sev=error dataPath=/entry/instrument dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { H5T_STD_I8LE; "FALSE" 0; "TRUE" 1; }" nxdlPath=/NXentry/NXsample/backside_roughness sev=error dataPath=/entry/sample/backside_roughness dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXdata/measured_data sev=error dataPath=/entry/data_collection/measured_data dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_STRING { STRSIZE H5T_VARIABLE; STRPAD H5T_STR_NULLTERM; CSET H5T_CSET_UTF8; CTYPE H5T_C_S1; }" nxdlPath=/NXentry/NXidentifier/is_persistent sev=error dataPath=/entry/experiment_identifier/is_persistent dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXdata sev=error dataPath=/entry dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXprocess/depolarization sev=error dataPath=/entry/derived_parameters/depolarization dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +9 errors and 85 warnings found when validating /home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +``` +_Total 8 or 9 Errors_ +1. Datatype mismatch for Bools: "H5T_STRING" or "H5T_ENUM" instead of "NX_BOOLEAN". In NXlens_opt, backside_roughness and is_persistent. +2. NXbeam + NXdetector: Has a problem with " exists: [min, 1, max, infty]" +3. "/NXentry/NXdata/measured_data". Units are missing (unit should be NX_ANY). +4. It does not find the NXdata (in this file it is at /entry/data_collection/). +5. Depolarization is not assigned the unit NX_unitless. + + +## validate from punx: +`punx validate SiO2onSi.ellips.nxs` +Not possible, as only the NIAC NeXus definitoon can right now be used as reference. Did not found out if `punx install` is functional to install the FAIRmat NeXus definition. + + +# Summary +| Error Message | origin | Error in .nxs file? | Error in validation tool? | +| ---------------- | ---| ------------------------ | ------------------------ | +| unit + error without doc | verify_nexus | ? | ? | +| no @signal @axes for NXdata | verify_nexus | no | yes | +| entry not valid in NXellips | verify_nexus | ? | ? | +| @url error | read_nexus | no | yes | +| Software_RC2 no NXprogram | read_nexus | yes | no | +| Bool Data types | nxvalidate | ? | ? | +| exists: [min, 1, max, infty] | nxvalidate | no | yes | +| Unit missing for measured_data| nxvalidate | yes | no | +| NXdata not present | nxvalidate | no | yes | +| No unit for depolarization | nxvalidate | yes | no | + @@ -178,7 +394,7 @@ here are some examples of the "messages" of the warnings: -# 3\. Installation Notes +# 4\. Installation Notes ## cnxvalidate installation on Ubuntu 22.04 From 0ddaddf3b247433ce6691c32142558fb99cd132d Mon Sep 17 00:00:00 2001 From: Ron Hildebrandt Date: Tue, 27 Aug 2024 12:55:59 +0200 Subject: [PATCH 06/33] split How-To in 2 parts, include PR comments/critique --- docs/how-tos/create-nexus-files-by-python.md | 236 +++++++ ...=> internal-nexus-validation-dev-notes.md} | 115 +--- ...alidate-them.md => validate-nexus-file.md} | 587 +++++++----------- docs/index.md | 10 +- mkdocs.yaml | 2 + 5 files changed, 478 insertions(+), 472 deletions(-) create mode 100644 docs/how-tos/create-nexus-files-by-python.md rename docs/how-tos/{nexus-validation-dev-notes.md => internal-nexus-validation-dev-notes.md} (67%) rename docs/how-tos/{create-nexus-files-by-python-and-validate-them.md => validate-nexus-file.md} (52%) diff --git a/docs/how-tos/create-nexus-files-by-python.md b/docs/how-tos/create-nexus-files-by-python.md new file mode 100644 index 000000000..35b81fc33 --- /dev/null +++ b/docs/how-tos/create-nexus-files-by-python.md @@ -0,0 +1,236 @@ +# Create NeXus files by python + +# The goal + +Use python to create a NeXus file (.nxs) by hardcoding via the python package h5py. NeXus files can as well be created by our software [pynxtools](https://github.com/FAIRmat-NFDI/pynxtools) automatically, IF a recipe for the specific device/instrument/data-structure is written. This How-To is intended as easy access to FAIRdata structures via NeXus. For static-datastructures (i.e. always the same type of standard measurement) or one-time examples (small data publications), this may provide a feasable solution. For large scaled automated file processing, storage and validatation use [pynxtools](https://github.com/FAIRmat-NFDI/pynxtools) and it's measurement method specific plugins. + +You can find the necessary file downloads [here](https://zenodo.org/records/13373909). + + + +# Create NeXus by hardcoding with python + +Install h5py via pip by `pip install h5py` + +Then you can create a nexus file by the python script called [h5py_nexus_file_creation.py](https://zenodo.org/records/13373909/files/h5py_nexus_file_creation.py?download=1). + +``` +# Import h5py, to write an hdf5 file +import h5py + +# create a h5py file in writing mode with given name "NXopt_minimal_example", file extension "nxs" +f = h5py.File("NXopt_minimal_example.nxs", "w") + +# there are only 3 fundamental objects: >group<, >attribute< and >datafield<. + + +# create a >group< called "entry" +f.create_group('/entry') + +# assign the >group< called "entry" an >attribute< +# The attribute is "NX_class"(a NeXus class) with the value of this class is "NXentry" +f['/entry'].attrs['NX_class'] = 'NXentry' + +# create >datafield< called "definition" inside the entry, and assign it the value "NXoptical_spectroscopy" +# This field is important, as it is used in validation process to identify the NeXus definition. +f['/entry/definition'] = 'NXoptical_spectroscopy' +``` + +This proves a starting point of the NeXus file. We will go through these functions in the following. + + + +# 2. Fill the content of the .nxs file + +Go to [FAIRmat NeXus definitions]() + +Scroll down until you see the search box named "Quick search". + +Type "NXoptical" and press start the search. + +You see several search results, select the one with is named "NXoptical\_spectroscopy". + +Then you are (ideally) on this page: [NXoptical_spectroscopy NeXus definition]() + +You see a tree like structure of the NeXus definition NXoptical\_spectrosocopy with several tree nodes: Status, Description, Symbols, Groups\_cited, Structure. For now, only the part in Structure is of interest. This contains the information, which has to be written in the python code to add fields/groups/attributes to the NeXus file. + +Use your browser search (CRTL+F) and search for "required". Ideally your browser highlights all entries which are required. You have to add those to the python script, to extend your created .nxs file. (Which fields/groups/attributes are "required" was defined by the respective scientific community, to ensure that the data serves the FAIR principles.) + +In the following, it will be shown, how the python script has to be extended for the three fundamental objects: + +1. Attribute + +2. Datafield + +3. Group + + + + + +# 3. Adding a NeXus attribute + +Search for the first concept/object in the NeXus file, which is not created yet. It is: + +**@version**: (required) [NX\_CHAR]() [⤆]() + +1. It is located in the tree at position: ENTRY/definition/ + +2. The "@" indicates that this is an attribute of the concept "definition". + +3. The name of the attribute is "version". + +4. Since it is "required", thas this attribute has to be added so that the resulting NeXus file is compliant with the NeXus definition "NXoptical\_spectroscopy". + +5. The "NX\_CHAR" indicates the datatype. This should be a string: "The preferred string representation is UTF-8" (more information see [here]()) + +![image.png](<./attachments/51dc82f9f0f5ec2f-image.png>) + +Now the python script has to be extended in the following: + +``` +f['/entry/definition'].attrs['version'] = 'v2024.02' +``` + +This h5py command adds the attribute named "version" with the value "v2024.02" to the HDF5 dataset called "/entry/definition". The same is done for the URL attribute: + +``` +f['/entry/definition'].attrs['URL'] = 'https://github.com/FAIRmat-NFDI/nexus_definitions/blob/f75a29836431f35d68df6174e3868a0418523397/contributed_definitions/NXoptical_spectroscopy.nxdl.xml' +``` + +For your use case, you may want to use a different version of the NeXus definitions, since these are changed over time. In the following, it is shown where to obtain the correct version and URL. + +### How to get the "version" and "URL" values + +At the time, you create the NeXus definition. Go to the page of the respectively used NeXus concept, i.e. [NXoptical_spectroscopy]() + +Scroll down until you find "**NXDL Source**:" and follow this link, i.e. [NXoptical_spectroscopy.nxdl.xml]() + +This is the GitHub website, in which the latest (FAIRmat) NeXus definition of NXoptical\_spectroscopy is stored in the NeXus definition language file (.nxdl). The information is structured in the xml format. + +Now you have to copy the permalink of this file. Go to the top right side of the website. Find the Menu made by 3 dots: + +![image.png](<./attachments/c6ab2f4b925aed27-image.png>) + +Copy the permalink and insert it as value for the "URL" attribute (Step 1, Red box in the image) + +Go to "nexus\_definitions" (Step 2, Red box in the image) + +![image.png](<./attachments/d8e727b3b32dcbb9-image.png>) + +On the right side, you should see below "Releases" the "tags" (Red box in the image). Follow this link. + +Copy the latest Tag, which should look similar to "v2024.02". Insert it as value for the "version" attribute. + + + + + + + +# 4. Adding a datafield + +Two attributes were added two "ENTRY/definition", both of which were required. By now, this part of the NeXus file fulfills the requirements of the application definition NXoptical\_spectroscopy. + +The next required concept of [NXoptical_spectrsocopy](https://fairmat-nfdi.github.io/nexus_definitions/classes/contributed_definitions/NXoptical_spectroscopy.html) is "**experiment\_type"**. + +**experiment\_type**: (required) [NX\_CHAR]() + +1. It is located in the tree at position: ENTRY/ + +2. There is no "@" in front of "**experiment\_type"**. So, this may be a group or a datafield. + +3. The name of this group/datafield is "**experiment\_type**". + +4. The "required" indicates, that this group/datafield has to be added to be in line with the NeXus definition "NXoptical\_spectroscopy". + +5. The "NX\_CHAR" indicates the datatype. This should be a string: "The preferred string representation is UTF-8" (more information see [here]()). + +6. The "NX\_CHAR" indicates that this is a datafield. It is NOT a group. + A group would have a link to a NeXus class (i.e. for "**ENTRY**: (required) [NXentry"]() to [a link with "classes" in it]()). + As it is a field, the link directs to a data type (i.e. [a link with "nxdl-types" in it]()). + +Read the documentation at "▶ Specify the type of the optical experiment. ..." by extending it via click on the triangle symbol. You should see something like this: + +![image.png](<./attachments/5cbd8c6a1ca227df-image.png>) + +There, the value of the datafield, has to be one of the shwon list. e.g "transmission spectroscopy", since it is an enumeration. Note that this is case sensitive. + +Therefore, the python script has to be extended by: + +``` +f['/entry/experiment_type'] = 'transmission spectroscopy' +``` + + + + + +# 5. Adding a group + +The first required group in NXoptical\_spectroscopy on the "ENTRY/" level is "**INSTRUMENT**: (required) [NXinstrument]() [⤆"]() + +1. It is located in the tree at position: NXentry/experiment_type + +2. There is no "@" in front of "**INSTRUMENT"** and because the "NXinstrument" is a NeXus class, this has to be implemented as group in the python script. + +3. The "required" indicates that this group has to be added to be in line with the NeXus definition "NXoptical\_spectroscopy". + +4. The "NXinstrument" indicates that it is a NeXus class (or group in python), as it starts with "NX". + +5. As this is a group, attributes or valuees may be assigned to it. + +6. As this is a group, it can contain many datafields or groups. + +7. The uppercase notation of "**INSTRUMENT**" means: + + 1. You can give INSTRUMENT any name, such as "abc" or "Raman\_setup". + + 2. You can create as many groups with the class NXinstrument as you want. Their names have to be different. + + 3. For more information see the [NeXus rules]() + +The respective python code to implement a NXinstrument class (or equivalently in python group) with the name "experiment\_setup\_1" is: + +``` +f.create_group('/entry/experiment_setup_1') +f['/entry/experiment_setup_1'].attrs['NX_class'] = 'NXinstrument' +``` + +The first line creates the group with the name "experiment\_setup\_1". + +The second line assigns this group the attribute with the name "NX\_class" and it's value "NXinstrument". + + + + + +# 6. Finishing the .nxs file + +This has to be done by using the respective NeXus definiton website: + +[NXoptical_spectroscopy]() + +And by searching for all "required" entries. The next required entries are located inside the NXinstrument class: + +1. **beam\_TYPE**: (required) [NXbeam]() [⤆]() + +2. **detector\_TYPE**: (required) [NXdetector]() [⤆]() + +Both are groups. "**beam\_TYPE"** could be named: "beam\_abc" or "beam\_Raman\_setup". Use the knowledge above to extend the python script to create those NeXus file entries. + +### Note for required concepts in optional fields/groups: + +Above in the definition of NXoptical\_spectroscopy, you as well may found a required entry "**depends\_on**: (required) [NX\_CHAR]() [⤆"](). This is at the level of "ENTRY/reference\_frames/beam\_ref\_frame". If you dont have the group "**beam\_ref\_frame"** because this is "optional", then you don't need to have this field. + + + + +### Feedback and contact: + +1. Best way is to contact the software development directly via a [Github Issue](https://github.com/FAIRmat-NFDI/nexus_definitions/issues/new). + +2. ron.hildebrandt(at)physik.hu-berlin.de + + + diff --git a/docs/how-tos/nexus-validation-dev-notes.md b/docs/how-tos/internal-nexus-validation-dev-notes.md similarity index 67% rename from docs/how-tos/nexus-validation-dev-notes.md rename to docs/how-tos/internal-nexus-validation-dev-notes.md index 1a2fe4028..dc4dd5a2c 100644 --- a/docs/how-tos/nexus-validation-dev-notes.md +++ b/docs/how-tos/internal-nexus-validation-dev-notes.md @@ -275,119 +275,10 @@ Not possible, as only the NIAC NeXus definitoon can right now be used as referen | No unit for depolarization | nxvalidate | yes | no | +### NOTE ### +Only the nxvalidate method seems to point out completely missing required concepts. - - - - -# 4\. Testing different Validation outputs for a pynxtools-ellipsometry generated file. - - -## verify_nexus from pynxtools: -` verify_nexus SiO2onSi.ellips.nxs` - -``` -WARNING: Field /entry/data_collection/Delta_50deg/@units written without documentation. -WARNING: Field /entry/data_collection/Delta_50deg_errors/@units written without documentation. -WARNING: Field /entry/data_collection/Delta_60deg/@units written without documentation. -WARNING: Field /entry/data_collection/Delta_60deg_errors/@units written without documentation. -WARNING: Field /entry/data_collection/Delta_70deg/@units written without documentation. -WARNING: Field /entry/data_collection/Delta_70deg_errors/@units written without documentation. -WARNING: Field /entry/data_collection/Psi_50deg/@units written without documentation. -WARNING: Field /entry/data_collection/Psi_50deg_errors/@units written without documentation. -WARNING: Field /entry/data_collection/Psi_60deg/@units written without documentation. -WARNING: Field /entry/data_collection/Psi_60deg_errors/@units written without documentation. -WARNING: Field /entry/data_collection/Psi_70deg/@units written without documentation. -WARNING: Field /entry/data_collection/Psi_70deg_errors/@units written without documentation. -WARNING: Missing attribute: "/ENTRY/DATA/@axes" -WARNING: Missing attribute: "/ENTRY/DATA/@signal" -Invalid: The entry `entry` in file `SiO2onSi.ellips.nxs` is NOT a valid file according to the `NXellipsometry` application definition. -``` -_Total 14 Errors_ -_Total 3 Errors - without documentation_ -1. Psi+Delta with Unit+Errors written without doc. -2. Data @axes + @signal. May not find NXdata? Attributes are present in .nxs file. -3. entry not valid in NXellips. - -## read_nexus from pynxtools: -`read_nexus -f SiO2onSi.ellips.nxs > read_nexus_output_file.txt` -``` -NXellipsometry.nxdl.xml:/ENTRY/data_collection/data_software -NXprogram.nxdl.xml: -DEBUG: @url - IS NOT IN SCHEMA -#################################################### -NXellipsometry.nxdl.xml:/ENTRY/definition -NXoptical_spectroscopy.nxdl.xml:/ENTRY/definition -NXentry.nxdl.xml:/definition -DEBUG: @url - IS NOT IN SCHEMA -#################################################### -DEBUG: ===== GROUP (//entry/instrument/software_RC2 [NXellipsometry::/NXentry/NXinstrument/software_RC2]): -DEBUG: classpath: ['NXentry', 'NXinstrument'] -DEBUG: NOT IN SCHEMA -#################################################### -DEBUG: ===== FIELD (//entry/instrument/software_RC2/program): -DEBUG: value: b'CompleteEASE' -DEBUG: classpath: ['NXentry', 'NXinstrument'] -DEBUG: NOT IN SCHEMA -#################################################### -DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@url) -DEBUG: value: https://www.jawoollam.com/ellipsometry-software/completeease -DEBUG: classpath: ['NXentry', 'NXinstrument'] -DEBUG: NOT IN SCHEMA -#################################################### -DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@version) -DEBUG: value: 6.37 -DEBUG: classpath: ['NXentry', 'NXinstrument'] -DEBUG: NOT IN SCHEMA -#################################################### -``` -_Total 6 Errors_ -1. @url. Changing to @URL could fix this maybe. -2. Software_RC2 not detected as NXprogram. This is indeed not assigned. - -## nxnvalidate from cnxvalidate: -`PATH_TO_NX_VALIDATE_EXE/nxvalidate -l PATH_TO_FAIRMAT_NEXUS_DEF/nexus_definitions/ PATH_TO_NEXUS_FILE/SiO2onSi.ellips.nxs` -``` -definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { H5T_STD_I8LE; "FALSE" 0; "TRUE" 1; }" nxdlPath=/NXentry/NXinstrument/NXlens_opt/data_correction sev=error dataPath=/entry/instrument/focussing_probes/data_correction dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXbeam sev=error dataPath=/entry/instrument dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXdetector sev=error dataPath=/entry/instrument dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { H5T_STD_I8LE; "FALSE" 0; "TRUE" 1; }" nxdlPath=/NXentry/NXsample/backside_roughness sev=error dataPath=/entry/sample/backside_roughness dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXdata/measured_data sev=error dataPath=/entry/data_collection/measured_data dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_STRING { STRSIZE H5T_VARIABLE; STRPAD H5T_STR_NULLTERM; CSET H5T_CSET_UTF8; CTYPE H5T_C_S1; }" nxdlPath=/NXentry/NXidentifier/is_persistent sev=error dataPath=/entry/experiment_identifier/is_persistent dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXdata sev=error dataPath=/entry dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXprocess/depolarization sev=error dataPath=/entry/derived_parameters/depolarization dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -9 errors and 85 warnings found when validating /home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -``` -_Total 8 or 9 Errors_ -1. Datatype mismatch for Bools: "H5T_STRING" or "H5T_ENUM" instead of "NX_BOOLEAN". In NXlens_opt, backside_roughness and is_persistent. -2. NXbeam + NXdetector: Has a problem with " exists: [min, 1, max, infty]" -3. "/NXentry/NXdata/measured_data". Units are missing (unit should be NX_ANY). -4. It does not find the NXdata (in this file it is at /entry/data_collection/). -5. Depolarization is not assigned the unit NX_unitless. - - -## validate from punx: -`punx validate SiO2onSi.ellips.nxs` -Not possible, as only the NIAC NeXus definitoon can right now be used as reference. Did not found out if `punx install` is functional to install the FAIRmat NeXus definition. - - -# Summary -| Error Message | origin | Error in .nxs file? | Error in validation tool? | -| ---------------- | ---| ------------------------ | ------------------------ | -| unit + error without doc | verify_nexus | ? | ? | -| no @signal @axes for NXdata | verify_nexus | no | yes | -| entry not valid in NXellips | verify_nexus | ? | ? | -| @url error | read_nexus | no | yes | -| Software_RC2 no NXprogram | read_nexus | yes | no | -| Bool Data types | nxvalidate | ? | ? | -| exists: [min, 1, max, infty] | nxvalidate | no | yes | -| Unit missing for measured_data| nxvalidate | yes | no | -| NXdata not present | nxvalidate | no | yes | -| No unit for depolarization | nxvalidate | yes | no | - - - - +I tested this with an empty NeXus file, in which only the "definition" was given. diff --git a/docs/how-tos/create-nexus-files-by-python-and-validate-them.md b/docs/how-tos/validate-nexus-file.md similarity index 52% rename from docs/how-tos/create-nexus-files-by-python-and-validate-them.md rename to docs/how-tos/validate-nexus-file.md index 270361823..0702bf889 100644 --- a/docs/how-tos/create-nexus-files-by-python-and-validate-them.md +++ b/docs/how-tos/validate-nexus-file.md @@ -1,291 +1,301 @@ -# Create NeXus files by python and validate them +# Validate NeXus files -# 1\. The goal +# The goal -1. Use python to create a NeXus file (.nxs) by hardcoding via the python package h5py +Use a tool to validate NeXus files to a given set of NeXus definitions: -2. Use a second tool to validate this hardcoded file to a given set of NeXus definitions: + 1. [FAIRmat](https://fairmat-nfdi.github.io/nexus_definitions/index.html#) - 1. FAIRmat [https://fairmat-nfdi.github.io/nexus\_definitions/index.html#]() + 2. [NIAC](https://manual.nexusformat.org/) - 2. NIAC [https://manual.nexusformat.org/]() +# Validation of a .nxs file +The validity of NeXus file is fundamental, to ensure FAIR data. Without specific requirements, it is not possible to understand the data. What type of experiment? What Laser Wavelength? Which voltage? What data is represented at all in the table? What is the unit of the value? Which ISO norm does this refer to? Where was this measured? Which year was this measured? +Therefore you have enter all required fields in the NeXus definition. The requirements are set by the community via workshops or at conferences. You can as well comment the NeXus definitions, to initiate or propose changes/additions. Go to the NeXus definition, and sign-up/log-in and give us some feedback (Red boxes in the image. Expand this panel on the left by clicking on the arrow symbol). +![image.png](<./attachments/9d748230d54a8059-image.png>) -# 2\. Create NeXus by hardcoding with python - -Install h5py via pip by `pip install h5py` - -Then you can create a python by the python script called "h5py\_nexus\_file\_creation.py". - -``` -# Import h5py, to write an hdf5 file -import h5py - -# create a h5py file in writing mode with given name "NXopt_minimal_example", file extension "nxs" -f = h5py.File("NXopt_minimal_example.nxs", "w") - -# there are only 3 fundamental objects: >group<, >attribute< and >datafield<. - - -# create a >group< called "entry" -f.create_group('/entry') - -# assign the >group< called "entry" an >attribute< -# The attribute is "NX_class"(a NeXus class) with the value of this class is "NXentry" -f['/entry'].attrs['NX_class'] = 'NXentry' - -# create >datafield< called "definition" inside the entry, and assign it the value "NXoptical_spectroscopy" -# This field is important, as it is used in validation process to identify the NeXus definition. -f['/entry/definition'] = 'NXoptical_spectroscopy' -``` - -This proves a starting point of the NeXus file. The comments indicated by "#" help to understand what these lines do. Well go through these functions in the following. - - - - - -# 2\.1. Fill the content of the .nxs file - -Go to [https://fairmat-nfdi.github.io/nexus\_definitions/index.html#]() - -Scroll down until you see the search box named "Quick search". - -Type "NXoptical" and press start the search. - -You see several search results, select the one with is named "NXoptical\_spectroscopy". - -Then you are (ideally) on this page: [https://fairmat-nfdi.github.io/nexus\_definitions/classes/contributed\_definitions/NXoptical\_spectroscopy.html]() - -You see a tree like structure of the NeXus definition NXoptical\_spectrosocopy with several tree nodes: Status, Description, Symbols, Groups\_cited, Structure. For now, only the part in Structure is of interest. This contains the information, which has to be written in the python code to extend the NeXus file, which is created by the script "NXopt\_minimal\_example.nxs". - -Use your browser search (CRTL+F) and search for "required". Ideally your browser highlights all entries which are required. You have to add those to the python script, to extend your created .nxs file. - -In the wollowing. It will be shown, how the python script has to be extendend for the three fundamental objects: - -1. Attribute - -2. Datafield - -3. Group - - +ftentimes, there will be errors in a generated NeXus file (be it by hand or automatically): Typos, missing required concepts, missing attributes, using the incorrect datatype or format (e.g., array instad of list, float instead of integer, etc.). Therefore, a validation is required, to ensure that the data you want to share, is FAIR. +The NeXus file is valid, if it complies with the respective NeXus application definition. +This validation is done by software. -# 2\.2. Adding an attribute -Search for the first entry in the NeXus file, which is not created yet. For me it is: -**@version**: (required) [NX\_CHAR]() [⤆]() -1. It is located in the Tree at position: ENTRY/definition/ -2. The "@" indicates, that this is an attribute of the concept "definition". +# 1. Validation software -3. The name of the attribute is "version". +There are right now three tools, which can be used for validation of NeXus files. All are different and have individual advantages or disadvantages: -4. The "required" indicates, that this attribute has to be added to be in line with the NeXus definition "NXoptical\_spectroscopy". +1. pynxtools -5. The "NX\_CHAR" indicates the datatype. This is should be a string: "The preferred string representation is UTF-8" (more information see here: [https://manual.nexusformat.org/nxdl-types.html]()) +2. cnxvalidate -![image.png](<./attachments/51dc82f9f0f5ec2f-image.png>) +3. punx -Now the python script has to be extended in the following: -``` -f['/entry/definition'].attrs['version'] = 'v2024.02' -``` - -This h5py command extends the entry "/entry/definition" by the attribute named "version" with the value "v2024.02". The same is done for the URL attribute: - -``` -f['/entry/definition'].attrs['URL'] = 'https://github.com/FAIRmat-NFDI/nexus_definitions/blob/f75a29836431f35d68df6174e3868a0418523397/contributed_definitions/NXoptical_spectroscopy.nxdl.xml' -``` +Open software is usually shared on Github - There you find usually the most accurate information, as documentation sometimes lags behind. There you see a box with folders and files. Below is the content of the README.md file displayed. This usually shows instructions for installation and handling of the software. -Though, you have to use your versions which you want to refer to, as in a few years this NeXus definition might change a little bit. This is shown in the following. +Here are the GitHub links for the thee software packages: -### How to get the "version" and "URL" values +[cnxvalidate]() -At the time, you create the NeXus definition. Go to the page of the respectively used NeXus concept, i.e. [https://fairmat-nfdi.github.io/nexus\_definitions/classes/contributed\_definitions/NXoptical\_spectroscopy.html]() +[punx]() -Scroll down until you find "**NXDL Source**:" and follow this link, i.e. [https://github.com/FAIRmat-NFDI/nexus\_definitions/blob/fairmat/contributed\_definitions/NXoptical\_spectroscopy.nxdl.xml]() +[pynxtools]() -This is the github website, in which the latest NeXus definition of NXoptical\_spectroscopy is stored in the NeXus definition language file (.nxdl). The information is structured in the xml format. +In the following, each package and its capabilities is presented. -Now you have to copy the permalink of this file. Go to the top right side of the website. Find the Menu made by 3 dots: +### Operating systems -![image.png](<./attachments/c6ab2f4b925aed27-image.png>) +Almost all PC users are used to Windows as operating system. -Copy the permalink and insert it as value for the "URL" attribute (Step 1, Red box in the image) +A lot of Software development is done on Linux as operating system. -Go to "nexus\_definitions" (Step 2, Red box in the image) +This is not a problem for big company, but for smaller open software projects, which ared often developed without funding, this is a problem. -![image.png](<./attachments/d8e727b3b32dcbb9-image.png>) +If you are used to Windows, consider setting up a Linux operating system to eliminate problems in the installation process and ensure compatibility. -On the right side, you should see below "Releases" the "tags" (Red box in the image). Follow this link. -Copy the latest Tag, which should look similar to "v2024.02". Insert it as value for the "version" attribute. +# 2 pynxtools - Python Nexus Tools -# 2\.3. Adding a datafield +This is python package which is developed by the FAIRmat consortium. -Two attributes were added two "ENTRY/definition". Both were required. By this, now this part of the NeXus file is in line with the NeXus Definition for NXoptical\_spectroscopy. +As python package, this can be used on Linux and Windows systems. -The next required entry of this NeXus definition (use [https://fairmat-nfdi.github.io/nexus\_definitions/classes/contributed\_definitions/NXoptical\_spectroscopy.html]() with brwoser search for "required") is "**experiment\_type"**. +The package can be installed via pip. Therefore you need to have installed: -**experiment\_type**: (required) [NX\_CHAR]() +1. python -1. It is located in the Tree at position: ENTRY/ +2. pip -2. There is no "@" in front of "**experiment\_type"**. So, this may be a group or a datafield. +This tool has 3 command line functions: -3. The name of this group/datafield is "**experiment\_type**". +1. [dataconverter]() -4. The "required" indicates, that this group/datafield has to be added to be in line with the NeXus definition "NXoptical\_spectroscopy". +2. [read\_nexus]() -5. The "NX\_CHAR" indicates the datatype. This is should be a string: "The preferred string representation is UTF-8" (more information see here: [https://manual.nexusformat.org/nxdl-types.html]()). +3. [generate\_eln]() -6. The "NX\_CHAR" indicates, that this is a datafield. It is NOT a group. - A group would have a link to a NeXus class (i.e. for "**ENTRY**: (required) [NXentry"]() to [https://fairmat-nfdi.github.io/nexus\_definitions/**classes**/base\_classes/NXentry.html#nxentry]()). - As it is a field, the link directs to a data type (i.e. [https://fairmat-nfdi.github.io/nexus\_definitions/**nxdl-types**.html#nx-char]()). +4. [verify\_nexus](https://github.com/FAIRmat-NFDI/pynxtools/pull/333) -Read the documentation at "▶ Specify the type of the optical experiment. ..." by extending it via click on the triangle symbol. You should see something like this: -![image.png](<./attachments/5cbd8c6a1ca227df-image.png>) +For validation purposes, we will use the "read\_nexus" and "verify\_nexus" function. -There value of the datafile has to be one of the list. e.g "transmission spectroscopy". This is case sensitive. Best is to just copy the string from the website and paste it into the python script. +# 2.1 verify_nexus -Therefore, the python script has to be extended by: +This tool is currently in development. It enables a command like: ``` -f['/entry/experiment_type'] = 'transmission spectroscopy' +verify_nexus C:\nexusvalidation\Raman.nxs ``` +The outpu warning looks like this: +``` +... +WARNING: Field /entry/instrument/beam_incident/wavelength/@units written without documentation. +... +``` +# 2.1.1 Installation verfiy_nexus +Aside of read_nexus, there is a second functionality from pynxtools. This method is currently in development (Aug 2024). This function is called: verify\_nexus. Therefore, you have to use the development install, until this function is published. -# 2\.4. Adding a group +Do this to install pynxtools with verify\_nexus -The first required group in NXoptical\_spectroscopy on the "ENTRY/" level is "**INSTRUMENT**: (required) [NXinstrument]() [⤆"]() +``` +git clone https://github.com/FAIRmat-NFDI/pynxtools/tree/hdf-based-validation +cd pynxtools +git checkout git checkout hdf-based-validation +git submodule sync --recursive +git submodule update --init --recursive --jobs=4 +python -m pip install --upgrade pip +python -m pip install -e . +python -m pip install -e ".[dev]" +``` -1. It is located in the Tree at position: ENTRY/ +then, the help function should be available: -2. There is no "@" in front of "**INSTRUMENT"** and because the "NXinstrument" points to link of a NeXus class, this has to be implemented as group in the python script. +``` +verify_nexus --help +``` -3. The "required" indicates, that this group has to be added to be in line with the NeXus definition "NXoptical\_spectroscopy". +with this output: -4. The "NXinstrument" indicates via the link, that it is a NeXus class (or group in python). +``` +Usage: verify_nexus [OPTIONS] FILE -5. As this is a group, only attributes can be assigned to this. No value is assigned to the group. -6. As this is a group, it can contain many datafield or groups. + Verifies a nexus file -7. The uppercase notation of "**INSTRUMENT**" means: +Options: + --help Show this message and exit. +``` - 1. You can give INSTRUMENT any name, such as "abc" or "Raman\_setup". - 2. You can create as many groups with the class NXinstrument as you want. Their names have to be different. +# 2.1.2 Using verify\_nexus - 3. For more information see: [https://github.com/FAIRmat-NFDI/pynxtools/blob/master/docs/learn/nexus-rules.md]() +Open your terminal. Assuming there is a folder at: -The respective python code to implement a NXinstrument class (or equivalently in python group) with the name "experiment\_setup\_1" is: +For Linux: ``` -f.create_group('/entry/experiment_setup_1') -f['/entry/experiment_setup_1'].attrs['NX_class'] = 'NXinstrument' +/home/USER/nexusvalidation ``` -The first line creates the group with the name "experiment\_setup\_1". - -The second line, assigns this group the attribute with the name "NX\_class" and it's value "NXinstrument". - - - - - -# 2\.5. Finishing the .nxs file - -This has to be done by using the respective NeXus definiton website: +For Windows: -[https://fairmat-nfdi.github.io/nexus\_definitions/classes/contributed\_definitions/NXoptical\_spectroscopy.html]() +``` +C:\nexusvalidation +``` -And by searching for all "required" entries. The next required entries are located inside the NXinstrument class: +Put into this folder your NeXus file, for example the [Raman.nxs file](https://zenodo.org/records/13373909/files/Raman.nxs?download=1). -1. **beam\_TYPE**: (required) [NXbeam]() [⤆]() +Use verify nexus with the command: -2. **detector\_TYPE**: (required) [NXdetector]() [⤆]() +``` +verify_nexus C:\nexusvalidation\Raman.nxs +``` -Both are groups. "**beam\_TYPE"** could be named: "beam\_abc" or "beam\_Raman\_setup". Use the knowledge above to extend the python script to create those NeXus file entries. +The respective output is: -### Note for required entries: +``` +WARNING: Field /entry/data/spectrum_data_x/@units written without documentation. +WARNING: Field /entry/data/spectrum_data_x_Raman/@units written without documentation. +WARNING: Field /entry/data/spectrum_data_y/@units written without documentation. +WARNING: Field /entry/instrument/beam_incident/wavelength/@units written without documentation. +WARNING: Field /entry/instrument/detector_DU970BV/number_of_cycles/@units written without documentation. +Invalid: The entry `entry` in file `Raman.nxs` is NOT a valid file according to the `NXraman` application definition. +``` -Above in the definition of NXoptical\_spectroscopy, you as well may found a required entry "**depends\_on**: (required) [NX\_CHAR]() [⤆"](). This is at the level of "ENTRY/reference\_frames/beam\_ref\_frame". If you dont have the group "**beam\_ref\_frame"** because this is "optional", then you don't need to have this field. +# 2.2 read_nexus +The command used is: +``` +read_nexus -f NXopt_minimal_example.nxs +``` +The output looks like this, if the respective entry is found: +``` +DEBUG: ===== FIELD (//entry/experiment_type): +DEBUG: value: b'transmission spectroscopy' +DEBUG: classpath: ['NXentry', 'NX_CHAR'] +DEBUG: classes: +NXoptical_spectroscopy.nxdl.xml:/ENTRY/experiment_type +DEBUG: <> +DEBUG: enumeration (NXoptical_spectroscopy.nxdl.xml:/ENTRY/experiment_type): +DEBUG: -> photoluminescence +DEBUG: -> transmission spectroscopy +DEBUG: -> reflection spectroscopy +DEBUG: -> other +DEBUG: documentation (NXoptical_spectroscopy.nxdl.xml:/ENTRY/experiment_type): +DEBUG: + Specify the type of the optical experiment. + + Chose other if none of these methods are suitable. You may specify + fundamental characteristics or properties in the experimental sub-type. + + For Raman spectroscopy or ellipsometry use the respective specializations + of NXoptical_spectroscopy. +``` +or like this, if the respective entry is not found in the defintion: +``` +DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@url) +DEBUG: value: https://www.jawoollam.com/ellipsometry-software/completeease +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +DEBUG: +``` +The first example was for for "experiment\_type" entry in the "NXoptical\_spectroscopy" definition. -# 3\. Validation of a .nxs file +The second example was for the "software\_TYPE" attribute @URL entry in the "NXoptical\_spectroscopy" definition. Here the problem was that "url" was used instead of "URL". -The validity of NeXus file is fundamental, to ensure FAIR data. Without specific requirements, it is not possible to understand the data. What type of experiment? What Laser Wavelength? Which voltage? What data is represented at all in the table? What is the unit of the value? Which ISO norm does this refer to? Where was this measured? Which year was this measured? -Therefore you have enter all required fields in the NeXus definition. The requirements are set by the community via Workshops, or at Conferences. You can as well comment the NeXus definitions, to initiate or propose changes/additions. Go to the NeXus definition, and sign-up/log-in and give us some feedback (Red boxes in the image. Expand this panel on the left by clicking on the arrow symbol). -![image.png](<./attachments/9d748230d54a8059-image.png>) -Though, humans make errors: Typos, missing requirements, forget to add attributes, using the incorrect datatype or format (Matrix instead of List, Float instead of integer, etc.). Therefore a validation is required, to ensure, that you can share finally your FAIR data. +# 2.2.1 Installation read_nexus -This is done by software. +This is installed with pip: +``` +pip install pynxtools +``` +# 2.2.2 Using the read\_nexus function +Open your terminal. Assuming there is a folder at: -# 3\.1. Validation software +For Linux: -There are right now three methods, which can be used for validation of NeXus files. All are different and have individual advantages or disadvantages: +``` +/home/USER/nexusvalidation +``` -1. cnxvalidate +For Windows: -2. punx +``` +C:\nexusvalidation +``` -3. pynxtools +Put into this folder your NeXus file, for example the [Raman.nxs file](https://zenodo.org/records/13373909/files/Raman.nxs?download=1). -Open software is usually shared on Github - There you find usually the most accurate information, as documentation sometimes lags behind. There you see a box with folders and files. Below is the content of the README.md file displayed. This usually shows instructions for installation and handling of the software. +Then use: -Here are the GitHub links for the thee software packages: +``` +read_nexus -f C:\nexusvalidation\Raman.nxs +``` -cnxvalidate: [https://github.com/nexusformat/cnxvalidate]() +shows the output like this: -punx: [https://github.com/prjemian/punx]() +``` +===== FIELD (//entry/data/spectrum_data_y): +DEBUG: ===== FIELD (//entry/data/spectrum_data_y): +value: [ 288.5499878 289. 288.4500122 ... 1875. 1889.349976 ... +DEBUG: value: [ 288.5499878 289. 288.4500122 ... 1875. 1889.349976 ... +Dataset referenced as NXdata SIGNAL +DEBUG: Dataset referenced as NXdata SIGNAL +===== ATTRS (//entry/data/spectrum_data_y@long_name) +DEBUG: ===== ATTRS (//entry/data/spectrum_data_y@long_name) +value: Raman Intensity +DEBUG: value: Raman Intensity +Dataset referenced as NXdata SIGNAL +DEBUG: Dataset referenced as NXdata SIGNAL +===== ATTRS (//entry/data/spectrum_data_y@units) +DEBUG: ===== ATTRS (//entry/data/spectrum_data_y@units) +value: counts +DEBUG: value: counts -pynxtools: [https://github.com/FAIRmat-NFDI/pynxtools]() +DEBUG: +For Axis #0, 1 axes have been identified: [] +DEBUG: For Axis #0, 1 axes have been identified: [] +``` -In the following, each package and its capabilities is presented. +Search for filed which are not found in the NeXus definiton by searching for the line: "DEBUG: NOT IN SCHEMA". Recheck the used NeXus definition to eliminate the problem. Be careful with upper and lower case notation and correct spelling. -### Operating systems +Keep in mind, that the output provides quite some information. This is useful for software development, but may be a bit too much for validation purposes. -Almost all PC users are used to Windows as operating system. +Similar features as the tables and messages provided from punx and cnxvalidate for pynxtools are [planned to be implemented in the future](). -A lot of Software development is done on Linux as operating system. -This is not a problem for big company, but for smaller open software, which are often develop without any payment, this is a problem. -If you are used to Windows, consider setting up a Linux operating system to eliminate problems in the installation process and ensure compatibility. @@ -293,15 +303,15 @@ If you are used to Windows, consider setting up a Linux operating system to elim -# 3\.2. cnxvalidate +# 3. cnxvalidate -This package is written in c. It is allows a command line evocation like: +This package is written in C. It is allows a command line evocation like: ``` nxvalidate -l appdefdir datafile ``` -1. nxvalidate: calls the software +1. nxvalidate: calls the software function 2. \-l appdefdir: points to the location of the NeXus definitions you want to use. This is a path to a folder called "defintions". @@ -315,9 +325,7 @@ definition=NXoptical_spectroscopy.nxdl.xml message="Required attribute URL missi and indicates the entry of the .nxs file, which is incorrect and what the respective problem is. It also points to the NeXus definition (.nxdl.xml file), in which this conflict was found. -While the software itself is powerful, its installation is difficult. - -# 3\.2.1. Installation (Linux only) +# 3.1. Installation (Linux only) This did not work for me on windows. (The problem was the software cmake couldn't fine the libxml2 library. Though, if you solve this, this maybe work on windows). @@ -359,7 +367,7 @@ cd /home/USER/nexusvalidation ### Using GitHub -Go to the Github Repository of cnxvalidate: [https://github.com/nexusformat/cnxvalidate]() +Go to the [Github Repository of cnxvalidate:]() Click on the green "<> Code" button. @@ -371,7 +379,7 @@ Copy the https link. open the terminal and ensure you are in the `nexusvalidation` folder. -clone the github repository (download the files of the software). +clone the github repository (= download the files of the software). ``` git clone https://github.com/nexusformat/cnxvalidate.git @@ -385,7 +393,7 @@ go into this folder via the command cd cnxvalidate ``` -now you are in the source tree. This should be exactly the same files, which you find on the github repository ([https://github.com/nexusformat/cnxvalidate]()) +now you are in the source tree. This should be exactly the same files, which you find on the github repository [github repository]() make a new directory called "build": @@ -417,9 +425,9 @@ Now the above mentioned commands should be avaialble. The programm/executable is /home/USER/nexusvalidation/cnxvalidate/build/nxvalidate ``` -# 3\.2.2. Using cnxvalidate +# 3.2. Using cnxvalidate -Now you can start to validate your created NeXus file. You may also just use one of the provided [MAKE LINK] files. But before the validation, we need to get a set of NeXus definitions, which we want to use as reference. This is done by git: +Now you can start to validate your created [NeXus file](https://zenodo.org/records/13373909). But before the validation, we need to get a set of NeXus definitions, which we want to use as reference. This is done again by using git: ### Getting NeXus definitions @@ -431,13 +439,13 @@ cd /home/USER/nexusvalidation Download a set of NeXus definitions. Choose only one: -For FAIRmat NeXus definitions, go to [https://github.com/FAIRmat-NFDI/nexus\_definitions]() and copy the github "Code" line to clone the repository. Then: +For FAIRmat NeXus definitions, go to [this link]() and copy the github "Code" line to clone the repository. Then: ``` git clone https://github.com/FAIRmat-NFDI/nexus_definitions.git ``` -For the NIAC NeXus definitions, go to [https://github.com/nexusformat/definitions]() and copy the github "Code" line to clone the repository. Then: +For the NIAC NeXus definitions, go to [this link]() and copy the github "Code" line to clone the repository. Then: ``` git clone https://github.com/nexusformat/definitions.git @@ -453,9 +461,9 @@ The respective path would be: ### Get your NeXus file -put your NeXus file created above ("NXopt\_minimal\_example.nxs") into the "nexusvalidation" folder (filemanager or change the output location in the python script). +put one of created NeXus file (or this [this file](https://zenodo.org/records/13373909/files/NXopt_minimal_example.nxs?download=1)) into the "nexusvalidation" folder (filemanager/explorer). -The file should now be loacted at +The file should now be loacted at (assumed the file name is "NXopt_minimal_example.nxs") ``` /home/USER/nexusvalidation/NXopt_minimal_example.nxs @@ -469,7 +477,7 @@ now you can use the cnxvalidate with the executable called "nxvalidate" to use t nxvalidate -l appdefdir datafile ``` -All names are "paths" to the definition, application or file. Use absolute paths, if you are not experienced, but relative paths work as well. +All names are "paths" to the definition, application or file. Use the "full path", if you are not experienced, but relative paths work as well. For the provided example, the suitable command looks like: @@ -492,9 +500,9 @@ definition=NXoptical_spectroscopy.nxdl.xml message="Required group missing" nxdl 9 errors and 11 warnings found when validating NXopt_minimal_example.nxs ``` -The errors tell you now, which things are missing (message="Required group missing"), if there is a field missing (message="Required field missing") or if an attribute is missing (message="Required attribute URL missing" - here for example the attribute named URL) +The errors tell you now which things are missing (message="Required group missing"), if there is a field missing (message="Required field missing"), or if an attribute is missing (message="Required attribute URL missing" - here for example the attribute named URL) -Now go to the hardcoded files, and add the respective fields to make your NeXus file compliant with the NeXus definitions. This way, you can ensure that your data is FAIR, which is then ready for sharing and publication. +Now adjust the file creation, and add the respective fields to make your NeXus file compliant with the NeXus definitions. This way, you can ensure that your data is FAIR, which is then ready for sharing and publication. @@ -502,7 +510,7 @@ Now go to the hardcoded files, and add the respective fields to make your NeXus -# 3\.3. Punx - Python Utilities for NeXus HDF5 files +# 4. Punx - Python Utilities for NeXus HDF5 files This is python package, and can therefore be used on Linux and Windows systems. @@ -525,9 +533,9 @@ punx validate [-h] [--report REPORT] infile "[--report REPORT]" tells the program, what findings should be reported. This is done by replacing REPORT with ={COMMENT,ERROR,NOTE,OK,TODO,UNUSED,WARN} -Official docs: [https://punx.readthedocs.io/en/latest/validate.html#validate]() +[Official docs]() -# 3\.3.1 installation +# 4.1 Installation Open the terminal and install punx via pip: @@ -640,9 +648,9 @@ C:\Users\rh83hixu\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qb Then you should be able to use this package. -Official docs for installation: [https://punx.readthedocs.io/en/latest/install.html]() +Official docs for [punx installation]() -# 3\.3.2. Using punx +# 4.2. Using punx Open your terminal. Assuming there is a folder at: @@ -658,7 +666,7 @@ For Windows: C:\nexusvalidation ``` -Put a NeXus file into this folder. For example, the file: "SiO2onSi.ellips.nxs" (INSERT LINK). +Put a NeXus file into this folder. For example, the file: [SiO2onSi.ellips.nxs](https://zenodo.org/records/13373909/files/SiO2onSi.ellips.nxs?download=1). then the command is (for Windows): @@ -674,15 +682,15 @@ punx validate C:\nexusvalidation\SiO2onSi.ellips.nxs The output tables "findings" and "summary statistics" can be used to find error present in the NeXus file. -# 3\.3.3. Example +# 4.3. Example ### Which NeXus definition? -The program selects the NeXus definitions (set of nxdl.xml files) by itself. It can in principle also be modified with different repositories. The functionality to add a new repository is right now not possible, as it was removed due to incompatibility in a major update of punx. +The program selects the NeXus definitions (set of nxdl.xml files) by itself. It can in principle also be modified with different repositories. The functionality to add a new repository is right now not possible (Aug 2024). -Therefore, only the official repository is functional. +Therefore, only the NIAC repository as NeXus definitions is functional. -You may update the reposittory for the lastest version via: +You may update the repository for the lastest version via: ``` punx install @@ -690,19 +698,19 @@ punx install The NeXus respective definitions are found here: -[https://manual.nexusformat.org/classes/index.html]() +[NIAC NeXus definitions]() Search on the right side under "quick search" for "NXopt": -[https://manual.nexusformat.org/classes/contributed\_definitions/NXopt.html#index-0]() +[NXopt NeXus definition]() This python code creates the respective python file with all required fields: -NXopt\_minimal\_example\_NIAC\_NeXus\_Def.nxs (INSERT LINK) +[NXopt_minimal_example_NIAC_NeXus_Def.nxs](https://zenodo.org/records/13373909/files/NXopt_minimal_example_NIAC_NeXus_Def.nxs?download=1) Here is the python code: -h5py\_nexus\_file\_creation\_NIAC\_NeXus\_Def.py (INSERT LINK) +[h5py_nexus_file_creation_NIAC_NeXus_Def.py](https://zenodo.org/records/13373909/files/h5py_nexus_file_creation_NIAC_NeXus_Def.py?download=1) The command: @@ -748,193 +756,54 @@ The last error message: can be ignored and is a bug right now. If this is the only Error message, then your NeXus file is compliant with the NeXus definitions and you can share and publish your data. -# 3\.3.4. Further Notes - -1. Punx only uses the NeXus definiton from the NIAC ([https://manual.nexusformat.org/]()) - The FAIRmat NeXus definition is not possible right now ([https://fairmat-nfdi.github.io/nexus\_definitions/index.html#]()) - -2. Other punx commands are avaialble: [https://punx.readthedocs.io/en/latest/overview.html#]() +# 4.4. Further Notes -3. More details for installation: [https://punx.readthedocs.io/en/latest/install.html]() +1. Punx only uses the NeXus definiton from the NIAC [NeXus definiton from the NIAC](). The use of the [FAIRmat NeXus definition]() is not possible right now. -4. Github project: [https://github.com/prjemian/punx]() +2. [Other punx commands are availble]() +3. [More details for installation]() +4. [Github project]() -# 3\.4 pynxtools - Python Nexus Tools - -This is python package which is developed by the FAIRmat consortium. - -As python package, this can be used on Linux and Windows systems. - -The package can be installed via pip. Therefore you need to have installed: - -1. python - -2. pip - -This tool has 3 command line functions: - -1. dataconverter ([https://github.com/FAIRmat-NFDI/pynxtools/blob/master/src/pynxtools/dataconverter/README.md]()) - -2. read\_nexus ([https://github.com/FAIRmat-NFDI/pynxtools/blob/master/src/pynxtools/nexus/README.md]()) - -3. generate\_eln ([https://github.com/FAIRmat-NFDI/pynxtools/blob/master/src/pynxtools/eln\_mapper/README.md]()) - -For validation purposes, we will use the "read\_nexus" function. - -The command used is: - -``` -read_nexus -f NXopt_minimal_example.nxs -``` - -The output looks like this, if the respective entry is found: - -``` -DEBUG: ===== FIELD (//entry/experiment_type): -DEBUG: value: b'transmission spectroscopy' -DEBUG: classpath: ['NXentry', 'NX_CHAR'] -DEBUG: classes: -NXoptical_spectroscopy.nxdl.xml:/ENTRY/experiment_type -DEBUG: <> -DEBUG: enumeration (NXoptical_spectroscopy.nxdl.xml:/ENTRY/experiment_type): -DEBUG: -> photoluminescence -DEBUG: -> transmission spectroscopy -DEBUG: -> reflection spectroscopy -DEBUG: -> other -DEBUG: documentation (NXoptical_spectroscopy.nxdl.xml:/ENTRY/experiment_type): -DEBUG: - Specify the type of the optical experiment. - - Chose other if none of these methods are suitable. You may specify - fundamental characteristics or properties in the experimental sub-type. - - For Raman spectroscopy or ellipsometry use the respective specializations - of NXoptical_spectroscopy. -``` - -or like this, if the respective entry is not found in the defintion: - -``` -DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@url) -DEBUG: value: https://www.jawoollam.com/ellipsometry-software/completeease -DEBUG: classpath: ['NXentry', 'NXinstrument'] -DEBUG: NOT IN SCHEMA -DEBUG: -``` - -The first example was for for "experiment\_type" entry in the "NXoptical\_spectroscopy" definition. - -The second example was for the "software\_TYPE" attribute @URL entry in the "NXoptical\_spectroscopy" definition. Here the problem was that "url" was used instead of "URL". - - - - - - - -# 3\.4.1 Installation - -This is installed with pip: - -``` -pip install pynxtools -``` - - - - - -# 3\.4.2 Using the read\_nexus function - -Open your terminal. Assuming there is a folder at: - -For Linux: - -``` -/home/USER/nexusvalidation -``` - -For Windows: - -``` -C:\nexusvalidation -``` - -Put into this folder your NeXus file, for example the Raman.nxs file (INSERT LINK). - -Then use: - -``` -read_nexus -f C:\nexusvalidation\Raman.nxs -``` - -shows the output like this: - -``` -===== FIELD (//entry/data/spectrum_data_y): -DEBUG: ===== FIELD (//entry/data/spectrum_data_y): -value: [ 288.5499878 289. 288.4500122 ... 1875. 1889.349976 ... -DEBUG: value: [ 288.5499878 289. 288.4500122 ... 1875. 1889.349976 ... -Dataset referenced as NXdata SIGNAL -DEBUG: Dataset referenced as NXdata SIGNAL -===== ATTRS (//entry/data/spectrum_data_y@long_name) -DEBUG: ===== ATTRS (//entry/data/spectrum_data_y@long_name) -value: Raman Intensity -DEBUG: value: Raman Intensity -Dataset referenced as NXdata SIGNAL -DEBUG: Dataset referenced as NXdata SIGNAL -===== ATTRS (//entry/data/spectrum_data_y@units) -DEBUG: ===== ATTRS (//entry/data/spectrum_data_y@units) -value: counts -DEBUG: value: counts - -DEBUG: -For Axis #0, 1 axes have been identified: [] -DEBUG: For Axis #0, 1 axes have been identified: [] -``` - -Search for filed which are not found in the NeXus definiton by searching for the line: "DEBUG: NOT IN SCHEMA". Recheck the used NeXus definition to eliminate the problem. Be careful with upper and lower case notation and correct spelling. - -Keep in mind, that the output provides quite some information. This is useful for software development, but may be a bit too much for validation purposes. - -Similar features as the tables and messages provided from punx and cnxvalidate for pynxtools are planned to be implemented in the future ([https://github.com/FAIRmat-NFDI/pynxtools/pull/333]()). -# 4\. Summary +# Summary This tutorial showed: -1. How to create a NeXus file with python. +1. 3 different tools for NeXus file validation -2. How to check if the NeXus file is valid. +2. How to install these tools -This provides the basics and fundamentals to create FAIR data, based on NeXus definitions. If your experimental setup provides enough meta data, you can extend the NeXus file creation script, to automaticalally include this information (e.g. measured spectra, sensor temperature, stage positon). +3. How to use them via Examples ### Pynxtools Parsers: -For a specifically structured set of data, a parser can be written, which uses the meta data and a pre-structured meta data file, to create a NeXus file. Tough, the parser depends on: Experimental Technique and Setup and has therefore to be written invidiually. This is another functionallity of pynxtools with plugins for the techniques: +For a specifically structured set of data, a parser can be written, which uses the meta data and a pre-structured meta data file, to create a NeXus file. Tough, the parser depends on: Experimental Technique and Setup and has therefore to be written invidiually. This is another functionallity of [pynxtools with plugins for the techniques](https://fairmat-nfdi.github.io/pynxtools/reference/plugins.html): -electron microscopy (EM): [https://github.com/FAIRmat-NFDI/pynxtools-em]() +[electron microscopy (EM)]() -x-ray photoelectron spectroscopy (XPS): [https://github.com/FAIRmat-NFDI/pynxtools-xps]() +[x-ray photoelectron spectroscopy (XPS)]() -scanning tunneling spectroscopy/microscopy and atomic force microscopy (STS / STM /AFM) : [https://github.com/FAIRmat-NFDI/pynxtools-stm]() +[scanning tunneling spectroscopy/microscopy and atomic force microscopy (STS / STM /AFM)]() -x-ray diffraction (XRD): [https://github.com/FAIRmat-NFDI/pynxtools-xrd]() +[x-ray diffraction (XRD)]() -ellipsometry (ellips): [https://github.com/FAIRmat-NFDI/pynxtools-ellips]() +[ellipsometry (ellips)]() -Raman spectroscopy (raman): [https://github.com/FAIRmat-NFDI/pynxtools-raman]() +[Raman spectroscopy (raman)]() -atom probe microscopy (APM): [https://github.com/FAIRmat-NFDI/pynxtools-apm]() +[atom probe microscopy (APM)]() ### Feedback and contact: -???? +1. Best way is to contact the software development directly via a [Github Issue](https://github.com/FAIRmat-NFDI/pynxtools/issues/new). + +2. ron.hildebrandt(at)physik.hu-berlin.de diff --git a/docs/index.md b/docs/index.md index a1a25747c..75c3c90bf 100644 --- a/docs/index.md +++ b/docs/index.md @@ -41,7 +41,15 @@ How-to guides provide step-by-step instructions for a wide range of tasks. - [Implement a reader based on the MultiFormatReader](how-tos/use-multi-format-reader.md) - [Representing experimental geometries](how-tos/transformations.md) - [Using pynxtools test framework](how-tos/using-pynxtools-test-framework.md) -- [NeXus file by python and validate NeXus files](how-tos/create-nexus-files-by-python-and-validate-them.md) +- [Creation of NeXus files by Python](how-tos/create-nexus-files-by-python.md) +- [Validation of NeXus files](how-tos/validate-nexus-file.md) + +__The following How-To guides are still under development:__ + +- Writing an application definition +- Storing data in multiple application definitions +- Representing experimental geometries +

diff --git a/mkdocs.yaml b/mkdocs.yaml index 11f03ade5..816e6fe8c 100644 --- a/mkdocs.yaml +++ b/mkdocs.yaml @@ -17,6 +17,8 @@ nav: - how-tos/use-multi-format-reader.md - how-tos/transformations.md - how-tos/using-pynxtools-test-framework.md + - how-tos/create-nexus-files-by-python.md + - how-tos/validate-nexus-file.md - Learn: - NeXus: - learn/nexus-primer.md From 0ef124c51c9736676025c0bd241f58b9c61b7804 Mon Sep 17 00:00:00 2001 From: Ron Hildebrandt Date: Tue, 27 Aug 2024 13:28:31 +0200 Subject: [PATCH 07/33] remove nexus and python files as replaced by zenodo links and remove internal development notes --- .../internal-nexus-validation-dev-notes.md | 364 ------------------ .../NXopt_minimal_example.nxs | Bin 8224 -> 0 bytes .../NXopt_minimal_example_NIAC_NeXus_Def.nxs | Bin 26168 -> 0 bytes docs/how-tos/python-and-nexus-files/Raman.nxs | Bin 77344 -> 0 bytes .../SiO2onSi.ellips.nxs | Bin 197840 -> 0 bytes .../h5py_nexus_file_creation.py | 33 -- ...h5py_nexus_file_creation_NIAC_NeXus_Def.py | 121 ------ 7 files changed, 518 deletions(-) delete mode 100644 docs/how-tos/internal-nexus-validation-dev-notes.md delete mode 100644 docs/how-tos/python-and-nexus-files/NXopt_minimal_example.nxs delete mode 100644 docs/how-tos/python-and-nexus-files/NXopt_minimal_example_NIAC_NeXus_Def.nxs delete mode 100644 docs/how-tos/python-and-nexus-files/Raman.nxs delete mode 100644 docs/how-tos/python-and-nexus-files/SiO2onSi.ellips.nxs delete mode 100644 docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation.py delete mode 100644 docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation_NIAC_NeXus_Def.py diff --git a/docs/how-tos/internal-nexus-validation-dev-notes.md b/docs/how-tos/internal-nexus-validation-dev-notes.md deleted file mode 100644 index dc4dd5a2c..000000000 --- a/docs/how-tos/internal-nexus-validation-dev-notes.md +++ /dev/null @@ -1,364 +0,0 @@ -# NeXus Validation Dev. Notes - -# 1\. Overview of validation methods - -nexusformat.org listed two programs for the verification and validataion of NeXus files: -[https://manual.nexusformat.org/validation.htm]() - -1. nxvalidate - -2. punx - -## nxvalidate - -[https://github.com/nexusformat/cnxvalidate]() - -### Pro: - -1. FAIRmat and NIAC NeXus definiton can be used. - -2. Easy to install with Linux - -3. Points out some Errors with pynxtools-ellips created file - our fault? - -### Con: - -1. Is C/C++ based - -2. Not possible for Windows (cmake did not found the libxml2 library. Other libs were found after some work) - -3. Last update 2 years ago - Repo is dead? - -4. Unclear if every error is 100% a fault on our side - Florian was unsure/had some concerns about that. - -## punx - -[https://github.com/prjemian/punx]() & [https://punx.readthedocs.io/en/latest/contents.html]() - -### Pro: - -1. Nice looking output and easy to use - -2. Python code - -3. Works on Linux and Windows - -### Con: - -1. Last update 1 year ago. Last commit 4month ago. - -2. Still not finished. - -3. Some nexus def. parts are not validated yet (see status "TODO" in "punx validate" output) - -4. Can't use FAIRmat NeXus definitions. The command - -``` -punx install https://github.com/FAIRmat-NFDI/nexus_definitions/archive/refs/heads/fairmat -``` - -Does not allow me to install the .zip file. I as well modified the links in the python code, but there seem to be as well other check mechanisms. -Hardconding the download link, resulted in the download of some NeXus files, but not all (e.g. NXoptical\_spectroscopy was not present (new) but as well NXopt was not present (old). - -## pynxtools - -Tools - -1. read\_nexus - -2. verify\_nexus ([https://github.com/FAIRmat-NFDI/pynxtools/pull/333/files]()) - -The first one only useful to check if the things in the file are "IN THE SCHEMA". Does not report missing things. - -The second one was tested. Seems to be fine mostly, but reports some unexpected errors. Also does not report some errors, which were reportet by other tools. - -# Summary: - -1. There are some tools - -2. None fulfills all requirements - -3. punx and cnxvalidate's development seemed to stopped? - -4. Need own validation function? - - - - - - - - - - - -# 2\. Examples from nxvalidate - -## Example error from nxvaldiate for pynxtools-ellips generated ellipsometry nexus file: - -``` -(.py39) ron@hlp135:~/FAIRmat/WorkshopNeXusValid02/nxvalidate/cnxvalidate/build$ ./nxvalidate -l /home/ron/FAIRmat/WorkshopNeXusValid02/nxvalidate/nexus_definitions/ SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { - H5T_STD_I8LE; - "FALSE" 0; - "TRUE" 1; - }" nxdlPath=/NXentry/NXinstrument/NXlens_opt/data_correction sev=error dataPath=/entry/instrument/focussing_probes/data_correction dataFile=SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXbeam sev=error dataPath=/entry/instrument dataFile=SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXdetector sev=error dataPath=/entry/instrument dataFile=SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { - H5T_STD_I8LE; - "FALSE" 0; - "TRUE" 1; - }" nxdlPath=/NXentry/NXsample/backside_roughness sev=error dataPath=/entry/sample/backside_roughness dataFile=SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXdata/measured_data sev=error dataPath=/entry/data_collection/measured_data dataFile=SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_STRING { - STRSIZE H5T_VARIABLE; - STRPAD H5T_STR_NULLTERM; - CSET H5T_CSET_UTF8; - CTYPE H5T_C_S1; - }" nxdlPath=/NXentry/NXidentifier/is_persistent sev=error dataPath=/entry/experiment_identifier/is_persistent dataFile=SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXdata sev=error dataPath=/entry dataFile=SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXprocess/depolarization sev=error dataPath=/entry/derived_parameters/depolarization dataFile=SiO2onSi.ellips.nxs -9 errors and 85 warnings found when validating SiO2onSi.ellips.nxs -``` - -### nxvalidate Errors: - -1. "Data type mismatch, expected NX\_BOOLEAN" --> "NeXus interprets NX\_BOOLEAN differently than h5py. NeXus uses an integer of 1 byte for NX\_BOOLEAN. This is an int8 or uint8." --> [https://github.com/nexusformat/cnxvalidate/issues/34]() - -2. Required group missing for "NXbeam" and "NXdetector". Probem with "exists: [min, 1, max, infty]"??? - -3. "Required units attribute missing" for entry/data\_collection/measured\_data --> ??? unclear. Units are assigned. - -4. "Required group missing" for /entry ---> ? - - - -### nxvalidate Warnings: - -I think warnings can be evoked by: (-t in front of the NeXus file): - -``` -~/FAIRmat/WorkshopNeXusValid02/nxvalidate/cnxvalidate/build$ ./nxvalidate -l /home/ron/FAIRmat/WorkshopNeXusValid02/nxvalidate/nexus_definitions/ -t SiO2onSi.ellips.nxs -``` - -Most of the warnings are not critical at all. Not sure if this is helpful at all: - -here are some examples of the "messages" of the warnings: - -1. "Optional group missing" - -2. "Optional field missing" - -3. "Optional attribute units missing" - -4. "Validating field" - -5. "Validating group" - -6. "Additional base class dataset name found" - -7. "Additional base class dataset address found" - -8. "Unknown dataset wavelength\_spectrum found" - -9. "Additional base class group notes of type NXnote found" - -10. "Additional base class group environment\_sample of type NXenvironment found" - - - - -# 3\. Testing different Validation outputs for a pynxtools-ellipsometry generated file. - - -## verify_nexus from pynxtools: -` verify_nexus SiO2onSi.ellips.nxs` - -``` -WARNING: Field /entry/data_collection/Delta_50deg/@units written without documentation. -WARNING: Field /entry/data_collection/Delta_50deg_errors/@units written without documentation. -WARNING: Field /entry/data_collection/Delta_60deg/@units written without documentation. -WARNING: Field /entry/data_collection/Delta_60deg_errors/@units written without documentation. -WARNING: Field /entry/data_collection/Delta_70deg/@units written without documentation. -WARNING: Field /entry/data_collection/Delta_70deg_errors/@units written without documentation. -WARNING: Field /entry/data_collection/Psi_50deg/@units written without documentation. -WARNING: Field /entry/data_collection/Psi_50deg_errors/@units written without documentation. -WARNING: Field /entry/data_collection/Psi_60deg/@units written without documentation. -WARNING: Field /entry/data_collection/Psi_60deg_errors/@units written without documentation. -WARNING: Field /entry/data_collection/Psi_70deg/@units written without documentation. -WARNING: Field /entry/data_collection/Psi_70deg_errors/@units written without documentation. -WARNING: Missing attribute: "/ENTRY/DATA/@axes" -WARNING: Missing attribute: "/ENTRY/DATA/@signal" -Invalid: The entry `entry` in file `SiO2onSi.ellips.nxs` is NOT a valid file according to the `NXellipsometry` application definition. -``` -_Total 14 Errors_ -_Total 3 Errors - without documentation_ -1. Psi+Delta with Unit+Errors written without doc. -2. Data @axes + @signal. May not find NXdata? Attributes are present in .nxs file. -3. entry not valid in NXellips. - -## read_nexus from pynxtools: -`read_nexus -f SiO2onSi.ellips.nxs > read_nexus_output_file.txt` -``` -NXellipsometry.nxdl.xml:/ENTRY/data_collection/data_software -NXprogram.nxdl.xml: -DEBUG: @url - IS NOT IN SCHEMA -#################################################### -NXellipsometry.nxdl.xml:/ENTRY/definition -NXoptical_spectroscopy.nxdl.xml:/ENTRY/definition -NXentry.nxdl.xml:/definition -DEBUG: @url - IS NOT IN SCHEMA -#################################################### -DEBUG: ===== GROUP (//entry/instrument/software_RC2 [NXellipsometry::/NXentry/NXinstrument/software_RC2]): -DEBUG: classpath: ['NXentry', 'NXinstrument'] -DEBUG: NOT IN SCHEMA -#################################################### -DEBUG: ===== FIELD (//entry/instrument/software_RC2/program): -DEBUG: value: b'CompleteEASE' -DEBUG: classpath: ['NXentry', 'NXinstrument'] -DEBUG: NOT IN SCHEMA -#################################################### -DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@url) -DEBUG: value: https://www.jawoollam.com/ellipsometry-software/completeease -DEBUG: classpath: ['NXentry', 'NXinstrument'] -DEBUG: NOT IN SCHEMA -#################################################### -DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@version) -DEBUG: value: 6.37 -DEBUG: classpath: ['NXentry', 'NXinstrument'] -DEBUG: NOT IN SCHEMA -#################################################### -``` -_Total 6 Errors_ -1. @url. Changing to @URL could fix this maybe. -2. Software_RC2 not detected as NXprogram. This is indeed not assigned. - -## nxnvalidate from cnxvalidate: -`PATH_TO_NX_VALIDATE_EXE/nxvalidate -l PATH_TO_FAIRMAT_NEXUS_DEF/nexus_definitions/ PATH_TO_NEXUS_FILE/SiO2onSi.ellips.nxs` -``` -definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { H5T_STD_I8LE; "FALSE" 0; "TRUE" 1; }" nxdlPath=/NXentry/NXinstrument/NXlens_opt/data_correction sev=error dataPath=/entry/instrument/focussing_probes/data_correction dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXbeam sev=error dataPath=/entry/instrument dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXdetector sev=error dataPath=/entry/instrument dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { H5T_STD_I8LE; "FALSE" 0; "TRUE" 1; }" nxdlPath=/NXentry/NXsample/backside_roughness sev=error dataPath=/entry/sample/backside_roughness dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXdata/measured_data sev=error dataPath=/entry/data_collection/measured_data dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_STRING { STRSIZE H5T_VARIABLE; STRPAD H5T_STR_NULLTERM; CSET H5T_CSET_UTF8; CTYPE H5T_C_S1; }" nxdlPath=/NXentry/NXidentifier/is_persistent sev=error dataPath=/entry/experiment_identifier/is_persistent dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXdata sev=error dataPath=/entry dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXprocess/depolarization sev=error dataPath=/entry/derived_parameters/depolarization dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -9 errors and 85 warnings found when validating /home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs -``` -_Total 8 or 9 Errors_ -1. Datatype mismatch for Bools: "H5T_STRING" or "H5T_ENUM" instead of "NX_BOOLEAN". In NXlens_opt, backside_roughness and is_persistent. -2. NXbeam + NXdetector: Has a problem with " exists: [min, 1, max, infty]" -3. "/NXentry/NXdata/measured_data". Units are missing (unit should be NX_ANY). -4. It does not find the NXdata (in this file it is at /entry/data_collection/). -5. Depolarization is not assigned the unit NX_unitless. - - -## validate from punx: -`punx validate SiO2onSi.ellips.nxs` -Not possible, as only the NIAC NeXus definitoon can right now be used as reference. Did not found out if `punx install` is functional to install the FAIRmat NeXus definition. - - -# Summary -| Error Message | origin | Error in .nxs file? | Error in validation tool? | -| ---------------- | ---| ------------------------ | ------------------------ | -| unit + error without doc | verify_nexus | ? | ? | -| no @signal @axes for NXdata | verify_nexus | no | yes | -| entry not valid in NXellips | verify_nexus | ? | ? | -| @url error | read_nexus | no | yes | -| Software_RC2 no NXprogram | read_nexus | yes | no | -| Bool Data types | nxvalidate | ? | ? | -| exists: [min, 1, max, infty] | nxvalidate | no | yes | -| Unit missing for measured_data| nxvalidate | yes | no | -| NXdata not present | nxvalidate | no | yes | -| No unit for depolarization | nxvalidate | yes | no | - - -### NOTE ### -Only the nxvalidate method seems to point out completely missing required concepts. - -I tested this with an empty NeXus file, in which only the "definition" was given. - - - - - - -# 4\. Installation Notes - -## cnxvalidate installation on Ubuntu 22.04 - -These commands install nxvaldiate on a fresh Ubuntu 22.04 system (tested with Linux running from USB stick). - -``` -sudo apt-get update -sudo apt-get install git -sudo apt-get install build-essential -sudo add-apt-repository universe -sudo apt-get install libhdf5-serial-dev -sudo apt-get -y install pkg-config -sudo apt upgrade -y -sudo apt-get -y install cmake -sudo apt-get install libxml2-dev - -mkdir nexusvalidate -cd nexusvalidate -git clone https://github.com/nexusformat/cnxvalidate.git -cd cnxvalidate/ -mkdir build -cd build/ -cmake ../ -make -``` - -# cnxvalidate installation on windows: - -## -- CMAKE - -[https://cmake.org/download/]() - -\--> [cmake-3.30.2-windows-x86\_64.msi]() - -Install with .msi - -## -- HDF5 - -Download **hdf5-1.14.4-2-win-vs2022\_**[**cl.zip**]()** from **[https://www.hdfgroup.org/downloads/hdf5/]() - -unzip the .zip file - -put the file into the folder - -``` -C:\hdf5 -``` - -(can be named differently, but no spaces are allowed for this path) - -``` -set PATH=%PATH%;C:\your\path\here\ -``` - -## -- libiconv - -[https://github.com/vovythevov/libiconv-cmake]() - -``` -git clone -``` - -cd to downloaded directory - -``` -mkdir build -cd build -cmake .. -``` - --- XML2 - -??? Unsolved... - - - diff --git a/docs/how-tos/python-and-nexus-files/NXopt_minimal_example.nxs b/docs/how-tos/python-and-nexus-files/NXopt_minimal_example.nxs deleted file mode 100644 index 4883370f2dee6945810acca20f7167912881919b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8224 zcmeHM-A)rh6rQCZm7uAKF@n+TC0@8ow+O{6h=3&_g`g(AtJCe2ZnE9o>`bw|fWbR2 zeFPrG$M8*be$EMWlg5NXf;!uzXMVpu^UayF*>Ar#cJ>}DEH4msmCIz7RCE#le!=Cs zrUmQR{|O2X*mJNKGp67W^&{jdv_As;;V)E8^Au`{waPdOJ*RRgKN5Dr~Rc2 z6ytXb)^QGb4VTqry(o!9lqRNyjWU);0~ywBah5T1rOufcX6>pOhw)yFulLQv9hHGG zZ@Q)N@eQc=3x1$K)*1%zxmDzAk(dnQko)AZWVzXDhcV?Gd0TQEoiS9tGJ9lp0{2U& z5!f8nHYwkb7Y4D9z&B*yy*)h8zCc19^Gn{N*)kaw)9e$tZ?lzVA_{5T<{1k`p7Jow zWa5QzBJyFbuV6J;^HyJbLEye}8#M2RY0kRtO5`!mO;VSqJ@J|5%spWV%c+okr!40( z{#|-XqnLJL_EI9v0^S#}eIYXb#`jMm(I0laFdg`N+xy1@Dqc1BcJ}>*jfT8^d78N2 ziPMfB)T`BAt=_BmXeX%AV0|N8tFPBtSgQxCtX5lN8?;*8-1Ng#K1ia@P&zb*qSx&u zqi*bt1~DOcY#_Z8k<)|^BCc03PL1~b9{9fqw%LjjF7lx|;n1W__V8-WmMsI80n318 zz%pPNunbrRECZGS%YbFTGB6zj4w*N)1ibj8QiM7{NhpP4Z*Wl;J{ z4snfVsMMO;BH7Xfbswddz{~zbeDp)>380fGjo}h!R^xm;KG3+6{6rkB9{`Tg6riGK z6JqqTlJpF&qM(NDU{}C?13eh;(|=|<&Yv5LFs)^n@Q)iuDkGW;Amrxas^S{z#^Z{R z?{}I}^L>C!{JwRkowv^2Is?V;1DJmtVM>d-b}?T~t7~h06BdD*=ajD6 V>9@du*7ISXl*X@hY^W=3`#04(;zs}g diff --git a/docs/how-tos/python-and-nexus-files/NXopt_minimal_example_NIAC_NeXus_Def.nxs b/docs/how-tos/python-and-nexus-files/NXopt_minimal_example_NIAC_NeXus_Def.nxs deleted file mode 100644 index 5d55304c263a1c59dc3416a458c781ddd7969d1e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26168 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 Gi2nnEHE8Dm diff --git a/docs/how-tos/python-and-nexus-files/Raman.nxs b/docs/how-tos/python-and-nexus-files/Raman.nxs deleted file mode 100644 index dc52545af8711bbdd00b7e46013ad7468cf88cb6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77344 zcmeFZc|4VG*YJHxMI#M{L~SA@^PFTEGNfcC4d%@AkRjT8pF30LStXJN4W^nGyYAohd9UaGJooc{-p_kK&$a*P>sZIUj7X9WM||5X~$->hl;Yr@vdS-Y&M@_Fm4+aw}L^en-wsXm>F%?VZj>AEP}%NM?OP(oO%WTQW+Q~l9p1|n%=d`0o?>e6W&bOeKyCc_%#^co3v_lw(aiY%99#$- zr>C=bfUS@3?_U3M1!5kvzLA@Uk2gh5CWM)uk2X4ab- zC&x^?)?Pl|K8~*bK3?{LKK{gv9%lT_Lf_m>UPfly%=~BMM%Dp7LH>@;i<#}rj00`Q z*&k&y?a$2L$lAf#-i!F_bSA{C_j`4u|Dki~Kh4@I%FB6s%`}E(moUrE=*`>5%gx)~ zlUT}>|8qafnDQBY;Cefw=6_A`_h&gXe`a1r)_-4DE@u8rJ7&)QZuXuOqaZH_Xa5Zp zC3(d^J0CZ*+>BmyEL4?cY_%+TnDQBYdIfm~x;eVqdwV;3{>qy1j~V;Z*4Fu5V+FI` z%sj)yLPEqP!wBZ~`&S%9{o8x_dO9=RiWyT0LYrBipGg5GwRI?tKEclZ6fs|a9|wB} z&rpi78O6t+V!YX09Lvm<`-dKbelO%IX8oD|w>skt&_Sdqit8yd3i7fll&#KgzF}@I ze+sTnDg*V!se}G$HePQ5#EJG=1_t^DY><|AaSL<}a*)D)q;)k7OfhIk8tLj7NP9bn1O?bSIq!Az zcKa0?1Ed{1eH^6aR2=1%<&^9dB$(~YtY0urR8C4pS<2TZAW#-pH&|9qQBlI>uL{ia z>zSPKW1pZv-=IJ#?-1q=CCSXEF!@J+%91iF6j}KV^0FJ`RiqS@6qRKZ|EN*wf3dtY zv;2&H_Ke|_Zt z;IDXYWgqN}JA_N1>z@n-X8z3nBrEOsyQU&jJ`?Bv*r}PT+g@B${3tQ=XXfMR6XYF; zx>RP$XU6%bo`H8D?n-Wfp~RnPN8r=&pUA#=LLx_J$|8<`KyFB!-=kA&3 zd1iCOpL@&Me?6}!GapE2&Z#pO02JmpX2xYl`K!cCQ-7l|Ger^lpO<4kCJ-`f{^#ZX z*7*Mq6Muc*w*JpN&M?RLzk6@_`}oWLr?FqpEWd7;fA_#t7YlQNSn%HZ*9VyA?{{(`0l)d{{`A-V zc@REE|9Y1B&+cD;KW{PT@#|S~Mqe?^3%MD4`Ns{w?{5CnfBx7nD|2oHp+9q>^e<}8 z*nj@ah0(t#_g5Td{EGtrhl&3`v@27l>SnGKekcE{cJ=#SfoWI2?iyz7idXWFKm1qi z>R;Xa6V-o4@5-FSzbfb2@b_{auX0{OCKZfd$ekWR9*&;nnVCg}4VTu)Xl7GE&N=hr z2r{uwqcSsx3Yvu*LNpIk!SqL{|d^xK!rBUFgedswA;lnO;tLm{I`SyNTztXwM0 zJ2p6>d5j9WnfJ>^kx!ShdS~TP;gOoJxK=(DgodR0N0ASTWshYYr$XE3gH~DvRM_~A zlXDFD)orXX>jV{6rw|9U3aM~pqqE`|GLTq2l68^_h5GFITBoR>qONK_hLqS+%$9u` z^ScADYMsIMSNMC5Aw|1u1+t5%kZhpaqIH%ECL0AJ$B;gHDw5gfs4(K5)va}&3b#&e zh#fELw^0ZMj^Y5 z3iTfbyS2)x&=>TbK8AEYX&|0`kqUZaT`gLdP*2;61ICbRZr|p~uAqYO2-h{ON-FG6 zuiQO`l(RhYGwU+yOQs=T>k1XBE7xd_Aro)5_hwa5p)Tb50j;Z4Fw=h{FoxWC)cIQ0 zH7dj&U16ubfes;S^DayfnzdAz zm7^6uiqsjOw`CaYl z52&E^L42o1D-~9JsO}v?njedEPJc*+F^9uLn;zjjG~Rj+AvKyp-lers;fuST-==md za93^p@CJG4&YeBhel>3fk(Q}Z zPN`i~2)1Rs*!YwR)16m#3?d(QY-&sCrUF0LTf>ddsBrbk+xpkYx~IHqDLrU^4(VlT z&v9Jhs-mxv9Kq5@lV9NcW^LzG>!kv1SuHt$Y<04kN_t6!eH(OLH}v6p8t?4tM}CgH zWRUaqjP7%VZ`FV13R5tg5fkuL5WLzCtFyZ|+VQM7{I1=&HP- z!n*O_KWCjAV(KME&2k-X%AM>vPeq@)>euTNy|6 zCtTljX;<0LINuNNYr2t~KZd!ZzMvme@OjBhQ^9uyt?nuEviK^VgJ03^On>v&)yNzkCRLOTBmGW9~+7>$Jn zS4@gGte-^#t%91U4y0@z+aoF~4H)`S{1UTiu<@AM-p5Fjg^DEy=Fs5LRjW_pb7^py zt87y{ayrK7U?dw2j-L^_C&o^LOY9WRHl#4k-aKL+4Tuf*vqb09Ky^X*(}&0>F?Rg> z7to+r*JtMJA#m(!qI?3?2~q=Py8 z;UF#=Sk$UNSj|m?lRB4K?;>r2T$BTOXb|=q+*k3^;Iq%3qj!)mRZlkiub_ccsn8F8 zJ{<3(4#`I3)bX3U{8rMyPvBMDN`4wxbxB^ig)Go4>Gu(!fw83vC*LX>IPqAjH6Wic z!kxWW<9OumCh}5fFgIcQ*y#9S!C^(Z75Zc~OtG%}Ig=cRs%!Tf83iZOOu3g;M^Mdp9&QL|B|!9=H; z{%jQ--(;OxG4e?@b&s_w4eS(xTxV^df!T1X-+5$tZ&#?L8V!O-D;lwp1}FCZh(3!{ zoa#<6SEqse?Y`6>$V@Ft)|pK-aQqo{*i?fC8Lq;)-;i=kM~On_H;(MSFog7YHkF-bitDkvic~kF!K_2&UW3RF@r{-#=ICc?%QVz1a9!5L ztQ|ng>{z=f$&v=Q?~Hv=v7$k3|HzX*q=@FS>+#k!`0i(!r?dn8ZhI@O7unfKb&Rv2 z!LZUc9fh4ZpT}Cl&yfZcAJ&*%G|1Js{8Dx|`qu)bnr>tW&+{V(_h5fcCHtgp(J$W@ znRX$as+-r7b~I49&o@`n9@~jJ_Phhh!L_N9>VWz%UY@Yd5!cUlu46kgqC`+7(h2o` zE?}XUGYz8mzkKl!dG^b}^6LS1R#dpKu8$c+Z)b}X#F zkF**)oE+?q>mzBmo8p1<(9{&ai+nh1$3%c94aBqKs|CDhFy=KB-H7C8_!#?nW1M@s zig%?C4X*ordftGPH26~J?Mnl8dtrB8KN@VW3X!TqvY1Z2_wYyk)g)cw3cxt%X&PLE zJagMn*)5O;ize+pEe%3Dam=f{j-;Ia61X>*2923~&LQ6>+}5?AW1O~N zpZtNG8h0)@L()K?dDO_1fqIBYn*NHs?!EKm$%E*}`NrF~N6~<7sn6%nNHgoA{DNro z^A`*Cx5m&wX+!+mN#wo93h8;V$g;Vr25~e{cbItg0m)~!fO_;0`WeGeNH-q)i922Y z4yoO`-YF-622Y2ZS+x^s(6c$aU=(Q*6bYG0Xtx6iJsQb02+z13I)qf=TgjD{LIc|u z*(DoOY49aP&fqojhw0?Yq%;}?vb2Y)rqjT3yqohC^6bT*r{Xhc;C6ZIMx{&|k3v=m7n{xgp*yOf)N+I&)W29OTcpb>4fppxe&tk_=&jGyjM@Z*fwFUe0aGzw0NfXIOKY7~6_W&6* zw)c3*ar6((<)T6bH2CJ)bM79}!?{j6=mZT6mFmk^71AI}Z%pA1(p*x$((fe33$p^H zm8WpOFp{inK&}yJSMWZK?bl|O^PHir3GGZO-~JqO zOVp!g^9s~oIYspcQutEbiPM$nFOvd`OfJ))IZ8YveS*K^_u4R{UwbhcIDe)}xo z>=aV7lfjXHl?MB$_X7;Bp}(aFJ^6st2~Jl%dYuLx(n3cz-@tQ$=4I&4RL^Gnrwv_t73 z)mKP^;L4Qv1}vA7_eSv+#@Xdrn_eIdIxnZi+(tdk9vqZy#D4rV)Vh(zx~CEtcW@tm zC-y?Ji3WXL?b1(>*6WiFQ19YA%$!@q?_s<$vf^(;x~_6|+kYR=F?ER*BF$*8YVE`W zj_>(du-g z-93A@_0eEHDVH#X%ycikn)eFNS4Pr<`u(^+1Uy;#0m)7zsvjAkfxEq(i_UBGTM5nN zF=SGc`jyNX4(xm|4-R!i zC7Xy=l9i+&W}EZ>bR&2BViyu)<=u&3lW>PwO%rUQAk za#z8D_cYkC@!U1B54g|GTGRdzIo5DwB>AN2=U;n&J5c>!U)srfD$BO)INLPUwER z;qn#FeTK13oZqnC74h~e9*6HVD7lyMdchAG%zp0u_7d`uwdLgQpLpIrv*YVr zf)00WJ&01|*8_)U?_ipXk@IiyjR`vP-TI@sKLxZpdov(bFPso8XR zAoqIS_BnLWm>b3R8A&PDoPB&Q9m1*?5L?*juuZvt`U5hB(K&I1oemZ)&0{+A=nyyh zd|(Wz67b_$=6pI>x2U#hETF?Dk>ERTknE-{*HaeKA@#LF>4rsgz~gekDj}?)Onfy^E+E=2f9XW$T9RH<8`_hOF+YbT}}%yK?CU9KUy@>ouf| z@r4ymYIM+%>S7BkhPLtrJfbsA~v%)9S|79C1B%lNly;u>bR$dQ}6|W8jc& zAJSlKcsgzi9efMoK0~gF61dISN{1_V)OSm6!|}4&eteAFS&|qNX+#J6 zn*02s+v)K7-h$Ex$bQ(N6=IC?^3!b;6SRBEC&wn_qbc)`ex`J2Y`RF}Goyq296^qH z-#Q8X_b}B+HNPO0BvWpH|FCBK8M$XZ8c~!6* z{k28G-f#~crYu;We?+d;?cH(I7S~Cxx?RT(%kk$LjUg|1#WiNw)8XlM4~!JuS1B4yR_jd2}If7I=2kTkU+VcsmR(?;UTd>M4 zWKKFY^TA#pIwYM6ljHD3eb(Phzl{9p`)$(Jj}9NB zHe0g$qhH}cvlO{!WAm~d0d#29Tj9qNh;erN-sU2tjQJ%o(;zzV-sB{wkfI4t<$N0C%@-xuj&7}pZpW!1y!aL;Ew zIeA% z^E$(#G>mUg%jH^;%X5~8h0rnnn(eElkaRF#&^@OKDPNkXB@82 zkYEk#Av#>2&-i=}nRmTQ#ylSFutVMT8?uL%ajY-_?MVD>+tx%ntZLR{pF}cPGSqUD z=-_y4+-q|(#>0CWd1J`)lSvOUQs}_J|MG`=DjhyQ5|Mn3wD}NXlbA;Teeb1|PRHk_ zFJ;e>nTNEVMP*=|x)nJ`I+G4#)7K=QAgv{*%@1UueUD3oi)LdSE!mU*0C~nEwP9Zl zu7hyn;OfI@_g?Sj-9bi{^Gf(0p+iWFq9N~5I=r_rbFW1XiTlU6=3@MxOgYJU4DG?> zYWT;x5o5=|} z98|7|_=4n=DM~(Gi2HC=a)H4~I$VC_aq&I!wz)-p&MCBuufmTsPviQ|XYCzAE;-vi znsSB?vQKk9s}^CroNLG0hn%Wku_*2=#?@cvo^y1lkxv$QigXLp5T>6;J2B}KUv~lZ zAQC0@2pJhGAQx7Q_BdRjAXI{Jzgtu3E^=*Ci;{mS+P&U(CB8B`h}5+z)FIuQH_N$~ z(?P+lSZe7-jN>f4>#id8GwH$(mvH~x-X<`=f(`+5M7Yb5cP{T+WK)Uz+Vl<9S(kBL zT0VU)LiXj#jhS4*^GT{%?-!)}JNl#JRdhJ%n_X{k75DqM#TVZr=eXT2$hn5~*c*~H zuj6=6)I|&-f9Wsf1|3*FpEg&mM*A#F-1HKeG3_cETZ8M`uEZf*O9!=cbEZ0xW=rpM zQ*Yur&Wo%St3!MGp-|Y0ET_MS3aQ6^DJ#O2(tz%UTAFFg!Ue5A;xwW&qFIye-J1l*!x{w3EZjZf$;m@myd!Z4Bux z({7*9ivH7fTuS{R9p(o5PWL18R77sYKf-Z*d77xuhW_v(*y?{aIN;QUo~P2NRXMif{2chW)FY$BMiiw^s$B$eur#-%nB zZclOE%Hd^8y77FrJ;|#I`SVkznEf-1zcQ(P>^*27)6^rSNcT4uX4cPf9*-pE6EEm6 zxoxuMG?KBSJaBvOAH94+ZomN_dx>$MjS;WgM~B5jEb4EOYK_#R=ao0+(qUqoo(|Q!F*BMpcSJSH;UM}Zz6YHJ5k{}hWgztZ_fFa4q_rj z?=K_U->goweTVz`!~NoH;}{POn(K>^T!XB;E#K3jm#Q}T9jTT~T$j0@G@eMXRb0_%yiDLQx>`6O@nL&nFQK#{oaD&n*`jrmnF51{VKz?fu8w~!2;|xjkTJ;_M z_fp1(TS)%pWU$u{I>gU*`m+2d?u!Ri!mlIeNPPV2NRY7D{&@HT77_}tDNdIoYfjzR zXETcgmr98V7FH56EE9Z+kOt9xL&md7hl$!1jg50citjj zt=*xX$wtD1V6`%Jb`tbPScM0Wo5yQ1;^&d@aD~HMh501(wS5ZeMjj{+=%+6r;e_BT zlXVM8Fso3heuzx=3KS1rgz3r?X_Unz98J3Ytr6*$@W9E3gM{{y>U-RrBwTkmE?bS1 z+2Ee(yo3aag0<5Nmy&Q%s%h6HWUZlX_0DA^*bBC-VqH!G?W20+S)@W_)H4$<61;Ni zRKFnQyZSToxp6#2)8l$PBv>7r+VT!rx#snWOkNVs*cX3QUqJ#z#@%!PDUh_{OgtY6 z#ix#clV3@~Eh7QrZlptWd;y)GgtUOM;2?XN6Bl*%h6E$3#iUN;`LPvlyC<+88C)OZ7-~K8ywcAScUc^#=C0>Ua*a%f zvYk8$w#z>{uqlurUG^rv7ix>jvFpgU zZ-faaEws0ymrE9Clc1Z#5GqG*l_cbL=#bF4(+7ynBz)GoyzMly&}d+XkuJ_7@{7|X zvdHDN_fb6(zV_bUr>&2Aj7&H%j5K__J}Sk4ge}J9hg7zZ@c5lT@(bjIoHIGd0_-M4YyLQ`C~SOf2i$ne^YPBvyFJSt(|!D5c~U4M1!8RXh;rW)HVP`^7K z%1j|Id5a0=TB5(6apu&q!g_46KZcQ4RvjEku_l3Ts(~ zmsqDu?j%8*?Miq%vP zTS6~PAUpM!GLATt(47{%Lu)Sy9;`Pdhmg@(?}=m=^q2nWM@p_F1X>KA=t1gW0Aje2 zkl$>lCE<>7r+tv)5pr3&-m?%7wA+w`)2lr(j!>)oZX?Gvt2cOg;XJM#nYG-T1Xdf{ zrmM);rC$^6eMqoeA8E$!OTrGjF76WK_|`>T7Jk^?9?`?!ko9SzHYfZ^Sj7F2cS``q z%j<<5<4C=jjcHkdIG+4GqfJ31v^;ymK7j03=dC*wOhTd+B}{G~3HQZWWV?_@FI|0o zAcTZzN1G#SLrECE_sFOj>1r*@5*UVh!V5CKa2&t1hr>;z&4Aew*Zm}{suikP96>^` z*7~Y05~}n^s-}>UM=sgs(lD+sb(*b1 zNBhtkJw1$EFR^V)3W<8XA2p)PAfZDf=g@QHtiqIa2M?k@J$1Mv5ry-=yU_U&^0QwO z5gLtg{L%2?)iK!a$SQ@~NN#b}`<}6AH>=k>E{ntZcrL6$S|}b(usek7ZLva-EuMr5 zNuP@skk{9p(=ksVVOL;z`!q7PFVFFKBJNAM*6;O_&=2>2ig=4WwA^Q2Ml$-pb4{9B z3Xa434SyfD2c%D}jD=cHN_GNtF* zb)QW1GoC9OxwFvTat~a)j@}8K5&n*R zZOU@=#1RtK4OA@Ma+Cx@MmuI4=^a;ez)V-d$mAeDd47cL+nDNP{wE>h~u@?PH)B-jP@>+=+%KYxucy@5Q~ zOz=3JB*DMIX8-(CsDCzUZz*!=>_}~^)41PXF+ceo`BP-}+`==s4;aQfZz&={v-(B- zIP#a?v(921Qdt$Deh%xme|_=_dG$u2Y}|Pg=G~Kzles{`d*Q^F9Y`p9R#Spx zf!PZzFJYY5iL&^HRAza3te^tp)qJ)={Ynz*RF+A-L%LoZ4#>Dn!s)PtD{5CTPEE6a zdx?B0w|i4e73yzI+ySYps9$?}O*=Bv%IrtjHQe71zf%*uj`1bKDWnmZZcu*F>jv84 zmV0B%s_`7bdSmTXWH)=*9=jUc?;ANX=GJ0-R*$@U9_hq#<%j7_+@B)u%6>u4(LLjs zSBLA}xF>ycJ&r%4w|)d^yHf2#N(1)y)^4@RE%f(LTf^tbS=CCxjN2q!GwRA)*NEq^ z^?G+&k&`zQ-UZ*m@p4|^5@^DGTO)2mJyJGp+a9;OxQ_DAs2ul5*hWz*s6bx7BkX>UNzk%k=i%wV zxNQQ$H;{#RUF-M+?J0S++PqHO&+!Y;5@hL9-E9_Kc+R=bF#n32XLZEp_*0DYn<8xW zx=FavqwF|_{MvNGIqezlOS3p!RC_QE#z?rlKpNbp>^=CLgg3@79VK3nASC8x_YgU0 z*syb7FYfzd6BYt5F%Fo#Gpa{^x?Q2`)`xK^R!^Pd6^@s+T&@DS+xF?&o&6Y>1G-nR z43O}y?ev1v$kjBBZ(CpEy1XtK`GC~S8R^O%Btc{S!0ktGZV2P| z#EmGKVLU&j{`BrZa&!K)*gt~jSKTLSLZhhXrZCDKWSZnNR_`%9KNxVoUiKE_c=^i4 zDrBJR=qcNGB;>ls9Go+b>mc&o;T-Zxt+a;8d(_t%Nxn}=HG|m`M?au_-OawQ^%4CD z-SZ7HYL#qQ;sgny?-jNyOyWLra!TkaQgKPj+U&BqrI+qp27YV~~y{$a#8B)rrMupD80J+AjNzqvh zcsyUKtQonGE!QJ}l>z;)nuJ%(W`O0Qx@Xl$2l8N=(;Nn{>n=B#KbHae7T(`Wkm8%8 zN-fwJkUJLa@D*7eEVAr4I|J;u=GE!WW58MOe&11KLeGRi>U;()k*sf0Ucdk`MfboS zWUs&j0dgS&R0rSR5?jOo5w|hV7G&AIQ%eIEGvMKCmCGwQ7?2YjZc~GtsLuT6#L0kn zgFd@U$>&Vcy71qP$Y`-VGS zrf@OfB#VEDGB*QO%(h(IgOnWnR6yrpKsUFuk{B-o)}-a$X+|y_Pumf&f&sB}9EW)M z7;qt}Z(lXiW3S{KrTPK_X)eHkz(FagX{463RYl$^1{6sf zs%>7)fOER@Ylo5BHbrYEQy7rUU3W`Skb&=JzqD_9n40vOnP{l36fFKrW`RmBs=_BXt*D}Bs+J)Fe8E|v&-R$$o2Cv9Pree4b zH@{OqA#?2YKOPllfM1`nlh!)ak2X*HAoAP$Gg=7}IKI(2rE=>T@O|ep{!Zio`6Vhs z66Zll9v70re&&6!zJs*WSY7KSjqO{^U%O0(0Zm&k#$7?WCX2q^Ez5w@mv$Jl$}xZ@ zVpVnq`89ay5+ivAa2Fl&`G~wH+Il}*fdPWikHj`9GJv-+m3)OfW45X%Mu`DkwJwTM z%D6sZ`{Ub?yhWOQAu0@5mHa|!l`5{^h-6$n^4Gb~bpwu{f3@UdH3l4vy0rfy^2|oA zd)6Bn;Mpe6`vduK3#Zcwbp~`4oGsSh#DHKu&d+1W%KP$=ron(LIj(3GV8GIWoA-N= zQX%V?keUn_88J5((?UB3wajLuZqSPke{BXlpEBa+)nNe7j{W90knfMUq&RFwd#K@T zX47RrRQ*1-3rMx)XTemD0V$gghkQcDSm~D>)n~x!EtmQ=4H#f0@SJxLDf94_Vf+>b zoOl=#A#2Eh%jH8CI*|VC3wpx0GNAG7r}={07;r0S(EM>l7<|wk@U%7(MjD=N&S3LMbKPi~+SpJIYke zasC<`TAw31Dm%wW3-rrHiu1)S8PKP*U8Du6{eFc;fE5Ea4VPH)S~K8jJ*&?RBu^yQ zL5CgakGumpY&JOFbpH$IktyRhYD{)Az(lgKbqaaqIkor5E(TORoAVBKGhpX6{ci)v z!o?fe5A9+6KEKM?qW=?j0ohY%|o&mn4%CZf}kc;OO-5eOOR-#p9 zu_NR6_v9Cmp2nNitewzq-A-)yj#T_yrc&U{0JgS6ih6s|4u!a7N0CQO_ei9;pxzyw zgq2(waM4_hzZ+S3_2^Qn8w1R}p0SCzqo1VT|JsC%JR0`a+k*jf4!(Y|%##7@jW}Dc zAg2!vSMT;>fcvj62)!8)R@9k&8YvMwN^bSRaT!#5y+`6}GnSdYsMmC=x|$yYw!}rQ z=|!%eT+e>cp8>^?Ga??qfJdJ7%`M2x&~wEBfee`SRXdS4hyjatANIU~yp~sN;1JA! zdG%BgwtWovVZ%zCN2a%FcNvFZ{aS^xNn~l_tLVd_43Jhg-mMYFfbI9gWc!iatroLm z!_hzVUp|)H&w#{5DyJSHH|c2v?TcUlzILO*82|ACSc_!9Mp9z)AaYWVcWyj`0mfr>w`2}7 zz%W39@fi8mOGh&-iUBG;i@vXlW`ICW!R2~n$?m7Vt}$qDvs%R##o~IzkT1%RvgBa8 zWgG*H_RKT*id<6M{Wb3p>eqkI1)X^GC!W0BLr8_(+=Yn=n9kaIRW1?zV($69PmmPL zrX~B67=YXBHA*u2agC7EEo58go(1kHXdfv*fjy&Gli8OS5Hn2aN0ZClP zBLs8ME|j^K-$pKMQ7dvkjPavui8{v-jC;3EKDdZHn)1oc`Y7(ldq>B=A(Q#@4jj+L z_1BxVNcR{6xJ=jN3?m;q53WhdL%*>`Pf%^%Jk5U@<78hcBHOCDvB2#7R?pmG1c+H)r{|%YnBX}$S6#CNzGuV6@ z_oLm~SBH=*>96Dx&)|4gDx8%o!g-1-Ql23F&%aI&Kg)n89G2{qb9g=&3<_&NW-I89 zxSnUg$I06^i!R{4CGq)A8S;2Xm!f4c13pZ89G^xKaAMnSOTAj+`kdr%-J5F(qi=J} z>~(61J>x!2ueE9kqN~Z)Q?r(k(al`nuTe`pOLpygx3QLJf2V%?t75-yXu92phTRWcTx<~`{b3Qr0_>#mpKFE z<$&;wopWf7B0dM2UUOWg0z~K2`fsz;fDqg4VEI8E2>l11S9}2o_x>J{H=00bdDI8k zY6Ee9*X!dQIzYrC_vm z^R@w@!Zz&7wH=5(`T7qx8v`+QWam@D1PHwkC2iM`oyYWU1e*fUdsH|})(nV4SyuL= z$UM#++gsp!pR*bE{FXo*+1xeSflQv~=bB;##LYbSc0+3*R#{ZZ%-sRR zD?!_cTBM})_N!qwKGV5hUyMS09{9uXWZXkps4if@798 zFFKGqex@bKwm_XTaYk9h4hYMI_-oai~DW)IYz&Sh@d_CUyaRSQib ziHbSxCJsR59i>JTJD~opR8}u=1VTeap~}S(sDT%34I7Y|aStC;oPb!Uvfnxa8K~~l z)`jG)$`#XKQ=ltQCmw&|e~4+G;Zy)O{s3xr)^ReJ^Up47wWS11q5Tcy0j z4{F^`X7z3I1L_p17w72*aC&5o)M4aL0hN|UKOi`oL)|Aa-~agdtTp}sZV;?!Ko);`CZw+xfvjbrx;QR}RK` z_~krz3Wi$cqxrn4$nm5BqZ*{TnI~-&^Rt^}OIPdzs!Om^x9&c4*jr(<0{21f37MZF z$M*q|P~Et>1=Gq_5ADBV`m7&6{-0g|j~PXY7RYS2&^&qw5H8;n&zE3&cYS}wvk;(4 z4AHL53kB+BYsVW($ob0?t~rJRNQ8Z^NDc);oA<)`8<^f|RG2r6lsYqz$P)%s)+OFy z_~R++qaW%HeqjJfgBH5SkSjDR*WL@mano#BKZgMkdCKCMa5zv;FHbEq2?yA9mzRtT z2ZHm~nDM!As6F?7(aKJgQ#J*^oV_35j+9iP?0%@-x=z}0&wd~pFH%<>Lb+ho>W<6% zfodo|FRmZu2M+3NSP}uX8rNH1t49D~sC6dEJp!n^*;*8`P%aav*HIq zF-P`Q;cM&%07isU+AbUbs_}*~{ijI7scpMishDqVn!bVxl(GnPAxwYS^Yq(hq@$9Z z)GlO_`qDlAROnq+JboyK3U&i5)0dB7+F4Gf?-Ksriz75`KK{OoV#XmXi@$FovZeYg z@b^7bW0U(Ki)cX1^6k%AgTH(DRKKoD6@ORaAC=d!9p8UEKd$w`8Qs?i#MF+~;N6u%hG0hvVUFwbRi5z`odWnH77fP)>Ob4RLkM(jXmLor( zs<@5cb2`e0m*e-dR7)QE1^ix;$|-pD6g%ECb`YY+R^h$(!t3>E3P`EyjOZ;S)SkSP z6KaQP+2yTn!6Z-;(l=Pgtr-r0+iMg4eT(Ir(gjp@~zqM_{!bf=XATZXazx`C&B#6ig4$#br9@&$~-D0kYmDZ zRLz4x&@Oc8TOp6C4RClJgx+g&*FB~qFLV@UXCDMuXtu+q7|W|()Z=SFQucXwcAr29#9 zbu{#nTkke0L}UDS=yKZt9&Y> zaUV`lo^u~LbZ{d3CFb+#zFYSR(+YFMt}Tqg^_f0qAQS_&i#RMhlw*L(-e_pQEe43S zCnJX)VgRJ|KKO-TIlEV}6klDBXyo)08-U#lVmpQ`WL9t+exZ-ZN%VgYuTeAEiVbl2mOi%GxA zag_?4M7iaw@uaJ|L)pBXf_iuLwsDQ%3@m6|pw?sYbuP6-Kpo2Fa4<&pWfq-xMtOsJ z++-N0C+o^KCL?!TSVcd12;fKWqgz)GLB6wQD_bkdbxtqSAHeeKr;bHU9|B5vg>OAa z{4cwX{~;U?RHK@4V@%O zceqE*vkJ@IwLF&7f_z9A-g*@eKyqrm`;7U!7SnkaCqRC2_rgtU60rV-J_nTqs4ZJC zD{33c?~>l99Z6Y6ks{FhK2l>k;_+qP`ICf`U(-+`V#YR zm*m+`C7@k@aSK|I2(?S&Xwj5J$X`FwpQV@xy<=Z9PHjoVc%++l(KZpND~q022POg> zunxHsi|Lx@ds>fSy|sMl9T%~D%O>9LJ4nqZLp?p%j`7X;FFqhIMTb6TOTzZpRG#rC z0cGI6PN!@Vi*7A8Y&;np*$+{uu9DfH?b!DOJ+ zC`|5?NQTnKn{0*@QT{<`a0g(y#m{q_wxImUwn!C=WS|z@k3MCa3^F=_SC_db!}v{E z9%>+_(+zV+B9pY%*s z4dhd=-iAi(XBYLd_#>>pt>a3+q&VljQ$ahv7&E8}E+{)@pUorn(wFlSS6oAk; z?I6w+;JhoR+s=pS^b>({A}P?yBixcCor2?SHXT*P^p<#5eVr6AZa?*+z$gXAhm{7u zSz~z?OFm1-6rgCl3oZ7-^6??F=Z2&J^dDkCsogV>yST)7mevpOQeI)S(o7|6Q=wMEefMI4RN&N8=(7?4^KsQboiIH$%Fy;nMSrRci3-K^=hnk_NX-8v zJUTBi6?*9s9$T_gff}2;BCa46lE2hX-8ql_eH~D%ccGOO9WV{RyTWA{CU3}Z4K&C;f7yYq)0=8>5`$s|+*83c9RdqZK&%+9Rug+n) z8_SO^s!RjoT5z0FEtY%DQMBhS<~#2Ce6Stm{aT^tpJTZF5vEg2rLTapgR@omZUl}Mcj-X}y*K5P?NFP#oD2Y1!>sis5e^eP1w z9h6JNJY8j!4#eKli)z*=pD3xZa=>z{@_zVxB3YVz5`vNQb(fu{rsKYKXSgOV9gNu? zOgu?X2Vc8Qa_^3%11G0L!JMLWXk{7IU3n49&q@@KxqrRJp?%~Mrfpq9qF0hV&hYW6YKKcdQD-k(!jx_^%znBYLU6cW^t-G<2Cj*~vRZg`F zW`OSid8JnZ<@AD|BZ?UyGv|Exlm_O9jY<$(kl({O=b2+UmH84&_GG~L6~jqf&T(25{c5EfkN!`U3|WC6hCtcBGRcdpHA<9es-B3p0S?Qtz)=jP2Zy z^H92y0n`=!fPY61{-iC6Hc@0mkP<|l6ro}!Jdegp%-t@=>GzK|cHA6>iJ3pj0;C z$+lHl&^vXtSyn6yD6R3|m&>7i%FFqaS{B%Kv$1t;&H`fOMQ_!1%s0=Q$k~DN{pp&a zj#$ns?~avM79@Y&9HY1|3&vYz=u2sso*20FHZBX`!6Ko%>DWH|r#pqmu>A8YMUiK) z|2X#stMV+U)mpPc<~q`|?hM;)WL=Bj^9NY2@mxsV! zq-Nv20vDHh9LnFTMa)h|dA*jw5rEZiKeodc!f7P7Dn>m7Yy z^Vu>7?`_uAmDuG#{@IGXd)={ovXKFQAeQ5K=>9Mw2a+GpYC0I51Fc4edsS0%@b}1y znxls?zv7t9vBDgX(K=eby*LNs#AXBH3ii8USfKPK=9jt1+TO$Ry=~;8$Jh=(b@{dD zn9ru)@A3x6!>;vl*$1qbSpzj+bHGmEXtUd#!(jJyEN2dtU-pz z5vp7pI^HA%`vsnxKAIuy+qiMe$Pnz8ynHyo3i%7mzj)*jg8jF+ZhmfvTjd{UJ0}F( zrKzjV_@catIvZU55RaI0v)ZN*NIEcUiXsx}pICPs93KMtRx^7&+#UiNHm6rCPD7~D zw@%}uA=qDdba&5L)HA!zi&0lGUByk4r*}~wdHt-Vc_{bl-Kd7I5uRDGW5*}dzrh2w zA(cZxWBSmDoLZq^`1pd?Or22h$se<(a!Z6mnmr6_9|}pG>n?8JEfjPkO>GbK4F!=$ zZ=aFop}21>^3L5cp#YKvOFgWSuAuES6=#gkJQV2ff$)h|vCe!9pYIbNzZBDHoE_BJ zALT5HI*}0+3K_!&^&S$9@yCM-E+m9vKT`kMFFO%F8ma$aABJ~$6hHkq@)`DVDLAL3 zbDuHyI>O@Nsh{qLLV#<>0ZX2t9tCads1=3cdBysAt5w4A9LmaHt5prd@$aR2{+eNs zBRgMEqfrMu#xSsEapJqcl<uvUasQ{$XG^;;@Zn zFoq|eeS0Pv!-t%`WU9dQ(k8s!voj3b*B-TLw;$sz^r}T4M>%UZe$+gV>8!cmdHHqJ zb42{MqWeg9c&?}OGYpp}&b|5u?fAIqsF_MQ?lV1Yxw}d@xO+Hg7xW9a$2g2){mL|>%2aVo?Wwn-ugT;bEjoE9%aXz>0foq!)9$LP;R}}Jf z3@(h6BmIFlb5wSq+?1{ZCZ}UMzdW}*cogx}?a58D5Fem5#^);Hfd##8-9`MQm1~bY zs1>>fKA`lo)eo#fHE z)}K2oSM7?hlga^GK>7s<8M_BXK-QTPYSl(XfJW;X!M0WrkW`~+#!iO_$XJ=bUd=56 z@}plCPw+u*~S9v*?~KJ~`r#YTW(;9;-sNtpiA zQ#Y6IK|FVf|Am7Q;BMu!S~nB*>pL!M+C}6KZ8T}uEtGfPv5P1dAO8}tIxk!c-T z_bvhgRyuoMEf)zky=%|btriJc9dh?O){TUW=EWlwjUyrFf}`OJy-2W#ojnup zZlxig`z!Z)Mw-woU9TDO zOEJQkEe@KM6GKpX^@(>Yi9y4oUC2CjF|LcRU8q@83|HP|b9D#~&Z6 zeY24mWGy_`c{LM*rPijMRrSOG^{y_AHV}iMp(Nk9gBb4xiK%q9vlw(wm>jY1j`3TY zw|>_fVS-gB|9)a{iXMKynHi?Dvr^9#b1`J4XLmCnA%+a&Ik#?)!F2nm>U&N=Xx~7m zqO}-|&z#v2WG4o9{UrtZPGYbLUUe`8WdQ z)_S_!I|jpB^?Y1GhI$wudljfayJr+i8gE0sbkE|1only_Z(iIrRSfyZR!9!*LqA1z zdNu42(x)arx_S)h>+M=@pNaDJo1T7_h3W5cPW8Ts;g#DDSG^{NfYt9;uf8RQqKWg} zHSeMS=I#9u_D~GD4-Xo)$U}Q0!_*V=QLiyu1B?pM?lnWw_P#}b#Ty0m{fOa@>#3hm zje?YZpV|+v6ovCg1@A9Zje?w7s_qjsqQK0hgWqk26ztlNKQD9ij~U!p*! z(Y}_iEv6TmT1mwb@r%u37fy|W<14kE7Q3Rnml5`<_Ew_x#?Xi>TLv?)O};Md7%q>5lui zF#ht8_7m=*e~r~fpM8k_(MfM=numH_(F#q;N4Xi-(+vuvAmEziD)C#?yHTM?^CSBG z&7>yFRinXp!PvaF6{8{LVLMxws?nhK;KjmQHKM`H$$F55W;9qFIhl4qD;mckLDxDq zjE15cv!i30L__X{Oij&}7~UhQ!xDXzBmG$Ps$DeTg+o*AIz@wb!Qo}+yCQ#`K12KT zj0X43F8j7ZG&re^xYn>g(&>haR}Vt|!8>cd9U2XW8Zm7hM@EB|ah-zmW1}IcuDgTD z#ArA^Z}Or9>u8WEEX?ZJqkfAY?eTSr2C>n)OHW;*Ap=H4Sk8!sB>yWKhh`!_tZvtK zF6!4$>&>PGD8JRpsiMWvpyw90(s?GdPkLD z)FU~xjYl}*fqREujY24PXaKR%Ao^ssAy$s^+q$KwZ$-U+>#@QkIU264ODT6{H~PzQ zgMP0x)bsk44^bJYr~jk56_21_56zTJJ%O;&ojGStqh4{>-gP*Ser$TQ)y7NFV0FCc z)0=B3UuV^l3Aa(+%$YmV?xFvBc?UGgMZewXqvex_dPq8(-^q^#`%2{u`WB)*vuY{P zZ_)nh^5?1_Q6JY$*^^acz$xXr-NA}6&^-BUWRt2fU@)Zp3ZEJ=P;{zX!`roEU`NB4 zUwUc9;Cjr-!J#@apr)&LzepG9rt0dCZ4m=Og=#vE<`wd#W%(Xx{ zCq6{=9fSIWEcqBZJ_gjYk5nrBB?iQ*&GrqQ90R8H%$vkI#^5^33&W37W56=w^wTkJ zF;Ko%;J8FjOvg*?THZSb@{SGfIB`Dm2ThFG<`VKYv?D49LVO@f9Lt;KCmLCF5g|{hx{&L#t{so%=D6vVV!y zv|RLOE5Chv@=#yDn`bJ$K>p$^zcGa|U{>dNQS{pw$hT}>JHI#vju-a2-cwZqDIT*% ztgI-3({#2t8>76CmZyxljLU#$IJq+$QthWU2 ze^}mkQ(p z3eL2@WxqfIL7&<*kolq=uSZvUvP=T*p~=y0S4$xGqQz4;f8@`*`C!|6q?^9i|J7#H zqu0xaMqy~j)=tl7iY0hHIY+unA_0s3@m1f*(4NErO}ZvZ;KG<%4`ywXz!LpB6L#&C zfYYL_zZUL6eLFq2FxrRmQf6g)97KCY?5wcuDAH$ddHC$41U?+roMUhn!-o${b}3r9xNOM1>k=@%A`NYvgLX#j2%UHz{iTyOWOFX^znz|NJ`eq-k)2xYg#^5& zM$a`Xlwf^+`;qTk39j??shnOc0sEs_S6-_~A%BL6rC~)WH1G6uxpNgM=v`brCAzv4 zde)ow=2|T&>^SYxwRSxz7$0?RHKc(QWb$*zd>czaVw9+r+Dr=K!CSOnw334E&YLG& z8Au^aCDdS&p%e_72ld`yBn9;_BbAfJQgCu?>h-Co6zuy?-E7oH3c1nKraAYQf==7^ z`Qd}4xUQ|y;`~rdul|uL6-P?JtmW9KZeyijRJn1k%LFN;gj~EGIY|l@i+op{pDYFM zhnMe^pCW}NzPFxqnI;AIijlESZc^~`_pTM7&bc` z)6sVvD~&>b=~t+cEtNu2x69rlIohkyV?*05Qe20=XER|t+O2ox*0NpbA4${d$*HJ! z&r{EC?L&FX4Hs28gzGoQYiB7Yn_;fd_BY0U(84Qx;B_wTp)#j z1=_V*yv2MfZ*FB?EQRs~H7q?Zx8U z7BX6!ZtqYx7J62kcWrF_Sh%tL!j5^3kk4RzA92%IJf~9A=Wxqd_;9|$j9mR#Fgw{> zQ@wpG7<8&XwSA{p*s-^8#>lR*I1XxWFtbN2+I==?vkCGwy0v>xzgS#{*t7Ebz*rnV z?5|cl1j8Q=HEm=O3s#q0+M0}x1;5+PPgq;V!V>od^?a-_oh$<_u}v)8Pq}+)zkMv^ zP8rqlwo@#q4_H3rqf0DgDmv6_I3pJCIZE2tV`eOrFSI^3eh%WBA`@o+8VhMtGW%{^ z6pQNx&-}J8jfKNHHCCNn84J2sa=PWML4N(Z;c9`g0P+M`-#xw^3*rzn8)4@yV-dFZ!{7RUPL$AbN+#qY-z zpg*clyXR7b`FV5A!bKlqpn5Qw=_fAHi?7W@mqVDw7_`Pt{W{{$Km&= z7G>Ku4#J*XvhnB;2jv4lUGVK32Y&rm6$f^U1Doz`u0{8XgOt$T)3*1CgC()vNeBAJ z!3yur@~lB|U^T9_4-SEk-FgA`!R8FAs|1j@`N~$ysp-;-Xx?SxOznM z$*5nld-o2Gap2yh{*_)+nE_lB0yYf+DSsuvOh(I08uy6oH(2QuS+ zL-&Qmfp??1+Q%Z|Ag9{;kh9UKPqR%~mt)bMo45AfmSZ{tW?DVm5(fplQnx+Z9tS=j zen~6bg?41sp8p{=4)O!KzEItd>3;gPLFGee|FpjEs~dlxhk{wba@g7 zrcnd8c6*NW)1FP}`3mugx@o=Np#EOJorm{v@FBH-WZzGieuJ#=KpAAE2Ayg<1nD1!oNYZE`EPVs)nb$kOyAXduRBf#SM&xn z)tM-R0E_HTb**KPb3k)LO*wYuOp}4v=rfx>xuV>C>&w6OkU`I5 zMy+4YLb(df@=xZEpq*GRSDr zyJ>2m4BP`uKO}8JeXkz(iwi;e`m-;DN60|*eEa$J(K5)j)LXGK7U?SWC|DqufpLy$ zJ+CdO&-Ta{PTOT*HF&Gs%HTrV1xv5rM1MS4QJ8rL^||>* zXWwr!Fh6wu{gy{amw0wvmx|g@FP33sVjW@4Zzgj%ZH`Q#QRx=*dra!w;s2LBMH%!Lf(~5^B zM#;;wbmAfG(nR-k-FOfm>ReOaJRWvjl{#EL*y zct|o%eP?PM4^ZR$*`f~J}@54k|$rkG9(^co(9+* z9FBTuzmG{6h3Q_Eg>4uY4|&@xhWxnFw9T;#9N`%%P#cqm%2?DP`fc$`OR zICbhW3|~`u|L|4lhjx-oqqXs%6Il?b9f;|;sn+_q5z}{AGU#q_JZLrX?RGRg9&$d6 zx*H!A5BaB(`mK>-x;OKGagRs3v<4kUCB}oES#DbAZD?1$Nh(@9IBoZsKrJUs*Hqr%N24#$H?bfoRV;~4H!`?z%`>L2sGK2C1HVegTxbT7n%akY_o zpDv?4w>M3_eI506(Tm=98~Kl?2ZrB^hZVn0>N)>mJXpFdU?*Z4W6Kcwcm zy06gBoli9`c#ZxqziZ05ckyt4L2KtNALBv&+KpzbRpszu)8)-mD#{_vdB%}`Rpj8Z z-d54Lx*Xf>Pv-Ay%JIIgK$yLVpl*8ylPbYN% zIT){e;8NLC4n?C1jqVJTgG736SIQ7M%zxth(tkMWu}&k`aTMa^d^h(RCkH>zb}E_^ z6#u0+r01fXr>$t z-%RjMpM(0j=en%>RSrR~Pk73U$4FFmY*C}Odr%}TLAh= zJKKHn203KDNdI+AkQ_uAHvLGL}X2*&m0aj{;`uLOiPf1 znIfZJ&#maEY3{w%lhN)Nm&P}C$zj95iF*@L<)AsLpys@NC{NR*+2Did-^+cUYaK=U zM-^v1JRt{l`+mE3o|c1CQF!v=a~Qwp%+wJV(a+Cs+-P(a?aVn_IqwGgIeW{ClpHw( zs4v>E^u8Q=W(|EgA{X_sJYA(xo*Z}5lP2c%S4&wQ}cKf`+e7!I+ZOD5$ z7!4XRzwReFB)vcQCPy^^L__PhOQ@ItH>M;uo>?UUifqqk_O6})YP(+=sntq=9f@@; z&(%TLBBx7;Ho{-4oSWP*0neKcZP}(t0_fZ^@A|5F0%TfwmfNd`{A=s3_BFtGS+6sL z3=_ck%JWPOqXaOO{kH6K*97p|c<4iTj|9kC_NuMDNdo8%Jyl=7UjpdX9(m~b0Hjy- zZ?$u90{HFiK5*_ZlwTxoYBDkbTy8zsQ*LYmXl^J}KR!MI#Jz4c@cShJa{R|X7;c*Y z>Mhek0On_{cRY}wA0~|SlFE>-nPa}4A_2_$N9#3B zN`SPx@eOm56Ts%9>jcku9?5?DAKLlJ$%?n z^jq`2)2f_7{erwqkDg0_p!(rg7hOyMqkxrddR;~TzlZKcH_)EV^D89hB*1--eru-R zN4>O+&$r4=fWt$*v+q1Xy*9?K3w@pdmd{S8k9m~Tgh zA2EL{#*Q~uRlpLpLrd~2D8S{|u<5eO3OrA{y_QWi1(*fD_NrG?0byNSH=NN_z>U7y z?n|{4xZh=Nm7Y2ZFx;qP`?9eD+{Yg9k~LF+(Sx-9lUga@L&v%oYPV59l4G~VC)y#O z>G4(zIx0YG&xxlUyC@)K!W;L8-4u}9#By6`F9rAvhpof=pqypSQ_J;7{=L`k?lMz= zxN)x5RC5Jfu^yt{&_V%fZdKFIj#9ve-tF7?jzhT*s*E$5sDS%sQg|>)0S0Q*9&Vnj z!1Hg#Lk2l2;6gzi*LTjS*F&{o3DXsjli&Br#2E@$QP*LB`b<1FhmZ=`E}ud~a1 z^uu}clMQ^(KHcd$rxq)q`OCoubC;uDb-TaQTde@yptz-%*DAofmC@OyfeKJh3%=B8 zlLBni4Z`jOWBLOu8~cZ&-p}{h^o&w~q(*(4M-l}D__{aTB*S!?oe1iyKzmN>pMSO$ z?WytTL`X8qQ`xt0z-|Q`o}cvUMXCb)#vN-Bz7OG)%5}{SqMnO>J^b>B0*vSAcL+bB zfd7xbui_`-Pe+0bsEdHXKl{5q6_s3Sj8)VHf$;k(PHk0KpaqY@|9YR_{>aPseh*Ey zic5h%BJ3y4|C|Se-$P3x%Xn!MiE{IKz}J3vC+i)Lclyj%PNd}3B3vlHdMs2V66h!z zf4^OWy=pAwA%@F2{Hwp?rLGi1-%&Yy{a*R^-p|wJ+VJLkn}_oE;rIgt|199Yr=}(n($#y$B?xjY2zRINQ22f<=sOYUjEgv* zC4G8DB z)&U-oe~7~XqO;KuQlx-V00<9y$X^8N48n6Bm0}>Y{XLb8Of?T+sD=le)A?x9sgegc zRsR$j+>7ub9yos~vT>Y5_a5!8+tnEl} z^md+3@ixZqw~fP0e-6#AE^*==Ug!`VEo*gM&*Nt4>JkskJ`3284F#A4{KgHyq8)V-!viEQRmtQr2 zf42#1Ieg>C;iJ|3J1ttp_1jL+W)%;IRYbRv!<~38O!V>JkEHUAa`=p3k0i!tzC4EOQ%vP6lI&l%j_ZZz!9>bOmHd2?^4*>C`_~neA1gRr z(sFLc(d9hccR3HAw4BRpNbzTuas1UXPFIn_3zl*E%w=58zGb{zm0Ql?N`iQ9lC>Lk zsQkQK#c>rX2eE58E|lj&KQ7On%F`IqzXS1y5#EE!-BBusVSd~{cK+PY)u}$%Pv1Z8 zPiOVl4EkOl@bB93AaA#l6QcNcj{As|{f!5>UqOVA&#PG8j^Mf+|ea+wl6{{CzYJ?;_#!xQ@%@FP3vTu3H)2@(FLJI$ca=bXVTAC^~W9eXK=Z7ce8Z-j#B-G>oH2ZeZskXM?VR-dm(*C z_4#+{i2Lr?cpx!`>(iHiSK7F5iG}-08K3zJ{yjQAq3_t9U9NwgIIbk!mBaQOiipoVhDmQLaPqn3T z)}P8(RVsfuM7No~+u1=}AG>gF@1$sMuR_M_jo)~GyJh8_3?DynC-Z;uJKq0w{IG@b z``|jF@_R|1NBQVO@KQXN-(@R<(3<+k#(P+PspstF^7ifJa_a2m>3C82%{0!xdLIkd z_SnzpU%BjOc(D3DrgzK6oIhg*^`}F4|KF!A)pOpsPJxfl02zm~V!54hvu`QK`BNwk=n1()DFc^y%0*@l^bujwA*sOik?zCvLcTAOB&1M z_?#j?Yx450J(t?YaWrnhc81lr2@%{cE2&+@b3ClREJyx-NceW@SK~NGsisJm@+B&a ze;;*;?k4re$56e8=NwskkVM~&XgyCip88RDslQe^05sQk&B#ol_FtRA@w_?9w^h`S zvmrRypZ8PJslPUc`XPJQ@czeL>Yv+s|Tq+7fIhMo;zj!!1HRX9_qx$ z2|kB;{hU0C>K_dmqf54sb9!8_Q@X=Plg5jasl4NUS!Oq$n_+SrP&sp;@q;ivSV#8U zr~YX@f3AN%>D`a)sX{p3OQ1|oq)GkLKGZ+mO#SaiBu~Ic`}2OEEAe|$e;)hwY#!s) zYA#QW@K1!lr2fAM1O?RsYv=ZB0KP21~y+ZYYnGA zLVE2dx+@f)LgR~cf9^lLhk%vK>eT*OAVY|ZgzexR+p;X?mzro^{Q9IFv?5auQnce|>9I~0p1>Oh2 z`s3kLo&%};XOlli5VRvddXRr3DL?vBzD=flI!pOClJMCS|Cqwfh5R77Pf1?AFX^&! zAkf{XbRtOJOez5zjx?U=CX53J;=Lp+-jARe!Phjd-9zvyjVo%AoOq(k zrSV5PjWbqJcr4+=C?3;g-@$rGPi8c#_+f_}@@? zL&8T;`ZD4_LGsa$%>Rdp?f`|$i7u4l2NT>xaz+w;FQP;Jm_EfscbDickh}@xmnibv zU4j+KuQRBedr>)WM&FY;;kW7gNTd2Nh`ui!!j}=lC5oh(uPKvKV>7ZRKJey!`N~b45E295}@OH#k{tIOK;d};@ z)0*fz6Kq9v1{7b1;5|z3`D(6jSCWr%nf~ZsCJ*Zs_ML1edr~Pro8Wrl!+MC(k0W}a zJ?les(FuL*1iloKCnvh!NX|0~&mdSp;S;DmQ4m~3 z^I`+2Uu8$I1I2$NJsMFvaDw1$iXTSw{U}`E&!+Gvr1vGlpHg}|2tQ5uQG!Uv%2O)A zETVfw@@rE+r#toU?oz)fmEaA6GJoElhWqpW=5gw8HlThJ_CwjcAI39(BR}iE;r&Of zUtvrA(c08sy+!fWsK45u=$aATG-|hN`SX74Hj<0_F!>#bz7_RvHWA$vf{CQ}7Sa>% zX=3`|ye8{UoTPXcvTHiQ--vz)$)7;>P5Y7_OJ9fNs8YBI(ak3P@m?oJH<04-UMS`V z{ZjZWq6;9t6$HIW--VRUG729-_4W)Ht~ zk{p!B^061eNyI;apfSlo$jdwNn-K0q_$;DB$ml#to{S)_OR;i!gy`$ie13cCr?(-f zOK=qRd(RR6n#PCuG(Y#AU^AM3!+0kDI?-Jt`8Nm_lDs0q4-%b%_)bxHI)&e*@W#{+ zuSn^1B#8GkvHZb%n^=B#CA=YxXYqb07LWHrF@IDgIeDb_HcD>~rMHjL%cA%fgx@E+ zRwVBY;k8Jv5rtb5K9cZ_lpe0LFg&w1>;*xb7iRf3mF9!-ekGP}EYTNj;`#{l$*pOA z81F-3dg43+E5EKZ?|h%))oEOf>!&P#n$bKB-b=*j%_-c2!Z*|W4&EEY(oZ2gn&dnt z_>|}qDSj})t|YG^;pGVKAiYMAzGw%N??HGZ&4Vl?y>K3#*)@*%9#i~j!k1IL6UjlG z*>{1$mk=HLh51#R;xT=OBOjB$k#J$YeGR2Qo#GKPKcQZX-h%KZggX!{qVNL*@jfa> z|B~{x9qDOE>3I^2CiNGW+%ooy)F`t>%PpN?a2RADE}-7uSvKG z!NnBbner3)nY?SHmp{Qk(nIhsuD`SN4Jf`l;hhOTNBAz{n?!nDruF(m3HsC{>k)7W#OXHdw6))6y~4Uc?f?2fbi?@igpVEHU*u?=$oP_@d3g}w z`2b~lqIz;BR~yeEGTe}_A7nn^>qHM62&VIOCi4_3U*VLFzMPkrJqoU0&n;ZP#$;b0 zw@Xxque)gXp><$dZxS`5^@_(lTw9gaTV8U%jIWZ!%jppA$4&-(o#xfL6rMjjXkEo{ zA1e!vT|{C&^ZQAr0{)n zj}~S#{$1CzIsZxyla}y!?dIng|N7*!EIubRlgV{-KF;+U&eOALbAXqdyHvhRxc=si zY5hq=>)FHTJH5=mE5~PizSQvop9fFAPvxOIUx)Ik&DSAB6KVYd?;&92W;|cl=(L^I z1?$p!pbD+asZ+Q|G}GG$@10@uvV&>e1lLnU$|sK2$=xG)eN>xZAgyOONAUc9OzRlV zw7$`i-~w8&*-ALxC&ubqHLAyO9fZ}#A85U!Cxt&JdBbUb8Sm#}^671#2(LsC?>S`lXA*o$^0NpR>|aLm_EG#H zO6LfL+Y;>cg^uORN1_+(my*6t6pnsk_6HEe`xO~}ozmY*^41gmL&Eil4*e^X1LhY) z+9!$jFgf!m{u;^KK)9IX6cQXp^4ijR?^yDW6XEIv8 z5Fhe0yQ>iHLUQpwN#;+y&yuA#oAjAWa*mLnUy)wABP!51UnldQH^E&b&yV5{5&uDgy(s)L>GzTJ!f+<12gT#P zpDbMs!bKF{jG*AZ&XgYB-^ui9M|@)lCK9wKIy0i%MzA8)`-OzRCTLIX=0)O9AUKEg zSxoYx2p9Gdyrpowzmw&YKFJwO?N@aQ$NN5+z0ZmN9NC5Gu<&~Xu{<(4Sp-oYvr|NJ z)|0+S$NaUL_zVaiMDe33d?bZ0r*!ubj*!XSLih`UxR02nZ$$d;B{`@MqsM*)gR6LKt)u6p8=wSDav!F%7;)gX8*Q=^3z`C0pa{+68XbI@XHnc^40Up*Lb`W(W_uJtgMf<2p8HB@vpWsRh0616CtXEuV2$kbcQQZbeKcI50)JLY=_nn3Lx-zpJOeZt}&$(P%2$} zhgr^c4%W`Dj&2^)ZM~e`Tsh$s4@6w2h-TZ)a&U2Qo#I6qBDABrB=3)cs!BrgUj=+s z{t0+Re63spSCW;CSH@{7WEvaDyc=Hg5nF_kK%kmD1Rm8 zR>%0JN+ROZz}KEi9G}yf_=tT#nb$&m%@X0YON7@ENJvgyWgL6*O_aI_{Ppk^l*Zz7 zoCEBS;6r>u85fE2O$2){QD8|uw2_771MxLLykQABI{03{1l|bWnLMIzjCivW@w)h~ zv|Z4n3BHz0Pw6B567fpjS|#x2_^y;G@VCHMrH%sL5?_^n0^Umb{`2|ifuA1u>4Bdf z_*Zz~d*cP~^V|)r9r{;z{py!W!3r_ephy;1rL4f;nr>Ho}so%^=Bf^`|$-=_Pw#g<*UGW;RS z)%X3O!NzDBIOgKRE?`CG%lxt`4dM6zubc{yA83&Fxqyj3zx|V6zV8n{?_N{ar7hyf4hVm-dUZKmPnWgvAf}y$EIZYx7OhZKt?8J38A5Q&6rm zr#pBc>SAr{?%?4y)5C#F@S5Y!-h_UEjUf1MhTrS2X3@N(-rt<=PjNqn2ZVX(()aEC z)p_O`O7p1+P|lftuN>;-C>cJpaOCIze~kx9&+`lYSMO5mBEtHDP;Z+3MGx_QbvdD^ zii}H**GjL?=u&#_cle8-M-bsD_jtHapRRa74FBVx?D`2dKV(0Fmn&h{2Cnc)v`N`JWg1{c`o+ z&Qo~*t>uetU!Y328_N}oGRd2-?ZdHr%#(AXRKM3wWIf@8LjSW&l>I66AM1hA?F66I zM0Keg35vVB&35oWr1U%v2n2r;3ght7_s{>;aX9<*==)RdG5&tN@n_p3pE9d2x-%dC z|7efC>?_VFmCvQKQK%QRo|caJcjIL@{#)@wj{m;a9^t)4?D?bZk;W@dZ}#slUjJI_ zh4v_kJYYj`#T)+ewQ}ZOo{unua`rVkHO=4Ck@(NxYwH|tlcze^c{$H=u*O}ro+8n7 zH&-`1Cl5E=d#n8U8j+{lOb^_T+qqLm*Xb^{o~*4@3Z3j=JH2Em!<}92ob4T4y)fS1 z!3*WOd03l{>DJY-?^q>|^6|tK6)zl{xlXaRb8~fco-$Lpu~*pTi&w|ec@~RjoL=}{ zo4?wAR#b|k_ER~hU3T?c&<|P9@$uZ3{Vt-H-2Y$uuS*e@1z)4!;f56LRQPQ=pJA#vKJw4s* zoNc`v?5%l|LlJn~!^3upgS9YD6Pg(7QU^iYZ9QzKW1Hh)?cw0!Y&+T6#o22P$`Iz~ z{;u5o-n@g^2d+3ZHG+9R;lIQKLO)NaRfTy6?{~j4+!O7=vU~Hd0BjW@@He&{0nYe6((v*@3S)gO!>!Nc>AU%(j{_GzY68W7w#1u)q58M! zg!agy#<%G{*CVC$`K$Fv$@^xMXR6C?e3|t_jxTxn{jx4}h2~TLbFP26*TJyTxAXIB z{Qs-rWmm3pe#mlFcH^M@zjYkMN-73E$ z^)x#tTUS>H7i-$E@;Mw2C{4yr-)EfSr`S5XT6;QpvCDH%6HaFB=4fp<$Iit8SN!;c zD|^m(xQV2EnK#v-_&=I|fBrn39_63VgA+9RXXoGd>;FHy|Hkk?`r*Ib4_Z;_MsleM zbE&1^*fN3NFCTx_AIAUDA0m;sO!WV|g?`^3|Lwhx@I%&j-<#j?sl(ev-b()6x$#rp zKivbR=Qs37;iTHXABW+#lI9tMrbFrXq`y#kgdJFhl8i5$kx#jw~~C>qUbQ)*4YJ#ga${bjlNf& zgm&giJUOHqY7W?qtCwdd0`Ej zw@qow37krO@?Y+s;$pt|Bk4c-(; zAJQMZ-&yhV>Rd`CUL6VFi^fup8!qS2n*$Lv7bqy86woC+C7-_t)TQUI0*KC{g+M_8 zrGS`lS*vf;853RBC;lQ(mmbd$+201rt{xVC@<8bE3o8G!>tR7lds{DC<-4=1r7VJRv_{$LA`6y+3Z8gW_Sc3vSkCmsvn%dyp3Zn|Qh9WRJ>QcHN-FAi>Er7c zJ*$_H`=vwmJ$X$^$ZPXEc~zJ^oDC^4+y4E2Vaa{2249o+Wtsb{zk?=}C*2bIwPo^t z??1PIb0p+o41h!A>5Ma7PairBDY z$BrEp8#e4+zuD}wL^*$s=e+9o9?xs83-0~x%ud_cDbLI%^9>EgwP@D48H@VJ$+2Wv z3X((S-)H=k%QlppVl?Bh zGel=rWh44Xjydt0|5GJkICiutm0=6aHB(E=u%0o6!E^EQ@Fjw&kA{rHe@GctqyMx1 zDm9@4bii=w`rDx1`kU67_Q*m1rVez%*{FZx-(3Ps{pDcAtibFRpRZGae{eBOGns54 zLuxS7ZnEiST>5;VcEI-a2S@*}36ANv?meOJ7YB1D&!Srx8CFwPJ5tIf7FIS+Tu)CX zh_nFUFZ-UFktGQQvMl#t(ksXiT1!A zh#tRz@%ob|O45Q2>R0I^*P2++Eh5 zd>5`0i_!EzhDx_BiQUG_)q@Tgi?}v@&H^VdzKsLd#f9fY`DjXetIdbLzJcTn6J85+ zH?gqeT6^$qxL$l$7jmvSo^Oqus;|jbGUs`Cs)nLU~K?T-GL`!|h0S(7@|1J6tI>%jLUMMaHu zs1IB6U;2EQSh%=Sx27kaXW}Ezr8CdNhR=0!@@2b`N6Ufh$+KnCnIV3Ap?{_xXu3GF zsWh-%T?kpM-ssNM1IcqlO30T-=c~^*uJ4QPOnX9wNqzd!sC~XoECilZkp1yI^L)$_ zIJ3ulxbDm4xv*#OU2NxZ$}m8xR1kwO9H!kO?Go3E%VH_xdFlQ9y8f!5J5xVqn9~g@Qx44e!K&KY zR0UD16P~FjU(JB$L`5a}s3VzrO5E987h5*tM+4oN`%dbylM~;~)76zH~q1d>1zJ^srb%@VeS^w;+v+ix=OHPglgD=+2Zo&&N&0h&1WL@H|s~c3dY<9yzC7 zC%ihzWa*$g(>`dbYig>fYp7@ro31`sckmEhb@f5&>f}HA(?v4R6P2&AUz8}@)viwd z=nID9b>T=!Cr=%#vef9lk*YsdHl*JmrAqoBHD?}|R8pR;m84=(&y@^b%O<4S9Y!;x zoT+0Vjm($+sXl@_&-kOCaSM1T-m#HL;!gT%6@?sJ~h0PrQl|-3ctT=<|0pyP^uP<*g zbNpA57HBy67?mVFOxF)BFD4;W*v#=?NtF4fqGy<%(a0ZNUKs3G_$x_!f2#K^>Y_1t z-I)(_{8y5uJNeCO>bh}w@eeI8CLvVV%<*4IRAlA(vzVUoNTy%c zP}R^gI_FI+JX~GLoX7~z>mePyyxcr>)zs|yUJe3lRWeOc8#mf$sx#M1#blg; zk(vw7N8o8?%d_LV@TuC4HviFm#(k{WBfx=iD%(gP4x7avLWWlchNHj+fErJ_De zMSTccLqk_fT~|{_b?6Z7Aw!1^QrDCYLu$vrc-bF7+btW`Yqzw(iGu}RsboqY6rwh? zrVrRm{m1ja@$V>sx^_!-yw7DObpGnIS5@FZ!vTw-K7Xe8Kr{ZBQlssbvbFVBTg=2q zlY?56L~CaJu9x`d6_IHt^6)ywcQKc4kV;E2d>SluJEoz+6TcX0?Sg3VV51@9d+nBz zd6yhr7*q+#keR!rEU`dk&@w4Q?4Q(!8uC*gDHSCC6-XF#FnSXAMnq9pG-%L3a-kfC z(@=)RmUyVOc+yIqr6)O{;-~Dd0@7?#E#|lEu2la~{(`=@vXT&(njsP2{g0`?SVSyC z#t>9b$ZR~H#~6U>@yDdH5Dh|f>9SZg%Jc;aXb521>xw%56mjCL%}j*riRYhk`sddx zMK+yRd_XYcKcZgIeLZu>eoTqh*N#TxeRsfU>hs6JhLZ6|hE9?XGrwoXef6FH^0}v; zWy$bBjt+wv+pyRUdXh8o8F~`CJi0SuHd0&R%Wx=XNxOjlC>xW+9*vr^HGZk7Ybjd= zV~nM2S{doo=P=L<4R~QI;vg|-p_T+fUC1)hlNfUFJT>_GGC`E_Sz_oycgmP7IYdoe z`(=WuXIqkabe9y0q*cKa)Ig1hWwaJKl+*&ep0d(?86VXseVI4Y( z@07r|_T3c>qC>+5`|kw(+wZ@i1ep0hGoO%*yGXwDn1xTwBeQzRj4BMjGw(8FM~5UV z43OEu#Dw3F%mb<8`sR7kc_bZ-bRMbBrjy3xgjUk=zAQbD^l*|m)E7RJ4r<)Y%p<9h zjWirNNjQ=Y+i!fM1isbYv8W*|`QS8( z7Qg@h&y)bu-W6hwO_2`N)P;QNn^za2J;j0cRyj|5}(|P&2U1hP-m@NJyNw=#FYg^kIw4>CQST;HsG6s@* zJTmQv1vLf!ANYLBPDfi>rOSRyJ!{PdEPFkcR&$otXNg^fvI^8^2R3EX#rbtTllHrR z&kjtbi|KdiCqa)6{yYEwyyuL=rjzz{{{QLE8B?5OYqTrbedtB@E72P+(Sh$`BiX=Z zMQtl3n^x_;=oZqAOZIeNI}; z{~s#>W}Lvxi}W!67IoHDY+MB{URGXwXCCc=*_CdEd(W-BeBCIg+ViNH`mKoJGGN9D z>J#ZRrY1DMcbxF0RhMd6>Ko^j&7tF~JAR?h{_#JP-n#2f-<#fMR8(|>E!q43$NqCw5U??02fv@!Mh_}@JL^XgRrn=VnNOeczguiT$5VmveQ&?}<$RagarN`&yJc)T)Y~}@yFCG7d$KUREl_bxCA~Bp(V^nJYHa%9AV~ra< zQSxOE)2Et^l@twesNarX&Zdix8R^oB#foMQ{t^6kdHkpQ5Kgh_4E|c)t za3zI8T}BqenD5x3;;(z2iHrUM52`5X??J)$(p5``I^oqFKNVsy>bO47#9MbAfqID`wES`rR-8ig)+>(_FV-X68R~xF3y)!GkAs zbrMM4e3zVJ+F3ou!`~z`A1)((5cRodM)P~;!(YBF)rJK5^X9`(*>sA(esccP{YF$+ z%zRjqho3qhmbR;9b?!5rr{Dj-RRTY+zkbW6u>cldX{vqzJ6N1Rm#8J|1Bj@ zUq9o9`-Yf&N+v4IeiEII~LjPHB*}x|~a&XY7i_^hc^rTY5!Pd|7!HV{ryWypuT>rn5jUR zPiCowY3~icGyhEcTeqG6-u72gkFhdSwzr>WR~Ybrw!hMqmhUW}pLBWM_SXm7i=PzT zzc$$V+TVB=I?K%CL$|;6|6WnCJMABvE&7NDajiaw~X zo@ocr?o2(a&!0&2wLe->-}6R~8{f>M&nRNO{gLf2wbWc+x>&eE&!qob;}jn+I-PP% z27dE@ssxzl!~%0o_3hM$gY74+$o>n-ufq-TG z9)LPJmka;gpCLL|djGjUroO+y=ab0~+m*gfuTK8|JhcCwE7RW8P51Y8R7p))v_wOqj#?rUT0qFdkCslGM-)DEVDVEW^42Kd{CE_Q0f15HmP3&q`Fw9 z9vXh_{I?Y|Zpy>wp%ml$-f`2H>l8gms=ihK--OUf|6Tw8_AUHZTu`_EGxM*?ps%xM z%k#AH;Jejs*k_&ty|2CfWmVT+$*D6B%0oLyX`OWZB;gVnICa(v22yDE_uLZLtKV{AMC!Wzh%}iHWo&sy)nfY~h>Aazs z3HTQwJx*)H;$V8U>yFdv%wHVPpI+FXXV3?oO~e1(Uo<*%BL3W88alg0{<**Zmg~3X zVWkV{lqvnU68Jmb|7r;^<9MYQIvI-iT>Z##d_NNO&l_Kq{F40#vkr(;9abUQG3%=g zjD1LMQGGt>^K5ihjQ?|g%=504@aO*i>8?MoULE-*>($RIk4wMHgFFnCe7vkI=znrZLw z^l$v4CBWEkOX=InD!}_*aECro-##tvJ#>bddRCvmic@qrj6bHBnEGm1L%W+|ygzch zGKfU>$M@3dCx-c5WIb6rMGTqu2mk)>Vic!h-g+^4q$qt~;_rP=IrV%o?_JOV>QTXc z_lKE}6=O(gm+A7aFW@qCsJZ&*{wkROuK&5e8uX`7`RD$a_K1Ds&;2pc{#U4!qbG^i z6zPM^LzW?Hkczpqe?6oFG9FostVGJ@(f$>Y%1Axrbfg0^02zvaIT6W0dLg5cS;#`=-WD&9qc?DU6 zlwC&0qli>S>LI5i9gqRYcw|1Z7STTaK*6{(IiKw2Q3kRoIfvH-aQS&pni zzCp^bpyOd9wUCC$IY>8TI5G{n23d+ci@b;YfK(`;kY31WWEQdzxgS}9 ze28SNq{DBAR6>qGnj&qHKFC;P955cG8Xzr@PDl|l30Z*LfhA>Sb7*U<5>ky=PY&fqaN$t)s(lhg3q2K$;?Lkv_;+WFE2z zS%$oVtU=1Ir{hsXDkJrf(~%Cy0AxHeA6bk%hO9)sK*|=<@w7xLB6}f~kwcMsNMq!5 zq$Sb;>46MDMk3>p8OVI(I%F|&FY*}jJhBp5jeLRpgp}Jr=cf&_E3zL_9jS{nK$;*e zkk&{iq!1}W#vqfBImiO!M&u6UL1a1d60!>U82JX-U?ZImd1MD98#xfEg&c)6L{3G{ zLE0hRkbcN;WE?ULxdgcexdmB@Jc2xnyoS7oe1`mhY`lrij{>qYvJX-fsf`?ioQO0> za*&QlFJurh8YxC*A(tZyktN9e$P>s41;~xa9ms>oa^xjs74k9i4YI*jIv?`L4oEg~AW{oC3TcR(ikySA zL%JdTkm1NUWEye_at(3|vJ`m)c@}vMc@Oyv`2pFun9h#^vNN&|QWdF<9D|&QG)Hof zjz}+L5HcDmMrI+GBMXrw$o$j6o(LbC3ndjmRCygUE8^C1e%yG4c(v!45hf^2iQIHgX_R3pomDh@6U?gS11s zA^niy$T(ygatU$`atpE)c?5YDc@23F`3(61*?1?N9|dG*WFMp|QX4r2IT2}&U9Qeunxp>gER|>0~L= z6!k%^fqEorW7OuTZBVlggO&-0qP>udr%)oeF^m))X!0WMlFAczTb*8S$$D!pdN+V z81)R)HmKcD2cVvhIvMp6)ay`hM|}wOS=5!NAEADWx^WquzBV*jJx~uqt&Q3M^%T@| zQ9Gg*q7Fm72z3_f0@RyP??HV6^(EAIQ9nn`I!vceo+hgk>b|HoQIA4B0rd>jwy51u z2cn*jItBF-)ay}iM_q>cEb1GmAEADSy73XZKDMPP>VaArwKnRpsHdQ|MD2*$8+91! zc+^>_SEAmGdN1k|s4t_wi~0p>)=@frEoh25q3(xT6E&cofZ77JEoyhvfv96pr=VVn zdOhkLsLN2FLwy7FW7O|ZH#tV%@3u5qY}CrAbx@B*Jr%Vj>UpTWQHP_BN1cs&CF(7x z_o6TuKvsIyV8LcIm`KGY{sUqO8j z^-I(;C+YOHq$%o*xcgndqrQpy3F`N# zWy>Y$)N4jlq(HN@15H*pbnlJs1JGR!-G`$42y`EV?uO_-8Qsm$eKxvt(cJ;vUC`YN z-Tlx#1l^<1eIdFhqI*WU-XHg8YO|=1OhXw78%qAOSPhWU{YCVNKc1(*2jV~2ceDqi zIEF+xd@X;n`eS*>Nn)f+gT-n{_9s%u)bAD2E_xDo>G!cWka(5u%Y4^U;sJfr$JGBk z>ES>4h$#<6Ok?eSx83v!=I(s!y^i9AbO|c_gY)`3X+N(7nEja+7zI6*zf)Gn__WgfoF0GwDrxO1G>W%AI_q>1`@WuZe|~jT4uA zVGMr0mENY5KTNMOIb@z|rhtFk?@u)7MJK85lb%MO{)hgruYOjRew|=jo|`NAooBuu zenk&cAN0QV_Lmj&zEd%mzTc&#^rb)Yerx_oYA&z1rO_}s1l&$*DP=Sf!K{){=lzL+ zpq|Ov_w24ev@Mx%b4|1#ym8kWZyw|eceR=q4bS(1+&fic`&D|wle_Jz?0b8Iw@S|* zFPwx>RQ0szL#Y5-?ov-5s3?G2`)3S~@$>@IF6Zv+o%aOyTOFQz>U+Yy)=TepDDi-9 zGkR}7t?2jwSoQIlQyFi~-1|9e}ox$l;gQB%|&hY3$_Tv#xouKfL zf$=6^Cs_Ob&=@Z{C$L=HDrLjsc@X0TE7&j(29)=I*5|$>M2wN`Iwsi>ZWL9HwHoaR z??-MhNq)iy`Ce1cs4nNjrLK2}-mv6DpRu+U2fFYfM?OwGZi!s{FCo=5Cqlwi$NzvcF@{FyNPOsG8^ zjU19ZmTM2zOV?bVIME&g#lxL?4Yr4N>o;y0(A^&TziqwSx`jQwp2=HY^vMnml@u>* zTw@32R#Zvafte<2y8A6VXlwLBGv>A(q;`=PSlp0m*5{;wQ(oD@W0D%hCiXBRZPx{b zuF`m}mM3KgncBm;s9e?Ea$$7c7RbQw7BmNJHU%&TcKkMK0LA;2c1p$uyoYnZbK9JkokE=H=Wab zFw|V_UEIwPUfO;-HH_~F{Aq$kPU{?@LuA?g2X7sr(UShWsrvK4?SV^9b^JWoJ+}XZ zwXf&FyC-|*r4Dt1Q4p)p-Ps9z@AuP?TjK<)9w!_(d+r47wJ$b)tmh2x*U5d_Ds~3f z?BMMWFE~S-#e&H)>Mk%~bnxQwu`ads#j=h4*s}(%aJBidW@AfSVO^-=y-OY4V34E& zx`AEkOyiV9H@G#86>DGa2HihpteMiv9o}VapQ|>>9TfZCQ+pBZ4#~xF?gtLIgPO}y znH`NhpsaUs!p5;4z^*A}?Tzw)>@fQ=iTgdkw^#IYw+5aN*C=9i`Z!OBJlJ-0R+J|U zeruQ6<%}ovZhx>tXjd<|_|WiWwv`t|_Q;ytZM7Gi9VgI@f9VCsn#k%V4i!My^+?6_ zz5?)ge><`LJ^`3yG#>k$C4^;mt%@4x3!#%)r2DXFA-MNkR5|X55bKRM^eD;O#WV2+ z=NrB&E7H87Not(V$qH|*pFW^eY%wK_?*rEsT~^Co;{!wIROPID>;rC%gLkK?_(FH5 z4VUecePPAOzIXR`_k%SfLJFs?@q?#Nn_l$o;tx0U3_GZY_`~B3FBUhi_Q(4b0O#Xw zb`^L9z%W)9g`VpIApAu;9fK< zA8I+!JrKr^G*~)3IuQ1kS69g&2!yan+2ap<4usT?C1!?(X2c zAiTdpprUu#@qDLXD9`8-%%2hrr&-q;G>r*{$w}b`mktI);w_W=oR7gUH~L%;uA&I$ zKc0EPK}Ur5Uj#B8-oDg#62a1umWEMLBG}$9e@NqO5sX&O)akQX1Ra&nHQI4Z1fo`! z+ly|9U~%>t^R{IcW z^~k2t?iL}yo3^e-wPOh64|Vt0tserXPM&?xAtVHB?=(m~lo0|$*S2f0ZGQ+{)eG@{ zc0U9jPATpl@gM{m%JncVstSRvzPIw#pM-$?T9Xr|S3BRJzclGBl%30oBo*{3KM$Uz4DC>1!dK^ zBa_aCLe7?PvbQQj!T;sca__C7V6=0E$E9hZKsup}d(T6l&BP&_QW}K9!;TLlofm|H z#&NIpiSI(;YI@U1&lX|uV3nRq<5ppC-yn3Q-T6>Z@I88N(WFqgq^n(#sTc}N7rhnf z*@wc@u;(jnlBMwr%$q;dNC<^(%g)6Y9|{FsIN)A+E)<@08`5w8oKP^>HDTohQl6$m zZ#R455d!DrK2F@}A}z<|N~s6cc7#HBMo+VL>q8-X=ip1LNO=S%2Ru|Y4TUC6{M+h# zgaT78ql1QeTulmv$A$Bc%^~@vYFnXOD8TJB<;SF)_Ee2a*c=%O!S8k5PDF>o%J(c% zMM7bJ^&)k7i%_6?!5#*oFt9<^wFB=-z1U^r^Uyv7@;(~2?qn{lM-z@*z5B)?1Tqsw zKkhX#1Q;zkm(V+#)U&qRD&;=~g@Aj4e@Tf=2)sKh2;K_hfqM$dkb^{noO~{cI654rO)H z6^g(p=fQiocoB@{?aMf_LSIaggTdt7$c@_^gJ4U$_*YQs2anSG$~Zduf|vd@ z;k(g+kXx3RKd)af#7;1~bhC3XNN(5ZAb=UOH|%~G1c@;RFI~SF1mZq&GxQb*!Sk{n z@*`dcL4~~A=q<{@aAEm|ogH2T!OY4*B`-6Apj*R@7q&wXu-4fg8pjR-)y|sTm$eCk z8-2B3hExUCQjWcOe&YK;*!0kd(MR?Sr;++>QsrecP2UgO&zD;wQ^ytug{(WLmo(x$%Lp{?Vh9Dp4Sg zp8}!7yyCKva|0o&G(j(HQXpMDH3NZE-e04Tpymb)Do0B4o@q@Noe0QvL1Mg3I*;I2p5;+BH~AY+4r z?(j|l(7?KlYE|n1xC8muceMa__>UHls?t@KzAv|p7{GK|#Fn7M*%T~R7aa`pK zJ=Yv;bN-+Y1U}g3x76GR3Kq0GviE{FIJW<|IK96&9E`enbjukbROHNTleb(5Lk!w~ zl6MtCK5L4)O*0|rFH#)2wOjyk)n4oeD+SQY#iVaTJpl-YzdsW8!V5;c?yjoy*b7Qi zW~|$K+zZ^AmclY)FIZ-x*Ot4_6FM&yOdm4Z3tByGHQP^108cabk{&?--ix=H^i~nT z_8O{T71X--9PVnfskZrtU!jv^O7EQ1DIw8a`>Sj(?Pndrs?64YdHY!v_xW z&l7+`pC?_9m!Y5_cni#>Pevj7bC zzW&tskpN_t%Xck5EseKpa%RD@Z337e!~fiHjR2T%RNs|{jcXE@SmkjSygz$;?x{AA42t&PJ?4Gkg2-WwBJ6}u|0^?p{B;R0A zln{8g_H@`DD1?uiioM%J2w~1BvABDrbewqNpz*OyVj*k~pemFQ_V?^!*fCQGq1vtb zt7i)#dGn;F#Rby(#Q3|RKR;zejt~l{X-%pS7F?woOsQ5my?=OVq7a%i@6Z2~CWMD3 z-Z?%egfQ*yl&8Vtz2I4)>AVbYC+Pj!OK`|~9z5G}dfuiD9<}w=b$j`o6$#S(_;6Sx zN+DD#tUCKJL_FQkz=uTmt0Lidl`M|lb%`^B!Oo9%@#yZNT_6MP|z zkMn9g&Qb_5R5LV3>drhbOt~}j+I`#S?Dw`N_hoQ?%uO?4Z9U$0Yf{hx6KQ>Ze{5#1 z$3$s8xaKXt=%ca_n0hc!r~j++Q9@w+W$n4HW;a24JvFKyZL)bncs{G?)xPf1`p5WR zp8i-c)k=DvsYgt?GkX8y;gN@er1eZW_qMN_H>nS+tnLT+2w_A1mB6?~LQp6)f0Pj~ z1m?an^@8f{uB{eA>sv$CSFaI5AC8x=XR#3EMl~K}vRPUWnflDsH>RF4dXBsMbeAR4 z`o`!T>yJbn*)4>dLI;c35+U?fN#5E!O9)K;wKEcB%-SNv`LYlKlmqXDz7xW$evwtS zH-$jYn}x9EliWU0UvGH3yZ6B9!@S|ln}`|W5#DfQn)#WR2HtQ-K&8kV+TTp@@zwQ) z;Vac93?JeRV?#zI^f&T`paY#%JtliY=H2Lk)T!Pe7HF3kdwYYTzuGQ`Mcz<6;(V;U z2brI(%OF0yp(opFOrt1ocq-aBV1|!3%+#3EjpgnQ9Su!CD0+H>?Fi$(BNltZiK!d2 z!cTic*lV+GrfzSw5F(6f*RYQtbbhJ+2j}H4=N|awr>*pgYVqkoMBG>kg`$U zea!-YC?8OEa@;y%ha0zPV_=y-GI=s31jfV_DCjIY|BRAL(da}E{Xyjc(cU0TP6 zO*j+)58SUiW)}y*jr8(98}b8yYIV=A2!QEk4(ycU0pLIRcF~He0GLpyo%Qxy0L0qy z-p6m1jvJS?zi#@*Njfgwd@!%=m?nX6Y|EMR(VPGnx8cfZN5cTL`vicwWI`SY?Hau^ z$mtUZi;b*}w!II4Ho3$1e0mT7mllq?)38Axm;`KIsy#jsj$8@oU1BdKZ7&Lh%cb24 zrgaa5jAl;_cZ>)G;mX$U()|MAp2m^EYEgkOzn|&;UXfD!M5f#NW3vS$U1Nr?n3)#{ zF*DU7J(fuA6fF)$8!YBY!wD(+EOUNUAXGlH7_3$J>OZM|=U7G|!>XFN>O_~S6E4d;1tCWHuO+6#|k$w>D z9@uf<=UG9(>5*OXY-SKFkz0BB;*21)j|Kr5WOiB@5CkK3?VMMhDz%$vO>|xvwj&5+ z*OtbgTN?!953lx=FAD<04>3dLR0YBP8ij+CZv}x~j4r8R!Ehs}v|&TJU{G%Hp&;^O z5IitHY4oH^Fc>E*`A^UZ2D7{lVNv{Ga5U9w#YqT;rAZ2FR;32RuCQEfQIPaJG5TC> zyg3-IxyQs+Jqw1Ovs2a|tqF#AoK9UzE(U|7nY$1S`R`7s8J7pc$UxaoHP3@#+0}bC zqsV;m;5^H7Gs%3eX|z#s{CE*i*1X(lBDmBgfU9Xn=A-#qnTNO{=%#INz;_ivvU2~$ zFCs+XE1B?!;K2b?lcLpRzS!@YOiq!gc7A#{R_RfTT_Wf^lCrFj@J#~QzIR2iZxA&z z71i2p))ef~lJ5}$+|H4Uq6dUPpX`u?)FC0TqsLaOQ8Pn;8Wo;*3qgBf2(){+`^2Qo z5D1ZTzx^;f1XeV7?E9%G1cDkUjY~Ne0u^U{r+>H}0?{oxn4JC)0+Pq4YbY!kF#Kbl zYA8hNu5mj$J`^@MQzOJs;4Xh;HIp9-dGiZz+$Z*omKXI(DvCm(r+IKVx0GD>#DzEi zL?|@2uX(-TVklg(8@Rvs(@?ZWhJoO|mH0@zFu0{%l&qkub9Ci3>lD0o*qbb9RbDA+dS{uTq(Xy6T*OOhB3ckq;ymbPUKy^oB{L>l6COdDo7Awir_lp8yJ$_j%yv zC4lH+on(2I06yP2Fn_(!3k+9=_kZ!u6XJ7vMMYLXt=`2r&%iOA{Tf)oN75;px4R>@!^%uK!uvn+ZpU~4=J78;RMBvsT4Z_ z)vH`7nFl$2<`Pr2be-g+W5~#UQypPs|DCP@kNBXmMWHG$oDVA1iC4I7`Os1=+Hlf# z2hflhSRKIr++D{(uk4|bM)_v7JbUQS-d*>wxjiiD_bwo*wLRpO4uAWi!Vab#8%=7A z9cZ;4I%4NkJ1Fh7J1Dw^9V|WW?$Y)#4=C$W&2AnXeD6*y;5^8cd1-exfCoknN4K?` z!Grgnr{bR~@nEmo%je5`@nGger%~%#@Sx$QF$s_F+JeQMwIwaj*}|GmovKv#+5%a0 zN_eo`7W&;7(|ylETR6Dn{zF?gTb%dWLMOKr@$EjgFiO^J>5PW9kT|ULn0Jj0jLb>t zQGCP(B-6JP8%S56o)jC{m9H^tyqOKGdeQcTi;4}%9be}^sErNu-Z4^6=B+i%&X`T6 z@YZm2huMY28P;g`vxcQ}I`6JAwuWYxs%nh-Tf-*3?fNk?){q;Yy>-JyF0PMp;XXCZ zOX1@E=fZ#y4#KOmxgdYHvz@~TE-Y;*E_ChBg*QV#UR>0U3+AoTq9(rOK+#>zAx*Dw zp#1!vJ=gYgpbPJ#oplKZR$ehsIlh*I?I8y~wW0><9JHr#U>JEChArm6fum=(ElJ{_ zosR=8k90$fx)w2f&xO+Z|nl$D>@L;OuSOHm-EG%1Z1^HAnv&jmm(e{N1D@ZlhzuA3) z73l5kG{mZ}6;$`GiOT(K39X9PrM13h3G02$>^GNM!qtuXANHkKLi{eHGkFe{ux4$A zm2k2p9LlnPIAN$I_N$g?Kbwp8vAJ+u(3!t-$6T-#Cu}NQF&EdB=0eAu)R=|7b738+ zMM<`EVT7hRS=y3ns@2z+GZ#u_U9KLVHWvmj?AOtTGZ*Ob&0L_z57KZ%A#Au8(_f?RV7LXg_%GQe&#%rKBk_ob?Wgf zWwjM(z%VV|3M=UG^1>kHVk@vQSW>?6u@yYsem|w#O{wlc6_Wx7NG0etRh|PDT~B;) zY{`KZ)H1Uo2O8eDK4aXI1I4rYs~#G}!F6#C%nFSaH5<=?n4UW6#bz9E(Oe~e%Y_5V zl8V4VJ2(gJ>eAy@U(T<{Hn{jN?LO+XvI%=5S#F znFU_lz=e&MKJ2b8;{sWs?KrC0*utvsMf8iKw zIBcFet%0?5ZT-vaM$K@oAy{H4w}$hF^oeQ18lHDecrvxxy0*T4>L2_%uCooUzuLf( z%}Yp+Vgtk|e)Y~m8^{z=D@isWF>9W)scr8Sj@q>}Qn3Zev~0F5ENMCD%CiJp*s{xz z^ftfUH@VWvQF67-P~YOI0Ra_o^5s}3Xb;bl?VzY7 zdbw#(I+|LcONG@(sfEQsve?2@2`^iKg zlhxTr-ipClX7S4!o){#<<2e29f@PF^P_yT`)p6U&NMJzM}$F0Yy#abAG) z^BCwWySn5dm})yZ6zlHYTgf1GYN=*&L2KnZ?TPl+hi2bW?}@| z(IcSkKm?qavYO+`7|O1(Dc~L_*J5gUD8yNZh{? z1@_eT1oJ2;q|9+CQ6Mq9osWW&eo7^>98MKAK@sIVc9$k_kx+kj+b% zLzl(C#+Kt}+UPB3xl+>G>0vMD;3nn zjYY7l!;5Q*4dUVG1s++6i-+?!sSPCY@Z^)v`dR7mAfCB%-=p$)sA=c1ET>TdI2S11 zbsducvFc;DX$2*~47t@C!Z#;C^MR{^mOW2^=$)peLUl3he1B`FBY9pnP-gQiF_?1) zmo~a6h8|(u z416hIxMx~fvR?`$-n`Xzqp!#^h+ktP>Amw;h%HjrH&$LbP(Mt!vYYV9zGLXum z3|r~Y+0=F1@fqnr+XK@ftV0|1k{#)=bK&v0>DSYth4zHQ9&Iw9%F%YltZ^A|VfTZ< z_JJ8N_&`_LZfi5ZZjy3M`>PpHZj)qh*)kK%vm8~9jmd;d-FMy?<&lZ&ikUFLR}d$2 zF%z`HZBj-y&4Ptz6wKZX&VsaSpXO-UW$9<4%Yi#y)XXIZCQePaZW)>biKO?B-@z{lLMCyS1S1ma-eca;{ncbuRJk_*~%0v@I44%Z0ON##gq2TxdWqG=rp=*X6?W8KaIqugrn>3B5Ge+|0&t zeKtJnN9|0@26a)*VuJ}ekYxI9Oqp*k?4ll5>s+8#J;5?q_u%@= z^i4UC(%Y7OQZ*Oo@nJ5^_C5T$>Io@lVhx&-odd^$uHHY#=*$_dj3yE*C zpi;T-Q6r^n2;f~?^}sY67Apq?t|j?UrnUui%ZAK_$!Yd|vvIvY8y=Nx?WHj~8x{sw zK0Vtz8>UPq#;y-p@cNjTHH16|He@s!KOqaqWQuGN%Y-8<4sDUw&IBV#z?o3Qa$Y^t zJ_{t>ZblX?yEvj{*xO9ly#EN9(PY3g%gvfMQZvBw@~-h8UuMAMxo?$EhGoJv-Os{{ z>odWt$%erZCo-XB-u2h6mRT^M*S>+*%CdlSTqab{+^0sT7XR}QGk zzM+o(V3@d;3qL~q`_L#{P#MI(joR`i-|7n z(!uCrFaEH1X%K1N-(Kl)8j#HfGbhNT!>SB6vG}J0H7a~T+FQfr`YY~UO#`a|M->j0 zq=CbUcS$xI)6l+^2Gnk}r`e=kZgPKsM|2w0ET1im4o-s;ig#q4J<>pJh3x)5bJF0Y znh`HXCk^5n80?81kOm4pDxO-g)A0Et?LEJ9yWmzqvmZH1BqLFJ71m zLlLOS>K;{nF>d*LN;Wfn`Pm?!6MHK;J^0CMUyFfcwr; z-)&9`obEdFEl)iKM(RoEp3dPo{HDWk64yfLy#3M|Z6FJ5#t8Rl=8xZ7YyGLE~G zVZBdvLgTH;VCqb@Sjn(J>uJlH{A37TZn;%1HW^&5Fa6{fkqlFI4k67-_Xd!|WXXOeng|D8mrQ0SWKJ}nVqa}Vx(+aeJx z!*;!Rbytl0ti{l^iKU9SofvfKjvt)6NA3C0UJN;NcfI89On~7-8$2x`;}0EC(DmKE z39$Q|E?J^WfMLUy_g8)z4<*m{du|cMgQ8?(c0Agx6X5Dxd;L%836MH`@E*5y2{2@! z+r}1G5`b*BNFGhbG3Q+*3;A%m>~8zXBgL@nmr>T`x@b%T5 zk<>;ERce$4F#*V;Xvfnx5};yhVswp~7~hA}7Jf7a%T!DoQr zu=Y5jAKW08X)(mMwR)sIKH5h814s|kS%v&2sx2I=^RN1y)RD; z&(0JN+fBk*uzVBQ!6b%EU1|g*hP!1))WS5xaFevA3;T=V)tu%1_H+>gyTyuQ$A^ib zrDTCv3_E$oVyg0#^%eiecdD`+iFv zh=J-QPLgrpS%cg~n&f=*Gp{>`-Xi&x?0*!a{a*|XH#psiKTGbvWM3mm-E*Nh@s8P(8-?9NIoh~X`g)} zjo;KGYLe|8F^Fd;x=g4N1EU9{LUh7;jaF4V+b>#1?kKZPS20;t^j4l>Klj@}L z!$>(NC>5=Fe@G0uIuEAB9hTmYBApY?dv}VV!uX!*{7qsYi^sEy*NCCtq7}EBtP_J) z-nCfLWPqMzpdbdLygkcLkop}?ZT}XFfo$&U-Y!WDSHcwH)yVy(Mr)(iO2Zkmp}m&M z22vj-`(VT%oL{{*gt#;Q9vL4s+_^&PpV|#DgT&Wl>*k2N%fz@&K*~d62O-Z%k}a8% ziQy8X8CJMr>v>3Mqnh?FC> zJbG0OOgTS%*JwMJ+!sdE`*=xx*}HUMZ*qTj#%bF&yicABi9JRPe#?~gyOMfq^W;Fs zM^DAjxns+4TbV?dBH6&62tjd+I@rr6!o3$ex-@T=2u(6hZoB-FlwU>BR5?<=hI`}> zRwwnaAkNJAB&nB-ruPApau2(FY439}Y%^16IQP969&`4Ol4+L+##>6V+9)K#mfTn} zLnd~IEuwP2H>BRQrYvQNkdsbLpb|mtU9;1%V-w+H{w4BejC5Z0sag7H!X_(k(zKF%Pu~|bc}*fr()8%?swfebr0tNg+m#4%l8II#EI(Cc zEl=Dx-|W&XcWok&MO-o4$?1X-~I_Z1U=&eKMyt{R&J#5f@6AxeTZcXWDP zUzP-tZSI9hkZeQsL`i5@NUH6hB;DD|Bsevfda)u2?zQz5dmSh9&9;vQ=6^_nX>&`D z%6CbI2WvW1*z`(NQP&WnWHEf$jce!ut(Y-`{%VML%?K6e`&4M|57qYmI+@bgJjvI zO$rPlZ>cEuNCC-fD4kQlY^_}#oYHX;DMYfNA{D67$>xYuc-U@rW3Edo?i)%4 zabHj6C#zCnXu~=2Do0a6BXzp-usx|@aU*3>e*XWX>n)?&+P?4ay1To(QlZ|?y1P;; z6!!w9SdcglrNupgQg^*|cXy+u?(W|I+B^H?JmdQt&wX(-l9b5Fk+s*F^D|RX?AXa= zeN$3VYC}gS-Of~;y-<0=trw{{VPA$uHK}OIYy+24QE&d3k8|lhHEWlmUK;fCY7Knf zEe#p-zRhgaCJn8d?x~nmD-8{fmi7N#Hx0CSq>f!0mc3e$bYpB9zCAhXuOF0#SF`#x z&1szmwz?^roQ7%V>yi>G4JXkfvg+$JOtw^54t7n$+97Fo_7$e$)YCOV@h4N^$=Z93 z(r{|sy$Aj-R0r>yG{dM)!{sSeoN6ve10R1+O@pp7J0R1{{mNeJR(GnfN3MG-j%@8$ zA|nkIxUeP-IqetEw@*#O;<<6J$5MZy{rM@QPFzbv!+i}5J+G$W^Wp4@E%&A2N0)*w z^-rXMMCy~HUZvs2WVfz)Z_>bjo*QXm?wN+)kJ}Bdbv6yDjUP7M@i`5RTHb1TwNg5| z@j+lZ9?&W~p6c`Ly(dfkZjcV%zUxVkS4>>3nIiW+Sl4i-eL8kAn-M)8^^OVP)4_Lx zQR#?ov3#MkO*%F;YF;wPKOM^gsyMESPDjOei>enzrK9znc@xV=Qh#Mf=hGgv{xJF2 z(($l4s}$3b_qJrh?W5^v$CihM^15Zl-IkeapQfXusldbX>4$47{-h(F+zH(qXP9q? z9nYs{G7$bSzW0yL8A$YI#-j{os%yAwVFvhEFd+jydE+PppC8PoNrn9Qkn7XdZrqT8 z+@7Cg$pu0J17ML)WohC{>&8~8{}RG7QHI&A5;L*2thKuN+Due1YP&qRmI0G3x)+aU$za7N%Z4LJp-Y&_%p^gCAKau_t4Iqh+?x&u61V&NlDa`fPloDOvS` zY%zDwM!V4-0aY(%qgJp>(~jS>k-+R%^>WaHTr!)-&R|6Y`-us1Om%yl_!Z7wcts^_kvTL#rV1V8DpTX@17_hI&_~<2*4B|L5pu9<74Qj?Tan3Mc za=j$ip1TaFwC>S&<7ESWgdcW(b>AR-8U`HEI^Eb;+lU@qs9?kiS}j{mGm8Dy2wzq% zYmD$H7k}oz)kgf))F5jA-ODi3;_m(M1Q$OD(zS?9r2Kj-1a zF8zk#hCDEJUW0vk=$ra*&6an02*`buf2@8!PJ9?ft^IrqXY!S4`EZz5II?75J}g@? zr&_+~`{hHy+AdX=i+=EOoMG~+`OD!ucJTPa`sFBgnwFKvmxG$rRu798;4`_0F83(F z!&&PdwD^{U2rt{afdNVI`gDAZ?Y%@8{x#X_?@H^k&Lx<17k4IiJ71)ubwka{Q{UI3 z`t<1ldz&pwVN|`L3S}u8r4_c@ay}%n;F+xDh1I~aR|)(l%19*jLB*@g@T6`RA|M+D<~iC~iG1)F`Ohnj}{ z4SufxiN3B`9aiAmX(p6WU=cUaDA33zm?YZ@OdFW4{5(N{z)Q0doH{A6J3{yFPh|ym zO)u!Y;X@GonY{W&5C)JMv~XJxPL*Z?xF9TO!8(gUNb7N@_Rj@DU~Z$r(LqqG-7w6u zbr6CAFQ}iC3lj5*K>V&-u7tz$Kydl`by@$Mwci^p^ z2s3GwQ^P(8b+|Ah2%pX{A-@7#M(CqJh0(v7E?BR?>7(n(!K}av`|~}%wwCq6lHazd zUI~@`g)p<8@d>&2Z;U1%<=v+5W^~k|ci)i9QKhtK)&7O8i=PI?^A;ShwN4G@PMU3@ zMtlFBRle*|VIxiXdOcQ(zI+&FawA0;=wP2-M;{8C1vA@S{u6>vk60roMELDVms|7d z`_AiReRGFiOfesfyF*@&H-1u}e}jmh^KL3IpJM&Ug`F&$1rdYr0tw3j5%|7g< zz_DeEzV#g>>&aK=Kcb100_7hL$U3-Kfw*nc@5Ot|zBB1}llJeot>Z5BTcg0i*Es_^ zT_v44uYVL6eqcw~&kG8(&V0njH_r76hSu`@ik7Ni>{}OAdVgLp;s>(^XfW0$mp^dzLNKJ`dBnIT zlg?C?&kv^leh4}&S*RN^B1H7zLy&xP`@Xx&Lg3`_+(~H&f%cFkIgw;Nclnm(=C3vzK+t*9NmrTbR&$kv~%CkxjmSB_59*SaE2O5{ugnn=!sXi4D1b zw>~|g1XJ(TB+f-3Ob~Q$Zih z1|}-hn(a=Ob+y@t+Ot-`-cw$5y{Or``O+O~QNO57HkmpajC~*8vjh2h--NP(wFaZO zAxR6qOueSXCB^sdQ*=65lUpxkJOqSnhCGL;1eEsd{ z8vK4ZHF?K>8&IzAyMK>#o6UaX^|d|YeKTphoa%k2Ff9!KnlnLH2*z@QKlu@6>+CwZ zC@?d0!wx%T5Dt4Xl0YDaaKlgly0bCozyRD)Atq$UC$z+|M5ZedV_0JvJbf2!O{m8%d^7W8)df_-Hux3jh=hn zt{*+#8$YT|kDFiF8zjP?r%&?2TrSA=!up!2k7`FQgb%YJS6hf($9@-HOp)R{%Mo2xdAZ_XVx2B)H@U*!J-yP2Pp-m0>n40PZn$%&^Qq!{+=MUJ9SilF8jQ1Y zH*;7_b%eV(&v+oF2b+X>h`PoTBW~!4h~X)G$}-=>y{#!e1sgKa(`=HJ5sqpHs z2zB^?aS@6&F{0YD2c=f{f~~?=fA&SLUtCJbfs5gC zdLnss7o$B@iJKlShUI_jI}hmUhv~k%4o!~mGaoM{vBvg5TYtRRe#nl1H9>{V5P%EBYVVF(OFlCuDyV znf*6U=%B#RHud{f3|63GFjM#`FgtJS*%q~eLFUPn4GV(BTsIh*k4KRcMD};H>DqCZ zP?+?pp$LE4k1lax<~r7-Q&kF`rtJ5~oRPbB{Y@p#-`$Y9qMYovZyj)RxKkGu9>tv{ z#hMDYo@eDg>_g|>?cMwjk5hq~Wpz8csqneCv08EBaoilu6rbedFYmlF8@3G~BQEdvup> zKRER6L41myL~qzqm3R>~IgP;tTmYvX|?v3x`zh2OS#L?7|(}7JJ@}R>hziFr4TkEiR z=ySukK01*3!?zmwGfI&gdWM4zbNLRS1HWwFC5{F^Uu(_&jpFxjZhh8W){U8b;_^B# ze(CG#Zs9ugvg$MD(+M38|E}GARvA6!Hoe|(`(Yg>KPWe~y}u5-zj>eXS*b&|%dF;4 z+UkXlUyln0qf!&2N4G5w@lWQ_Ivx0>_xD$!6{-&Epp!{ehvo92E-OV@K=&_zCOLgt^h?#QZ_OI!BaLmnY zJ-QbC+;nf1Ud(;7iYGI%Ac3H*pumdH!d-%MCD$z-I(32P=_Xk+1u}Q(cvg{$Nd`WuzCX9 zGjupMprh-t-a2&R11KFxyqffx*5SwLQ`MfXL#tp$EYU$Tt?B4{eRWvsF!P;ve;ur* z&93D?MZPuZICTgNu2$kB?LQ7@KKj-FEBk>=a}zCI2H3jq_^83H#Dh;84bbB6n=Lfq z(4tMlsylAJ(F%Q<*34Nk%|nTo!Z}IAJz1mpk=;fM|4B{ixJ}R^dkh-{Xu+sD7td;O zxq)_KxyCwlJvgYJ-xDpqH+=Kog8pb?>!Ui=yr;&)CuNGvDcEyH~x* zzqIL(Lo9J&$gD#m}ZfwQ)3& z%`}+JWIAuvD9vmEjWxp0L-io36ZTu@5i@8fx6r5S3h&I=^VKRsVQYFixCxWepJz0`PVRq%OySGCZ6tHIRk zO)IL!byI~GtS$6ag^#IqzKnURLJ=FcK2!-kIdNOMS^2CXZj!`xv7J7(tszQ2pG$Rj zx9tU0J}QVOGriuNa*L?%(x)>m@l{}yrA*X;Zzd6z=rc+A_c*wIkTd1FgT*iaO) zsq&IgFnUyVuTap*dfS@Tp%`2+Hfdjh?Asm93#MS~80Gcfl0pS8m1N3LdEKn4b}GUC zRS-rvb@2{b7ld@D-8aUB24OB2k_JKQXGr~vrI`=PgoFhOoq7NW=0s9jnHwhgy-j+~ zKrsgi#5gvV?;eCsJGW6q6$lz0l7J}?WP+!`SCH9nJ@4Vkl1oP@%zka@^VIlNYI1C+ zAk60m${;NFSyiN8FZ;YrbvE^Pc%4a)FOM)@I~9bG;Y>LYgdxsMVMFg@dnfN~8M*GU zdgMW+Z4f36V#JLg{MVd0N9lWaXOo*CO!jFMxV=#BvpltC%C#VL=MByvw5|TYrc_)I ze%$zY`pb?WOkwh?A3<2i7qkl8R~Oe+Z7uf!q`rdGpOU_>^mr0GJ=RnprA>k1&Nv0= zkF7rj%Ka^4H|8W%;NO7C^;(6>k4t@m1^hxI_s43nG3#;#q~|5hjnqeZ%rF%x3bg4R zz0NX8_O;Kv-s{+-JOvKyI-n@rsQ_=wZdD*Jbqf823e;*=!D;*<;y?b$tlM_K0{xz? z>{Dg0{Jhl1kly!y?@O=4?Fio#U}pvIrvcc?+Wm*Th5yT2%wzq{+d=w1CO)77X$OWr zJ#A1x`X0Oun4!Rah6Bn}K)Nq|Z|UD{+i+=-AwnT^|HS_h+x36@GSc>!c$bT4+O{i7 z?$?ZC@{2_ZH0+eM{D(dLF6Fz-yt;t60qiiEt$?<0L|Wcl`SC9Pzt(l1rojL9iK?^Z z>SP64T{_b)WsZC+y`J>?((9GmIFAT!3P^n~>G2_4X!L)12Crh@#f+PwfPu9;Y!s*w z;n8fKhXQM^A0~p4+&7f?N7D9@zOS@hq}x8~7uyzUX}bw-(*JH}Y5Rv{UrjB@mVbw0 z-mh=@rpx`wCv;ZK*`h%4{4<$Hwkym$EvditWb1&cZ_g{h?chanzpLBOz->N9<-VY_ z|NZZNnK0pF%dle#gkIb_`^zqQJtOr+mol5n1G%p(z3zM3TDKp{+y-jm(BvW*SZ~s|sq-(>ki&thtSngArHx z?(3>a!RT9g3YkEH5yCIT!FaTy3@KfLafzrmDW`)m?1{~pjyHnArf?_E2V+Lp16Lf5 z%YEJSu&BUSzk{J9b-rWw5G1npqjiYTfw_YA;K3->$|uuVLiIhb%^^SLc!bzTS7v?ZM~_X!XFtb z^zETA`5;3PQ23r4ZlPGYAtdG5A^G|y@yZC6M}X5X;mZs|g}}H zmIE4OZo&KCd8Pj7!_0juHceYpAYYdyj+(=(`iHxn2{ZEvOgd^M8h#D7%kH2wbKAI` zvZ)eni0XFBS_$7T_KCkEl}Kmu8?6#2$qn7eUkQTeP3aP+1ak?zx~l}iy>2ZorNXmE zw`sDc1asY1e;}`GrTRqT+L`>B#E*1xzSO_AyuS74U;`BnQ`Nc^#G~u;X>H%ZD(wGJ znI?rQw7r{hvb3{G`1n)^;Dw3`OUMPV!A2!?nJVxx4fXF#yj&G3zAZbzLM8JKGS5^d zbO81D{=Oa+eUkWlp=*tJwDnvi?AcvRA%(>+4gobLwG+?Aj;!C=@5GqZLhzBk0 z#MXwC%{nq4XtZFQ7*eiL@SuJ%u5u1DQJCS6-R zP_9qi4s54Rto--?7`A7Y%twsd`l8%@CpF^8EtxP@u5%e3VHwrGXYJ3OY!*P=g}m3D zpM=QwB`zX0)iWQ`=QQzOsZT&uwNn6MvHb=T!;@@h14@;{p9C&kDovm z5Vi2h%60qj7>{SaR?FPZ!ph835ol8ZZ0E~XfTXi z@JXFDxPOZoWMp1tq2cSC{!@q>F_#g8s9(WkWeytfvX}Uu5}%Tw5m&St;!-kfO{NCM zy-V`@QoqBbZ`2@ba-?e5Dh>AE`}1M`b`A9Biq&;Eqd|U)iEVGaB+e!ulxgst;f!u* zz}p#DPt!|7L43XTg%F zBquFu4Vps;PA!~>CVeqQi?JbZOa0oY#p&Ajp0wDnh155B^ta^|;}tEcFig@-ElAu& zjWp`hKg*B(ub2*d$c=WZrA~10boe={Xt^t`v$f%WsUpzfOO>6&j@Z$hd)58-nn<}{ z5ivEmx+nER-dmPB;YjOsQy)-=9!yU5Rfk8>G5L#X>cQI;mU?_D&Xme}bPgKO8Qyx> z>E63MiqvD@Oa_qEBkR{%QUdF-U~_m(;T7taa4w!6Cf-;$u3j#zU~4J+4_#hV*in5_ zI85BHaKV8K7kajE{7qvGjc`0CmGNHlE872otqG`QWMYz$2E#uyYbe3NwyoEe@vJqGs;`+f#KCx2-2 zhj%@?#NykFz_WuLV+F4`7PAj|QAr$&WG2h*9w+9UaR?l`5m6W7P>IR4#)OJ~b%^=8 zUWHbdxlMxc=HvRRui}W4?8rzwLD+X9y$#W;(erC->WBnl=#ci-yXpp_sMoaSO`-yX zpESVCabED)ksNIQmm4yS3%VC$+O|bqEjlh1`>(I)8~O_0v#-z*FB1BB@(-7|zGhy{ zMObBduK&bKKH_}mBl@L2V$S6ajvdYM7Cas5i*w((w^&bmVO2k7%=Z#{1$oY5;w5?F z`@@*8fz3Sy7s|uT?{;1HC;QDMcN}YS`$UB>cTr!-T#>eJt~45O6M7XlY})8Yl4DoY z-P?BfC& zer85bcY#fczgw5yF5no++Ag3bERoKf;po-=S{BdKLv*5VN{F3s^k8XJL z#tB<1WESsoQuceBICxIjIH<|bw=qlNN{K5U3;*zR#KMyce9x7C{Xs(UuJg5Pb+OmLGt?_-0Xb8 z(ajD7d#mp`!w#%_y?C%4PQ1T)!LGfX;62-k>z*xAUU~MY{m@qMb8H14+ZJW2urs5r znO_k==DlLkwkXXDDVbkzZ+)jrvz=_Qp$Z!e*_E^g8id*jzkr?KJK15{oR`fumbHiUdzkvV4&u7uD0qX!|KAiBxFyq7^o!htzQ#@T zL0nOqs;x~&|l56Z1dH6nfp*8)A#*&7duG%fy9L%7;;Ye33f2)TkOnS9h1+<4sP`ZwOBD+=1EA8 zOZ*+_)>Plv34fA&8+LNehAIG1L6S0YBMt=e+}( zl}j+%mvzKha!(9vAn#vCleY$poa2aj%!VB1Xx^WV3{$Y(QE-hN1t-|ie4ahid42fN zfliS2TN6jrN$^FT%-kt%V=Cc{5**0yY|i80nDnJ`Zb#e&2WrX5*NaN0PLcA;1q4g? z@qXcA=3hy3afy#*>hHLj^#n8Ra+0?_bVpqJ@O}5Mcz};{{1%#Z4JQ7-k2o*;LgEFp zRmIYwLAW=Ykt>NC=$CLqJBHRf41eE4hn1~oj%=A50c(b1+ZF>>h1}_$VD>kyzEzS4 zf8>jJ8Go$T>NL1<12yS#=P)u?E*SN(uzfZLr3_j;Bs3GR3%Au@**pU^!&c|^uAPp@ zE{w=RI{Q?Q0XOYZacnxDz@l!Y4ZHIHCFA7zJ48ZA#(Vv#>4#P&ftgaPmP-OZJfi}}h=P&EG6sGlF0xaL2^CH9)s`H?e1i{-`f}uo>uCqTL zs!`KdE$kAHOB;rsp0p-T^eN(Sp5p{!(Nw1*;#4d+o--o`o(#j&GzRr&cR%rQLo`hN z*l58IjRIR`R*R3qe{+_V^tY6_Zjm6k8m&AdQHBdaBf;&@zlmQlVNaUV?g-&ujS!sI z2*ERpK%Z(%nHz4_%QDwsUT`?{6@yCko=ThyC)PO$2Ng5*kCqL`9}jlo(+j?|9zD6> zSC4;0vA3XkqDd#97kn9+6Y|}Y0i*STKcfea&!N^5!R&UH9;X*RQ+dAW_H}Sa3*w7d zG1>BBJ-n0KR`ZY63x2j9XBkFgw_fNGXug;f#1Vn z;`fG&+?jB+JosYX-lh>~)n?U$Iab8c^V&XfZhQnH{^VG#JpKRA`(Sk0o0lTZx+fD4 zJqjg58POt2=xd_DRGal1MvH!EG!m!vKXNrC8po_w*tED8ZLaf8`h^(5OO1hBjlIp| zD#YRh!(Gpe1#^)EZjS}O4AzgsnW~ID9*3|8$*nGYi9^l>m7<4RJQ|;Rg5^c=I2`qy zR+LMyy2rPK_xqNBk00tMAi{ln#Jm!{X1##kM(T9Qx$s;>bH@q|e33xr~IF z3#MA}9*_%0C+O&$i_?cZN>n2j`8*h&bThp!_gfjT;mYW7Pu>_{ z&%tE|p+_@75jQVS;cftP@gAo4SzPJl{C9s1u(I-|S(g#T2ILL(^EC<%rV-ETvOpyA zjXYL<40vZi9;s$Nwla!(*@*WH+t$>GjNsAV?-kMKw3I4Qu-*O|Gx3DDZy;10ajKUvb1i!3)Fp9pO5yP2G^t}Nb z%audF$D1MLPNo`!KH3PD{<7?`5pKLNH-e8{tc^IlKYO@NX%urrdOuQ|C8+50{Oi}- z^SBYbjaNMnrK}#`sJhuG@_&pX_lLe0&&@L8`)>=Hgcvcv^}&`3nMO2bc(Y~n`aKxv zg5Gb%>(AQV2COQsT|Q~80SkH1lK~FoQrUOZfYA*{tvj~TfalIH{bCLp5bIWb%J_Q* zY(M;&5;Y9yW*V>wJ-Yn(>&c8PV!)*2clDz#8W1(to1`)ZOyQUl15A2F14=C&kr7zd z05%nC5T1)O<6ZxBE^a`tQ%k|wE=p}A<< zb@`ED^{5`Y$c$6jqR*5e`~bwk;DY}w4CaQ$9IRTorktV|ETk z_nLLicX$rgjA~GLy-p6gZM{Gwq8#uzi{u=^rKIx;(S;hd$brYUM$e5qh%dupwKB8e z{bu->(aW=OVYF`KCZBAy?e42SL+7nN9K4*3dF!r4D-y!cn4%GuSInId;E6Wktgldc2Y(3c6OYRFieiSjYg zeX<=g!Dac@nV?||85lB=ruUz?b#Ny7@e^q#F0eNDN4nnBdbTQ`e1$KG>YB8dZU=Pu z`z|sATt4lWfhXC+>aVfO5OZDmI`ycxKDk1N3`Dcb{=alIKHKKtrr+sM4_h^LYuOA0 z-!OFDM}EkfpX(})K2HaifnQ1ow?2rh*`FJ<~s=;D93ogQS4tqvBKWrL*tuPHpJ%cMOP> z4DDeC=ud`Gm%c;km<%o}X`Bo$6Ru0oQ~F4quSw|1WQo2>2;j!5L=1E|9bs@w!n>2K z;7G>Z^ZSYPnT*S^2!;X zBT~R|XWddTZgV~#CCEDzAl&= z5;8OejX8jWIEI^gzRxFrxC0vpRZl^i#>_dHf^(auT=$~CAHZ-Ywkf!0-G;1X^7nB$ z+v;WMTzY+;S3-Om9^99LDxJ4vzgwAtjc=KeHAU#;iJwMkhK)9-;M71SOiV#FZlFy8 zLEPu>x<~aGA6TW}{A!0{s~)D9d5e-?{72OnJ2#e0#gf%5cqtVIZ>Ee%1wW1bOTiQ_ zSV;k^j{DL5>O^tB_d5kIMt32Je+mLVO^+y~e^23Ompz)KqD)S3)zn6*7})7*#?!{B z__yH#IpoOiot;LG`cyoMwVim8eCgdTH7h--d8){fOodOW)wTLJNELkTRCM8>`cw>M z_U*Q*U`L^w13iDVv|-BbBvk19>hI=iaU$<27UPKOV%I4Vn@UZ!yYV#zM;W$^KF=xI z`qV2i-yg|^P2_WDhfV!dT&&tsH>#oh{x!HkI~ClXT`yJSAEshExo^)EOT{1#@JR)u z8docxioU~q2stkM@j1?ueE46kADmgfPAbTZcDtZ*Dx~fFbQwE*@KH)i%DW`=gQ3jF#X? zzt89V2T8kr(Ei2bx}Q@-{$~o<)@xiM6?Q!EECn~!zGO{KF@GOvf0)XJSgGJL9{PQ_ z9gen}#209EY2d2{or%Nr=56uaT~o#SEmd$EQ?YSd?A727UKB! z91U2o2Hg^!rbKEgBtF6;uVAuB(EiMGRZ`J_UyxJrv)u0o&km%bGsAOSNyX)u+kZM7 zOcnkK;v(?+CJjawYeL)u=BB7i`~vODgpOZ2rGZst#k&yi;8pkED;uVPrE%S;m4JwTC74M zZX;WU@6Uiqr;~x+?4P})_se47gbbt-g}r9EOthV#%?m1)XQ)PmmwvT6uoRv&WG6e`> zj5C|eWno+6X#tLPvk>WAzI%xdR1Y4uSa51a7RH@x;!-+13*RXfF+rUL3iW96Yjzfv zQ0i)`M;2^C2YkLubPI6FN4(_88j5Z%-%YK-FPk zp&ixVU5SdEPTWgryRt|!>5kChP zscYs}JQtO=IR4mODHjwHcKv9HTx3%E@1^HC7=Fa=>h`ZWFzJSJg^nl}dl)9MGI1Dw zA1(g*m;5?Op7*OJzoA8xTARs$GK?eZ!E*ss5TuK~$bhg^GpjrtDE)#|*ez zsrUU)M-1T0o^!Om6a522gRXa5l`&#bR7*W7m{cFsm4jFdt&@30XZUvSkZ`dZY_sC`#4 zp=zG!N9KWJe4FP94oV)P&wQvbd{Q11z3bE}S(+sTA!g^DJH;?Avl|a6a5w z+tHAZmP9FyJDZQeT?=K1jnEr-uz z^~n|!mg8O1ikF&uFGo|;4~K1=RyO{du^f$)EUtXrxEzbiH7eip=5kQ@YIW~&1&DgZ zgpCDw&rWZh3edFL^YOQ*7hpq;PF0-43PfMIKyaE0aHL&1LX{NY`X75r&|D$v=@pn? z{kK=^{wpwsC|O4qtU!N;Q%_zYcqc1Fy|n@gO0T|AeI=Bhe?I40u7ut77-N>pN(}x! zIj{ASm0)M1x93*kWXcnEC5FjYwhF6`kLw*ZWEI8{t+Y|lD#SC)>H1X&xo%0;iB*EX zvl=ZY>@7LKbv1g=_;&K?n$<#IzFOp7ufcThz#+rk)__DL!MSVJph@>9!zNqOb&AEu zXVCSO$--}?0sUF>Y#QdC{$cm-SSl)3&~}fby7>*WcW0zv*rM(}Yn!FuZD3+iUShJy z(M(3D!sCo;YZA6G3`IBMY;gf(B0l|F({fb5L_CZCo9a&UlWj8@k&gI!Wf>rh`o$wp z*BP^CDN6aB&TnW-{6?O?uoUN-4cheRK!V8CO+c?fiGM!zOu+c~{sr1EODKD9CRrPo z;5KUyABz|HQSri$5GV4v<1qeFT_Qil;`a>IyIx+gxPEd2RfaKWXCIQb&m%_UtWy7- z;UCq}$YINcw$Yf*f$vem2OA~w;v!+qFxZc`hHgJZ9r|49^-ZM`>#5xH~Y9G9{Va^cH-6x?yDY5Wl^iS9)^W1 zv4;F$-`0?WUWXP$pJ_n3Mk_`!GKCIgUiuV2O@|#FnITDsS(JWwy`Jn_l5&)6dEkN; zZ-?Dm^u=C_sPxb#`Q)48ajCVncv6u$8#S;XO55i{8g%7BMshy1lxJ@>|s#Dq??fSjl-kFr)&HtM;M1Y4^*X zQFBSRdbah9I}=n0zT3j$dT$jX_b6)DZ>$1K4Xsl{W!CRLufvkGmDoAFOCRk4C3xI$ zrV`uld2M?XuEh9XPyfF3k@dlne@N01k7coQjVMRHC_<}ir$j5FX7z1BI^doRG^Z5# zG)j@bq=YF)L}~VuNgNnPYx}lH2@>h~_sCa5^2vrha=*~2ysQgu$#7pmDs%2Nb7@T> zo$jRpsu5v-$WQf$UC3pBSgkFediCm0`Cpw`vZfXsgWR9ygq$}=^Gb4C*0zikzVb+P z;o$lRm~u!-2RJii*n_QluoQ(~P4s5}D0An1iq|3~;9AM2&9&w{coRoeW7e5UTm(rU z`|#=X?!~6dKC*D4H~lQDHtUH^`46(*Sju5L_IFG0$4x3M_a0c`M!pJ~hbPkZq!6!x zbMVMOp=752_%37zCyI~Gj}XnFs> z&2acPRp9Xzg(@>|$dtFDGV7_|&VQSjUrY^Yd(jZFdY#&85FGGCl@4nBa4pO%vXJ%6 zlCMwl`I+=fvQGKUhoSuj=xDniO&Xn-ss_hM{HI0({sXFE)t@;V)wn>Zdp6J2n9e~# zYV=^X%1@+oW^&*f@_DA}$k#Ooccb$U4<;eM^Ujz3rccwLm+xpdBk6=qdKlSPY0`7i z-!q*4UX9>~Y6OQ?gGyy?6khtL!3J{4*KVlA84YPc`)R>rH|NMcPl8I%>L0De%}I5*74feySIF)Ou{)%z*5AFm>|B(|Ysugu+jW@EHy+KVKSd&I9@RvBc~AX%Sdy zWm(R559P5uDMM)QNbtDrT2W$t6@_(C05$EHjsF`!|)ue}s zV3ZPz|5CtG1(ybAnECKaNnKa7T^`D|&9j+<0>J@ag~hKd2exas9)an$`Rj@{q2Fw` zeMK%?#d>^)(9LPU((LCgSHa&h=(O8z@?r4)T&S7bBk5Qr|J&xMv!oagL_fBi9T14a zwHU}b0NmDo*&nl+U9_9O$Z7KvI_JegAH5jMN9dNAzjG#`;a|W&N3El>*;|VT%IpYDxzU2$L>O9b+ zXHL0?13bi>*&P-x&B?;#F7(6hg0tg}s@%xyj#7L;=Wf>3ts~0ov~_O6f8{20Co(t0 zG{1Dkv$({=dr!EEym(jPHLxfxZrDm^;mPi@UeKN4N}svG`r5Mi zMHcReWo@$nchF9DqVfTEv}?bq*osOrXGP+!6z3OYPmzb_DL4|I2w~&B!3zMb}BK0WY{W+z7RVx`P^65hHGBtAN`2%vUEXRIp z!Z5|Sd)N0nVPI#SJwu6$#AG`=Wj>O`;gI}Bro2EEc>FWfY4b-l+M-@8^D|PLFhHyt zH+sJ7Gh&nm?UUc@<|{Skx?oqqwS@mpke`Hepf%XZ;@)czr=t3?$CWL#V6KR(gJu3j zvG{?(UC77rIA;S*OsF1an3;6hufgq@x3#E0aOcJ3ayq;$d8&UzcO9PnQD#}#>Y$=7 z@D1WB{k|VU)^(XjA>|_(8D^rkoUim?Co=@=F{$j99Bbk-nDQm{LZ40gsT#GYG|;1e z9`g|8VkoM>tU<+ zMTU#~`fz+ccw)h^)!{Jd4`tq>o?!%*(YlB2c2^@%g~dfTj6}$PkN=z2FA}xN^*^>| zNF?auN(6&Qyz>p&*2g{);R&DqVq&D=c1Gg%%&q6Y?~g=6mtN~@m5362UHbQZ88J2r z{soT9?@g2a7KM9#rlx(16gm)Em+`!wNWqhhf{AMuE%Eb9c4~+taK2paZTKJ8lA@M3r+}LQW^`AhIrqLo_lyaW> zFra^wI1fdO^KA@*E!qzn)cpVB^B@=5lpE1lz`^Iy*lW#*Oi_69rrgTXUFmaw@*OtK zKN=Ua7tjhUT5xcpvCeD3qWqK5;`|*gI7ZPZO|JBG`zWFFjKq;E9UbdGj6|!7X$RNu zi4s2PXu;!)hR?sHFD|~I?ZTED7SZ74gSdpDU&b?^iH;y*HUh%uBL@62qt({BR{wa1J9;f*YbEh2BB_J89kiV_eM7 zRsoUV_T&bUFz%X2o$&~vpCzt8_p?M`)Orhw=%CN@>WCtr>K=(JniWwqZQ`qN3})E> zT+$WBUA%CW?ki$Ho;_n5A?7s^U{tuf8zOM{cD?=&T1Vnp@lGFKMMT1ZgZm@VGQ9Ee ziLvYCgqit zXR*wemmm^}Y9z|2^X(_CS0|&j3Z;ad}$rbeoyWe3_ zv)4LIU$3X+X7aO9+G*nlI^i=RpIe8?F^7)m;CpQVMZW9sss98D%F&?~!>Z-zP}8B* z^gbHm@^}sZw$7dSH!Oz9MTa5TAD@r3(xGY9(14EPWd00~!L6yoS|)#Zp#`_$7Rf$4 zM%}D`QVSCgUyI02myh;8sKwyrMMV4|9_${Q(%%=#eG*1Rt2b9G{3S9!mLFCPv{*i) z^NV(6wL(WJ=USl;#XnT&l|sSej$VX&Z~_=QHJ86IYkq&eaylKJuRo*OyMdaUOIYhMlhp+Ly=*LpvTc6^8E% z8OZtn`q6m|*TOJlv6%AhVc4{;Cz0{OfLU`kA9yWuD9dngHGLjF*9rrLw@+MWbC3u|OSf#lxGv%TvMZT>Pbi|WEOeu1ZmAG{7@8DgY zGVhYxGy|02?b^9Y_$(=?I&ZR4n(}XzkX~21f0xn)N9`Z94~J_@43e(RPL$7Do-|f zko$Ao)>oH&{Ctq76!Scp3zT~@ak+aN`EiL4WXhQi6M1f7xWO=BpXK{JPV-9`)Pos_ zCd|wcGI87G{l%fl53Tx{ynjf4XUe;iA75FPb+YAp{YZP?PjS!X*O%&eYi^jL<0Ja` z?V?*@kp8ZI!aj0Zhk;;0!n4ppal8-r9Q5S zudWn%gGx|X8?A)oKCpBi-L>ZRo)+JgkovJ>iMDvNl1lLNRd{I4fK75=c?64NDk1Y8 z-n+M=$VB=6zl{tSCi7<{uGPlv-&S|%sY0L6b*jGWtHQqHT_{RS1)XLpIen=QPSm2= zor$w`=^-hxR3hhD?oUenOR2vp^~Y0e7}!jOxHsDk-;S#=og0Bv;A6lf6-@cua(~t6 z_SsE!StaIUDsx|6;x~A8+}EpNN120b;jq(pJ z9k1>#^Vp?1gSs3mz|eZ^cr@H8ACrYasFBB|e*UonAPFRb8&3nB0cT ztTfn4saP%abUj~TOVL;wFe-FLkOt4zKDG}~Ys7q4gS5H}nr83Tpb-b+Y0&3ZnYV+p zHDI*8S{pUO2c<#VFOIG&pK9Q%HBz#)1}jzVKG$Z(Vl9}PJ$0oPBY8lG7R((Gc}WW%D|<{Ua*ebICN=AKTF3M8Sx=c; zsM@VA@$Rt}2X3%nJL>1M*ab%|VjY>{ON)!!Sb(G!!?@sq=4LhwgdlS-O}<6?z8r8V zb1x-+!xA<|EujO)^L>;#nS6JlK7tdA_o2BRqcqMSu3~*}Mof`&47|%9M8Q~{Id5Cy zX-343qUdNHY>%xb;*w7IvURA@tu0c6@GSQ)(p-PdnwgAWwhpp!aqEW&La?Dp?1_Uk!uE4a>=c%Ook`GF`C+rR6;(q}hR)`MeS z8|%SnlYTV+xxtvOmXB(lX9pff0`+`DI6=(-}+6pk@L9EGrR4w zaG|>m7r9K~cs-FR*}~0p<=gBsQxp#4rv`h5e+fr;sn{-FRU$Bzg94~8!*h=#%%?S8UZTEH(;-nu6V`)F`-9>T&;-Q9_qadFMBr>{~yjnF`mpN8wMt*X5q= zqH+3fPy>t6blYuqq0%85CO%j+wiA8veSS1J-k7)=x5^!T^|N#g;@3NuJJBfyCjMXy zPR%OOezSWFK2Z0sMsAGAg@{2}Zgh(Q#}U+w#WK_jd^=FiYv*`|v{*!T9+>g+RIK1W z#|dtH96ntCvGYt=9EO!@G&DJbbO}5+Ck~Zk_Y%=Q9u(Rg0?T-q`kV2nqQ5}o_IS8P z7h4(dAs(hV?Gn^|-~Gr)%8@ta?k+*^cq?)mCBTsjfXF9%`Pho&p$T9r_s?z#V5!=V zq7p>@K>{YesYDk01dyoRv8eV^^L4Y}?sNM=&1g<5>TPMAC2_7y`MkutKQVml)}RpB zls#X6%I#nGq9&0xNK|FV(^%Td5Z-Pb}1BJfzHj*Bpu8#QHaNbT6M6nX7~$Kgdp zX7UzXW^dFxYt!7<(HkVP+rPVmH;;iCSKP7J;~FPxqTx4yFXQ7uo<&K6wbribWvdx-7nf#;MCFn^SXdEQ|1nRwvxlJIFypSlYl zs5@HE>+!=W(;X&$o6LDXJ8#^{vIE`0vD~%Y!P3B1-E)J)Bbkvut7KBR8(0cjZ&!I9 zBF%5w^S~ijGgqOeE$a}v3f_x6hvBg%w_QMH+OOpeE_ix=yhWC~i*BR|?E)Fd*(pl)UorNySNu0l&#Cc8TkMOc)krQ@3VgN`d!3T1J`@3l~ zT$(u{tnb!&#;Q(c-#k-sjriyY>9#gEDmj{YCEZv|{R2l-+WfO+rIJo4WHCvf9ntUQ z^Zy#$azy?)pM^EwI%0cWW~_9?no5rrR$DLo^-VrzM||$NAmOvCBQ)z)&a|25i2A3R z7@bBtg3FNG$=s8YTZb-v`^*7{PWAFG`_cinF?R>8J?nr8cMfd1yxaid}G7rp> zc_`f(eltVnph!Fu(>%f+ET!>?jXk)WeU`nL8`%pEygf|w3;DhUi?y}2hbyzGx!4Oo zygkyHJ;2`{!|#@DwmnLIf95U;KW-0e9;9NAYG<6PjOi?Y&u*_R+Wgt)AaWQTkeD#~ z&i9(~c3jeU`on(59bu9yJAoh$i4$A7z{H<)Lp5&n@W2IT*Z<;)Bx!4D^{8FVE-YL9J7u%z0ip)4-SIY?I8M(4jA5xO)wl_s)J;ng!KEH_}mU)bj=2C z4x-+Y?@Rl~E&8_EHu8QVJ#MPc97G?}LGZri?JaS3-eftc{UaREl?P79|4zCueV&<2 zCYR-4=Asmzz!C`^uwy?H-Z+4z5ih#y0IR3#cUQUQAo{KjFx6iUVqPxaN*o|lUFIn2 zF_{z8V&TNrB?mjA8jGiz>G(ErC!FBNVkhc3iFucNKIzEfXXZG8w|f^mp)+gSCOUz)^KzUpwk@0F zJ7J9@1Ft!WKEIQgcM*q%1FW6FruY|!ID@6I|Fm|-K%#-(_H+h63=^HviP=teI^!6N zIlAo(15p$Fe><6a`%+62^9K+U`YLg zr-S-ds8(7FzY}(u(|d-4+sEG%zk&Ff5S#>e9`2Cf?yi}&clZ0f|9mxH%~VZ&RWnobs(35=TM$M(7 zZ%@2l1%5u`+a+b~n#`q=pYttw<2aYBdh~N`I<|gPd|4MnO!`rj(8b>NqksiM+~P+Q z2fj|qdCrggCRG@);k+NUQ^8F?YN&)3@EU8}wI4N#Pw6@CCG-R$e0QX0m}|>({Fg7# zuBkgxV&>96d?o!xkM1@iY%ckz!*(u}7MaoSb14u}W1VZvv(<-xc>w?6|Esp>aIJ-9 z=G$~x=Tno~9j5KvG~bp-Kc7TJ=%(`mQu)aF3+Rfu!QR<7V2eyE<{?&|=7l!htA%ti zXl&JO)fUmb5fX{Gi2S!4x!8U0B6QA3r2@}D; zI?ey&)h@`EUT)CY0GsYZAU${?fjh`ooxR~)?BB>=y)g~cu0gbRbcwJWK0)-uRfxZX zXl~=7?+zj_@1MLkQ58LKXcY}P*v2rSXfSQ(PvPy5FSc*Sp%FKdf{CpIYH9)1Wxsx_ z|C86%^i4pXYshcTtpOfuZ0px+Y`Sb~XmIhEuiZMVrP9{GSb7Te^^8-I&#mKeY=pmWI&Z zHOE!Vcr}FFo-_xA2ly0xs^5&yA4>anFUj(*NGP;+y0{N38%mm<+BlS!3jJ{ZP`W(l zb!E?Kq2z3CV!7!bN&$D=3$ET1O4EDairI4~)W$=*k^W3S?q^?iBT1Cx=w=&9qBgE} z2T#ILXM}idq;4X25wMYlKkV48(Uy%Qv#pzFH&T;*JKN2DxRG*Ji=7ei5qu6pQwx5E zhPf9$$xtKA7WWWF7g~s8D~!7A{ZzX(@;fxVdt4Z`8m^vYl9N}945J5N*%^N#%%&?J zX5&K*v+)pxQMImTjTbJ45kw~-sIZBiN_gz(O|;SbE)@yeM0fH^Ch;Z`c4F5G;k0mk z?6kjIg;R;2E5U#nPP-+&W_~!uIe5(W^AD#^O)D+>xh$OSxT_a2x?Q7v9b=0-k0DV{4LK1_lOIpH z-OewXdL1jdy5*l}vU@Zq`=;J8Bx+3EhQ<(*%%5yu9z*B53GsCdWjkw*oR%$?mOeRo zy7ufCQu>h#(FAff1iD3&MH_@@3J43FIuqxy>Ovte1X*^|$Hm(CJ7UPcSf(C%YQ|D) zu*cu(8cThyRNix>QY_s~dfVCOKrDG}-H4U^&7|@uiLti0kXW0acQXwZx~*cHZE-G} zNwWH%Jd7nx-?|Y?Aa(Sg=NC(V%s*bgOhLX%JE^fTbTDO0r|_RKr1I{ca6gi^b0vlf zXB0)&SjyH@dbC)QT7JKGEEU%YUo6S2v>5C{fw_lPTNF!5&$lwx=AVeAlb1i(_naI{ z(^NnzmNrecTlDKkjEyfjh9DX_x>4yEdKV=LH!(DRtSHjP(z_d>)M{{XJk1K ztcv$m-g{B_-DooFjxqGTcD_s}FT~KyEf|I=W}q=@j1b5V+oTiWKiP1 z&}xU_J%E&c&9=(1)c8nlP^`pKQ5}H9lDgwR#E_K-JDQetsvo}aK?GU8K62l9Eu1!f z@GDaltsQ&#Dp|Lt;qO{<3e1p=Wn{LAp7HM&`Lb zB=6K18_#77)vS1?brpO+?`O@wvSU#Ux&ID<0yC}yHmL?PVkn<||DPGB#84H~-g;wW zY&y=!ixS$IRxwmJ%eB$JI>pc!CFaNeN`MeUtb`LW^y+qNmv2R5XvX3_L$iO6w)rok zZSn4S|N4PN)BFA1Akh|0BPG2Cd0A68^}q}vnp$`tS#vrpnuLAOe^azgS2fz^Z$kc- z&;|xZ6G**7hi?Z(07o7eyJX&nt5Cd=&LnB7i7r(Ei4Z zddH)vD^v};pxl~Q5=D#iFEE|i`>$<{2alozU#+N=Pvn``L{ZsE(?Bf}MRWFx0CyD4 z|NIvssL;-Co1Wpos3=;IcS@tphA2|{{yULm)P-u~&ml|I^G*!s$g&X$aDXll_G%{eP?qr_E3eUE4IAN-DAHCTjfPl+3`% z{lT)Z^LI88l6U{OcyFTk`hMq!z6v9d8$juM(|`IOshwq;h1>WZ!zsVWq^u67hHLsQ zo;g0;mM@0uOkR3&V$}$;>K8|lUCDf9x2=n?%~vBRa_3-3Uq_HtPb{2rYv6S_&FZ$W z^b&IfZSEKSYv|+%DwQK->+IPP)LUp(SK$71o*Q9{(~qEWZcR;DK0v2i7i_|5wMU*= zOM67v^hP6Wyf_iGyR>AmN7&*;B1lyGF7J(?C)+Aw=oMk()rlaGi$mZzg4#*A@JjTT z&7Kv=b0C6NiG1|?2>MmZ0ii;X^zGr7GnK1HlDgmNN$T*L(t?NhG z_&%bjme9jALVvwX2!8*?eCMMO868Devq)kA@-9WD3jO#&s51;`6-7M|owl=M6p8nA zZFihk!Z2K;s7&KuBldbn(OsyTcN&88Z+pM`RS5d|E8@_Opz`0_I98mn-Zo!bN1288 zW5OodD>5{F@V%`%@}~LRC|le&&aZ^q_#Ugg3VSv)irz_jG`^2jU_C9kHi|S{e_a%* zTsp3!Zi%3Ow_C@ZxW3DE2uUJubnfwjMqt|DdJl(3MA`DKqv-sP0MCTo|Dx6J5JkgP zSU!q6It|R3Z7aTe6)M4arfAgwzwP*4iO-;v7e&kQ)tC=Q+58nzv^1dR$_bnPJ${gW zKvDEiWLVKoL`qonr6_t2m5kC4qUh}3xuG0@oUJ*`J$=E>Z)6lD@GHK6Rp1BcPo$gzuR@0`s2U-hE;DY+NO6IO`_)3C2I@`OLf5< z7zfF8s7efdN$j=oQS}(gaHj?sK4NU^H!*bS#54}AA4A`Y7tJ#V{pmmBz47G^b*qp5 zSBD=9V`yGf&(rme#!yv}14)gckY{_}&HflePn^ZE^e^r_B0|$KbQx?NH{Qn3e&=i% zz88qK=}X5_Vz5l;V#%5(7fT0zK0GkQJC^3msRGYF#yc}tX3XgpOKwnqxowH1s}iO* zAeOM$1WA!tQny2|Sjs!IJgCcJY1PQ-kXDK%S+y->x0z<05Fz$h+AiJ2(^yKGxVCYJ z9GmG-#^8FRcr%sK3D;(#(RRNN`fMf*6K%MeR&`mm*c0Qadp(8maWe(fmPD7$v}2_t z0B)x82cqw8&$xxA^tiNeWR)%Su~+?iC;M-qJ;TO5dLt$uCEq+Vfj&wdopeCHtU$ z#~w7^O0NoB?Q7q6D>cjd_nb-#wh}}ocQjhEl~k^K%~o>jEfFGHZM+p*X;67#a@lb^zm2`P3|2A4yUpnS(bkp#tW>4B?)0x>uPPaETzSD9WxeNW%gl&}Js}n*Jx6%Ez zD)3GL^M+ouq7TU9!HYxnXhCVeNS1Mp3xXb!oK^sPaF-CFr!X!w)NyV z8m|HKapYfSZjZ_Xk^9RodDK8&N6r+#4tIga%9ug6jIqmrtF-?{JA z_4RM!Z2WQYlqPbjAL49!4{;Rx*Y+$`a>rBd5M?iEiPD%HQ&V@f;~%KXD+Lxp(K z@cF%Q^n0L0IG-SlQ&dJKl|c*hmJb5SdZ)II0DyI9*KBb0#@S$Y|jBNk^8)OT9hV^jd;2? zMlzY>NwS|Wo{qQG+jtTdm>L)3DT~leJddYVl0N<^o-VHFhbdh=T`DF6f&^N>XWpE* zzvJlxq5!^qjkm4a$5Sm8YDl2ikI~JvR zAH=jwpn$KVAz71P(<4ZroJ#zaK*zt;nR;_Vf^8m~KuYH|FM*V1d}RVvh1a;{;slyr zp`vrHtqC^1o&=kYZ2~z?m6j}lR9@mzf-PP?fyQ~{eeIb!k$eiL?K@X8k&x^^DKSeT zfh=>+!Muq!KCwi4dH;+{{w|3$3R%~w?Gs77_Q7ouDdD{vT&0PmZe(*Jb$zjN^kT0> zS};votVAkb%Wlb~h(wBukq3}yi!(|j$yWY+J&|&2gO*4-E&85FkA;RX*AAL__I%jH zYCEWwxS?nVX?kS49b~_HeT%o{BS3&fy#W`;+-U3%HJDz z+W7Q$QcK4H*K6O{NekTP)qVbUC%t_VlV?xyB=Xb+ha`en(ECg6lSo*{BKs!U{Pan5 z4N=o~Pbb;pJh8p;*PhFMCXuLqj{cKGiAE86-euEq*+nn1h=Rs0x+bmC#9d^ki4D8x zcL8yX?jjx5o!Dg?hwLINkLGTQb86Lbg?Ts4|Bx9O<+~|Mtz`|%&qn!~cOfG}cax?8 zC+wyp*RSurl5G#YN|g?L57n7n7mPG}=qOsn+Q2$0;JSyx-qs*AmkTK)bE2Ah30zNYExbnPrCD-cP~5I{tZ6`hd-Ubbvfm zfaw6Kd&%w~d8xzbAo+=#Hw?DM?H(j$>8O!x<0ITgO1HCYD{VGNAovz4rGbcBXlg-a z`k2f4ZwMaxjB;}k@(qsP<%txR`<~k{YgzfcN-U#yVo_|EW*l@ZTP<{WI7U5KG;i-~t zPd3qrhN1|#iK<~$HmLa~5|-q}pTa25O@=fz_;TwyVQ3Ua<8;CmMv*?P;gZ})w>wIU zu#sx2aMMOwx8S*H3;2Jn`e32t-LQYhaq!1l<6c6^H|gq@`UgX(TeDuEnhK#(L0M*W zJF>yn-fSTE#jW7USWjtrDcyO}dJ-?NL$&o(R0&hpk%kilffq{yaMzKro;CTnmbR_! zGNAg#wKT56s`TYE)>1hY0$58~KD>gm&f5R@sj2JszL}1%A?xzd8v1GfIBEK_HMYF2 zH8e^CZq`t1Z&6rSLv5ecT98-{y!MqPLtqUp8al1g&!?-&4Ou21kFTa`BA2ydH5md1 zfiY|~wchWvzIvP0bja@TyaF{>Q`=>cXc2;G(@9C_3#N2QBVHd&yJT5oaxnFdI{kIA zOEA6c+00=Bc;f!ykF)v(z?Y{LYZaYy+7ro^RWw}*Z~x^d{D%kfuFwm_1rd^*z{nLu zD!bPoJeoRx45A_nvJd%IB#1!f0wwrBQhJ(Ofz)f+&mJ$22GXi!;ZR7$dV=N zgAWL#q&Y&+jrF=Yt}mXp52QolE^Hb|(}Y&BaiC4tBan7yE$irN3MAK;UCMu|4_<%e z`3bb~%?Fb4FNp{WBvBbis}V>md3O8tEdwcGZE=L^29mSTt>y@%{mX?YEWnm;6hK|4 zM6N1!CV)ybI{o9^(EwV#?pE>0qySPGouB}lu1x@)thm%EU+)0hcr$=H*A)WU02;WX zduuNTlxti^05uJ6@9X~EpVmNKsrW;GqHe0KVdPl*orCvG$A^& z!pl)u&((oa044Z2g4rp6K$>kdrw7>d)B|bj{58)$b`GL~AB>P3SoI&?T9EoTax|^8 z#aXSVzAD_h{y)5R5*2p26~4Qvtvz=vT|>GYa(^|!nTZ9kV0w^I9Z3IKfBG~^X2d}> zN&_FUUbWP2L=o`H>oP!cpsl?Mq>eo&Vrm;mMLpe0LtBl?Eo$&S&$|Fy+(!Vl?N!pV z^8NsVxL0rQ$N;*VO$dJjXwc~nSZfWS_^>RO>r4wErC%QrKo5of0sOQ|^9x?uH?OMa zz0@^;);dWG6=37x37}-(0lUY#2hiVznqf#CKq>b2*&NygP#JZk2GFwm@gc{$fR_|3 zm0x=V(DlLL5g#T5(6^(_x*r@EKtAoSMb8@)Krf#>0E1)zJrg>;=>a6_&Ksr#(5gn# z;sw}rP6BLxumI}PQX+NnUNrtAfUI#l0Td^%_hA4jUFG!vn=V`cK~%HfL|BU z7pocsQO|One$Q?dMDsu02IEo?T}mHQvyX2OVe$q=j3D|2)~=-8K@`_bA}xcckqVOs z{fDRY>9GadCxBn|AHLC)Z4!V5{@FspfU}Cm$TH{LRTNxEn3Gpghdqb)^*ahaRa)wI;`#6IKt)pQQ(LMu*~Ko40RU zLrWyQ`_md~t_fXhsa@3gl2_0#O?p=_>xH*#slvN?A?an-k$UlGgYOZuGv8e635_hM zKiAvVpV2Rd3Xx(6EzKw&Joxj#diEy=`rYBe{2WFg>z#0O`z9&|w)l&WBPi^3@ZReC zqDj2SJ~g(G(wvQqqe8B)tDNtgNc}Ne_6tm+2KgH~9q6)`>J)6z3f#=L_0_`^F#lcc zS;vpk@Z*E$SNnB>-h%CQVA2`t+M%OM2D^-Q+3c+U#U@wq@{-Mt!gYAj_^OWrEis|;^88X<(Gn9YUZPq8B8T*T!F{8CO8}^s~>@yT7r+?@X z*1xR(5B^_`|Hu9PKleP!{eR?nG|_jK!QNU6>}_u_qYXKe^^gC)+*+UVJCd!Yv0a0l zb`8>P2mD)~GU^5XtxvlHtyi==YrB*U2L12N|6%KYu71?}e`)>5Vg2xJFXz9uANg$G z|F`$n8uDM?*1zxjzqTKy|HJ2z%Z~L8XRym;R|qwzdzW@<|99<^?Puvx7d}~kLj@f1 zU(Yjs%&`AU=NW~){y9%YJ>s7pNDbVrwWmpYZM{}DE8u#qbcYOf+4XmK=;i7;%zf-w z>rr-g|7X8Hi|lB-l=V#i9Ql6_TeUEDk~8$Oou-Nn9sl{-Z1!L;?-An$TLycNu@(#- z>pIGN%-F$W$DtfW|2*e9w*CL7L3!3PxbU~=`=))oR_n5hs5bqu|v#^S+JZfegUgLaaB%S%9nd>IydlY)Z%)h@Uxy7WJxw;UG zJTvn&&un%}-{Stfqa3c__wpbpcKtE)#81in7G-f^9f#&|;X}oL{q`v0!ViRTqO=Qp zpZLphKt&fGd?I)9+8Qnlr|yQn4eUW-@F0B5C(Jlrqa0nE1@CwcHzrVC79>x!X;ArIvRVsFc$SP z6zt-{mD`xg4R7nh_w2{Hp2z*2pMU9IT0<9p)Zw|?@2W1==UEcu@vw`G|y;AT!HqR_+C6PRR;p zoM~o$;IuAf+$b|2!e=$r%gog>uDf@vx0yB1v!j{c-Ol&0VGA=WKb@1AOXgoZyKO@= zk8HImW96D=)_A9iW^U?H(~!B0nH!ytEbm*?%p0bJ9~z$D%86Dx1QHxn0ak#}0IFD9-d!g%jYtn1ltOuP>)U>jbT`0V99VF6D}JSoVr zeCQ(+f4NjBLx=k&R=S&eCO#o@e|JorV`jexCvTg$)v@%_oo||~-|00I*UgE{h^r

fD?+ab(gJHKM{PMTPp5KZcC8wYLZQ}4IElZcSH#3qL`;Ezg_a^~Jcpn1>n*XdW zjP^rx((s;+4*_#?Ni*wuAl~2W8%UfiW#%3dP*uXrD!Wu1?M^C$$P1WR^Yn9>dF9g| zhEjNs=k1Dmox%J2`ZTQU!?(b*EA1LS#_tswiCZR4sypFuTRhj2lAw}oV&$JpG_mS% zMVeT{+Ja47zhU-!%NLutV51U&ySw-2@)Y~lycs@?71*TnNNd)?o~ z#F8~%uZ@XQq2|<%O)RUm;~JS*_3dhzSoNnWm{|EUi<`LN#iyGV7clWMsIxuKVPf@{ zW;Aid`0zW^zZqHe7vCBAUBtW4o6n6bQA|A_8d<{=?il&NqOT9XTsB(Up;JcIb(v#8 zSx8Jaa@e;Ijs?TxdJ7>yiw zW9NapPDU;u2_B7&yy5l5l5ZN~I@_kCIMp$-uv}lSX5_DqnI5&RV&tacIICdfBR)ug zFK=YcJ1k>lP5UcqWR06DU}WXr%wyzY*)n=P%VlI$)yr<=Lj8-*7?s7ys$-VH$m;+6 z!@N6g#Qx?#m`U6nUzvwpSat8uCuUs-d&jI{U9XvgI~}^8`8jjlex>b3KV)|A*!)++ z`^U1UCh=!m)(*n0gl%-0LR@pznh z(f2(YtDa!%`#i$d?<$2kJqQk&gUly{=3+0it{)|_wci3>nHD(hRRZ&yphv#_w=-{> zJ^R1{AVf8s_HAKylEC^%X7!tGVpcx*Fy`!?4~F`MGQWLv*|YCD=HzJ!9=n5?o4UR_ z@C~T)q=C$N+S*g>3g*-wardH^F{_T~V&-OsKI`f(WNW)Mm)YDHD+)l>F`UP|w_W>L zjb|}mKDZ}&iZ8RnO#1a}I`f(JtKFIaqYTUUkDbDN)~8kS^ocKF#fJH%dq42 zkLNU$@w*S-o}CYvaAivJMFZ;D2t08o<}4yG(2QAWBpNg8`Y3So#myPoG-S3v_w>%| zdZ?eGyIU8>U*AXffG%mRLJ!qqUX7^kQ#F{wj}1 zSobX(vxW=jVAl2b>^N^+?0^|r**fmYg6BKy*!{DanPYB^m^CsJzO!zl9~QA^?%?yK ze2a|C#Y7nS53%~Ae-I=1Y+mi3WF1$0Azrj(a_P~Zh*iJlBeBMHzag%4yx#8uuZbs1 z#d}Gdcjxe8nV%C2%hIjK#G1bNhB%x;iJC6EoERjyB`m-V?+UE@v6!s$l6k~;13vW0zJPd3?5b4IL-VF`9V*|P z1zNiW6MaE@&m-GDnpJ-eF~lTH_I|{5BrswI@w%UzPfVYR>j@zQ?5|MA965~`!DVGj zOeVf;SvNO&0`Zr>FZ&vSvWg3VE{=0ftiYpj|3X7Ql34R``zz9 z1nEFhp@5nOWkLPeJI6fIo4CN>l0IRuvsnDf-Ss41-x32olpFVNbB%)?^!Ep+-LAyL zMb2*kvC>??PDV3$r!TSF>68pLdlQS=>mK0g-+5Zh>_L3u^V=V1yAxya-lIil;+y9d z&uGvI*AZQ9;4=(&DgbraryX&G&=Iu7^Og1#SU?i=T0_=E9N{hT+&mM@Uj>d@V`!fC z7x7pL$8A9ziQ&a~GqKX`8Hq8v4>`i92NH+wg!(5Fz2?MG=Qlk_H{kr=z7{VER6X6M zWbJ>N5xWZAI&9VPY)HJSD+ti*;rqLgv}Qa|Ww{y#C>P3{Ub*KVqLwag^`z|7I z6Sk%;d^YeKk>mYj;LP)974Q1Zz`Bn0)xb|g2K~Lk`hI~2Vp{pd19iO^$3=H7b2r;Z z0}pL=$MgAH{0`9pduiZL9Wvkf_{zXJbM?Oa;V!Nenj~2Th8(4YS z?ipBhKJFO!9kRv?!7fnL_pj$b)iZivu+FDb4Xj~lcMUvB7DBQAj8n&F*SuxmZC;qz z16>Y({gdS;o}(j>!!H=P-O$T723$7qy!sFTy<*@Joo|(#hU1W%GJF4d153AY2dKO%*uTcQ@b8|m zmB;iP?o$HB|Hl48aB{}L8h3lrz`7m=Oam+OwG((=LbwZT1or;1rw!b^1QcblUE|GB z-t*$gFZyzI3dcVQiPVF=BQ{jm|U|{7FM0qWd3kQ0>Jy!HJ$|WlN`d$Nv zy&d7b0I2=?9s`$^1e9Hp9uvJFDz{;~7X5idHgtgJYFH4V@Hy7Lg>{?m6B<#&A5vYaj zy+vRY*uU8G7Oywpc|uLaH5BzDM-AVqAqMVH-H&Tw|1lD_hV9ve5El4!BnG0u_igaR zfckva8d$RIORP6=rlwWgBY`(sBg1nw>Q}XqEt>${#^%|OJes_|zLjn_6y=(~x6HtskQFg+7227Hg-V}7 zxzf8WL_KZ2h9Vc>d~HwPeYzO!o22*Sypv_1jP0luvj<`OL?KX}kM;nneWm9ac;vnd z{i6H~EbLza*iYL%Z1<70UZC9eFkshLgG#-?{u(z2+p*e`;G3|OA8iiWx%&_Zm}THK z<*O&>0#@}eamxGDuZI+7miS(nqlA-n3he$cI8c+iu&;2r2UG?cut~6HU;lRc)DS~ zE$KSd0-P#8U=r%L$jZZ3J}VrzvmOK=#vAzeZSUkaqtKpwI=nvTMEw3sKl)~zW?+0h zCI7&kAG{nj9G1PHN0gEO`(UleR@cZL|axDdUKM7>;^sl>1m2J844 z$Lsew+`xsKy4+cZ{ggLpDC*UqaarSml}=`h9yQ3o(mcP$emYOZeRVooZfIxwHbmD*kApH*#C?dW=?MST^@f;n(Ad>I|+dFM7u2l-#Cx5#0Fgxah~yId-%+8M}H9hEBw|#1LseVi)aZfW+)fw;(_BN%^BzG zTdwH3LnxQ&Wj^4JzW5~raGl1q|Jc!o;Y99 zts?`f0Chfv^A<0;_of5v<+DMkg5Ql~7Q1^uB=2M$kMo>Pt1@}KT!*3@siT2a7r2vw zRfiL(aey5R95~ay&t9PNHUMvjoz1ekoq@~L?^Ha!je(UfuQl2uacBVjUUuGH2KYOr z`vz`hV96qw2$bnVJh1P}MRSsXZ^3#O^cVX3BQCQGxfpn%{j;yX&1k1)cgR*6_VSt# zdID~LHS17Al;;)UJQM0~*XNbj8Sz~g?&y4p(SC(ZNX`KqC9=7M{i-3u)_~tv42pZe zqtn35>TF;c#+rDp;|XKaD01s z_JCDpo@+X(5w^>Sp#k1k;UahP0wH2QJtI){D1de&XJ$H9AN4fiOSxP1@cl{vF>n?h zFTz24yb8!K;>nqhVNYhy@1=N1wB1f7585OgyB_e_XR8yQDDP`%BaV8 zkbqywz|KkDDZPQ+o;)deu_D^HHhud&ERWv_w^Wu2_^ziTLks2p$Rc(xXW$-d(|eXK zYha0T_5h|l`|xBGQ29%M67^dV_zctV=MHE$#)QthRR;Tseh2K)BL58xIvc-#Gs;1t zaMD;B-x=IS%S)mC!?M+Ipc$-Mg@C)kqJ6I<-V<2fE&(-utOUk;k`7fI-^-EJuIGTd zet_~|ux9RnEkVQ+ilRLO`{K1C_%1N~cnefH72wc)*$)l|YMu#j>+ppqS`;?$L7|;2 zWZ=cO2ic8;t^FA6YRA8??F97S-0N2)P}h43;&;coCs!_j_XoF&b3TkGOHFo60QQQ_ zIcar%eD~jP^bdtC(f-weISSmqYY#*)=8+G14Sd&(7B>&JPkOemZ*BvJBC9zA>~Hlt z&$$BIs`F~#mMb0mWq@tSEDVKc@1a&aB^Q48kk&1m0xw{ieJLm2iwJz=!23tEvETzc zEIa^JpAp!?XV8;V*$phL{M~_{?)RRxI2+m{$twgN+fvlr6y+cb-{1t>x;~2ejl_Rv zMZYWSTfp%`gp>vInR}pRgVG)(rAZ| zKx@3PGn*tW;;S>q56Smr0#LHdQn&K={Yz)QF6m>i z#l0f?U6~02K$Mp~wdLOZ7tY+H%BA1yfa=cxs^1jbTaNpC?_WUe*HEtC9kAbu;Ly1! z*RWAw^=L1y}>wmDPaT6U(Nb1=icz-g7FB zQ@&f^r~04wwm`Ycusy~5I%nVO5m0sdP_FZ2;K>W|v)ce2z@`?6?G;)!vo8-+0x00J z=uUV0VS8b)L|uR4%o6QB?y)oHZFTtI`bT*GJ0mBbfbBK8r?VTjtBw&+^*vDT4E2ow z*ngm^wHD`_AQN?*52Wg;9kIQnG@Lk(#!cXNi+bHS?5F+|l%H=LHuc(lXYLwz{N}hc z{LTaS4P#RA+=O=p_M{f?k_#VoXHj9fcFLWbZM_{j;cs_d0oJfXSKV3pH*UN08sjv# zmJi*zU6HR2#b3KK#0*?hzq<3UUtiO9rn_@tgzvt|=E0Q&->cJ@$ z?a~8!W1&Oz)ZINe;nuI@A%i`*CK3)ZkM`hP)Fh%7c-l8RGK6L)ZJ4eDUBH;}@me_~yYggSNSq{OQ3T z{fC6)`R&2izutE&`^SSDFP@b)I^BbPS3}_2&Xb#A**h|WCyUxovrL}+`$h%w$n444 znu4h#t0!x^drnVYUE>WU(n#Op4Ltc!V+2Yx^JH1J*~y;ze)6^S)OC-I9Xxft*QvWFJ4?WI zKTlS^d@oNHb>b|;Jz3IrD~%g3c0csnH|sL|e#AF?TII=-o_uYi zCrkK%X^W>mhqXzbJOhLv3lDj6_~_`=%;!9L*7#C%<%TDp3B8qe^r0tD!@{NOTTi}v zdXDRmpPszuPydjnS-o^Ut4={L{`2l*>g+OJI?r;f>cvWz*1(JXktKbay!cR;{wZzS zc=0H4tabC^)RJbqQ3JgAJ+jewke5E!2V=afaYWO-7~~)PV!jtAn>&Yg4De#*3Ekku zqQli9#*246&zANi!OQxd_IX)zo?+=>$6_GW$O*s2^YOs=f(I;TwkVnamyzwDEJ}v%UmR-&=cIpz?~@@o_evc zebj#DrR`Xj7he3J?BbB)z)VO_I1QBg-}XC1K4&7}!_Omxot~uV;{&%rA7n)Q#WW#E2mawtE!o4{l zKODYWytzZ}1|eg2db9GgAMn<7!pFzGHNM4i!JErI+MmAcIuPwvse88H^%&QO?Bds# z-YnCa$?v_{1VP|qpK#vqEmOn4d9#F(WlG2Mku(oGi^f59u(z<%b!N4&=md4iVd0OP zn{u687FPPk+!ihzeJsr#xM0`$ZLqsW?_g?hm>-%@W=wQQ`%rZ)jL4>olgU) z3vlU+agHxhE`E;z&KAz=w!$?TIBUtvRMZ77{}DnmuqSl>l+w~*vGzBxCI0XpP{#vg z;fT47?A8KhUBC_~LSm?PTVK0KrO>f}Kk=av{*~0tF zeM>!!?b^%skMO8{vHBqd?zs9cn9ArI8MKFpr+}yv{?HupvD8YLOqO_<8~D& zGH%0w=T-!|W&uk4O+5CKFt_u->!}5N(}8^hZaNmkcK!Z={^_Suom*S1{T*zKcHOqX z*6|Q*_OC@w!wQ8I#ZO(ckBdP$7?`IpUn>} z2BMCIz%zcQlZ)UuU0()jyWSSx`=-ad4BK@a2fMz|xB}(7NCRHjJ<72H_IHnb?RpdT z+8&5N1Zw+&a*0=SYH#6skSlnEa*e}9dFDn>(~6^f;~>0Y*b?Vc4OmqO15mDd(j9E| z6ZV^_S6pkumj2%Y)baT;X?Gx-hMQZYGARQZ>cD190uUwn&whr4h{uS8Q{l|bK zK>hBpUDy4Aq96Jf&~*N1dJ~}bT|w^{cn5<4J{-#+@4i{zwSRx&f3-550r)t@~4o^ zvfs6i={I3Jg%@+Yi0!*xjW+2Mnj>(_80JhHmx>-21>++B#u=W0d{pVkG za7X#8!Sj+U0sn#{;{c8$umN~r`|>Z8(g!$IgdMP5Wk!Lb8=V6Dd8(L$rMvAr0r~}v zPrre3q2)^l>T?0=xDTk~MC>QeGcQn|BT)NaY;X0`!L24xREamByc!b!wgI!Y_-Gdd z6rQQuz&Y!_rjPD{dKyzJ?J-dJUt>_N{SQ#vJ)r12`U1~wiSTWJ{Z#)IsI(uzoqrGz z2h??1ppI*?f6Gh{(=GvZ+=%i=ZKKoP^+f%HpXn-4+c}iKng_=N>|A|Xr3?ZlzFnA> zj&iSr-RZ4hmrFnEXy}Fhcf!Gt5ft%)&cW7x1Gb|ivcf((po&{_pvF}LAujB&1sGhrcFIBE>lua9Wc%?h6G!*-oV0(D*i{C=Rl&jjF-cV8ScVZXFG z7aje8qK`eaFMcmrxQhX0`Ro<;({W@!^jAVu0$bNRf!c0hzkRufBsYXDacu)^=XnWR z__Yn#uJb+E#W$ZzuMWGRYek2BuvZC9A5e8fQSKM-=a?1OQC@D?m+ycW0I2hG?58@k z*skvzsN-IseuqHmhjIcXuizMtTi3p&U1Qki021|1;Ex|(=UYmTHHDwQU$2v7GQ?LU zY{%%>k%98P-^cYuRVoqNPr{8^e*pTyNua&Ob{*dXA6F}q9D{O@$t357?RaUV>pa-v zN2m?EN{#ov^>DoMAiliF^S1a9$Zdc+-$l8!XVE~Vk4CxhybJ=4 zFH<=ED^UDRMO;x&dS>N2u!Wa52)54aU}qMYAmGh6WkRO{^*I7HF3!!uGyR9B!=|8qY1u6%GFod@DLjT^;w^f1Ie`yaCz37S9U;R7S?*rHrD|?~72AUjKVSA+#;b}1_FE2D~K<#Hx zp09tW)CAbku^{>c%KY*pevf{SIG;BXXv*U}Iv>UU8gB$t{|NTi?;f_SAJ+$Jdkd6y zqX3R;Jfbc&1|FO6)$T6JHNFcd`fy1=osR$^n&h}0sQRkF(PfvV{e|N+-V7-IJ6Dv8 zKeipPWri@f<3PV1$3qJOg-87?eovFRc4@t^|52g!2kLwm+nWXEvg?lRx;_M3`Sh?o zC|kF5N1%Q7g$@saQs3(Ur5@x3?#oe?s(PdSMBcs+j{E2L{quYE{bE1WO~ZDHN8An6 z`4-AUM}(&AgAJ0{^bfec%-`0aT>V`*ulgHcpIuedEd;%u;PBs{LK|#)^`CmY7CxDW#wFJlMco3-mO_b~W0w~Y50?M`C;JPD4upZ^=4@9}Frwl{6_{UES zw$*=JPtKPMsPzlmWqdad$9bJQ>G%~`C}a>!MKi&7h(T-o!~0xx3fov6l|GC_XmofOWvpC2L!>Ed1g2K zUTwEwYx@O!IR-26IG?oJi-9elUrMfk{j{GRisu}?*e3+GelNKH@3%KN#^X3`A5kv; z@3pX(fA{65xSsl}fg0zBa-G-Vyy`bVxg00gk@%z1u%-XBU_ap(T>zAM{!O49{{j2S z_@gWAa=#XZ#$$i&mr<_kI4Eydyh&&TP@4bRD9`J8DfJ9~m*hK^9A@jMhgjSFXl$2s zxsyPRi$b}^5y6)Je#_l-gEi(8&LjTV9F^$?{&|$k zdc1N?Edlw&YZ*14wu)gJ}a?-wZJ>I9(nPe6U|BP`sh*$TH<*g8K4>by!& z#v#BOE|?hsC4Vv!sPV!;^)CV?E-D$Q^F5qT=g+`0_r|(41?v3(rMVdmd^KlP+7;|C zd3ohv%X^9fO1}^a)OA0g)(4>G;{wB`Z%Nw))Oo{5+xQH&uGau{ybTnV{HoZl^%A%v z!wuj0DA##5Q2qEQUl89e*##)`Hcz1Re-nT@9tFy@#SHY^-OSDdIONXS)H*=nJ+2Rw z`{)MTei4B?K>5!7fdfLrQ)U654a=}`Jn(D$tkk(cL}8^R0kt0h>Ua;R{XI~4;8p`A zA8R5oeDQ9(2EebI?NWyWW&Lp@up89=f`GE#mJ0lP(}VOpqu|dIc~IEe-vB>{G^80o ztsmH~ercetzoLBhyuqn=fVxhA@=h4;js#||AL+IPsCk1xsTa;bi0b&X1m4f}XGUG1 zt}6ib{Q`$fQeWslh{0BT$%$N;r{zpOnH84Dk# zR0ryMK2XL@V}L`i6;CY+6y69Eu=kJyse^!;M+6inCi@-B0oC6p+hsi(sBsWL zZ6AOdUjl5jGSmHqK%Ex=b=(ZpaV=2RNlpWGJrww&4>G!dn!gOxc^FXE)#n1GU+V^x z@p{Iw7*AJmNhu4|^>(26=_dn)SM?3{lXZxDz&DfpQ^Urg{Sp2JY}bAk<*FwPRGxd3 zt6u~A30u3{1gpQpVLbXNI|vS-T>THg{k@8niz;ts)$0Y%KpUj9Jt_wtiNalGbSZ0A z|J6=lP7xGw1m8g>WVQlhKo@ez!OUI3&bbeH>`gCjGo3~rd(piGX1+k)d-Uj$Gmapi zUDp3|BvWye3joO{vDR- zx8D!ssW0oiVe(hx^NXDHXA_I+U(rt{zS|-=tltL{yKRq4n*lz9#%UjqWJ7+u`mw=l zpnl$0CN8T4_a0YLiqa-dGq4WPBmHMhHjd;?|?n`8eKM7<4?ga zu(8nAJ2_KK*1YFL@E!av*l$a?$=ZGgnOJ$R=bJcV-dv7g5a+<0fj%|In)uj?tmPIB zGjVTekdR+5>s%!VnRwd<|9g#xfG+_m34f0?aopnEcVCS+vBqWM_~6?I?o{?OaW^6I zTne5Au5gm{%@EuM$GW}5!oL8l@I51uu#W#Gl;g|ESu zejp9cOZ>4fOxAb~Jhu^buDJW*`CjnJJ78ZHv$Y+@`#InJW2qH*f11~e_njvti_84# zX8uvB{p_&%X6rfx_$dmV4W8BTFTD3mO%5z-kM}74v>s+F-^c(nV>x)bzs1a|+c(V2 zo^Se?3}aA#gtvBrna90s=v-xznXwEw;QC}UhpqiRa|}@9var2-L5!TS|I>wCOmR5A zV()pIHiI|gZPU0?W&4`h_v(uB>pPoue)+Ja*%ptC{r>(uy-5QztB!XS@TW*WQ5yU% zP}2>@{nbI*`o)Z9ZXyAkcn&fyJ%i`dt_u`G@Z82pgM#;~H`$zh|S03<492%A}*Jq>7)Ve77<@8-hG|}$Bs-5u;p6=#Xr!?pRIm_<;d?BT|ngFuPncQ<_e&$Ljm_y z-{&@J1@n~6+sqANEB^~nc^7b;%Yq=M4M6o#0{V8?E<~)yRE9@0LB5(P+(k|IV!R z^zV_U-s{h_zE9YizY3lOoj0Aqdu;M~<|F*BclSDbnj*o^fNv|3H*p-(8`R2(Rw)d{}5c%Gq^J$0tYn35b zMcnz&{ml8tBTszv(LU3Vw`&NzykTX1;?c|VJE~T(#ycAwKre z|3=eQ$3^vgQ5Cze6?Ky?$=!to^b#tHicJd(to^kM6BX=k3~cPc#zsZ#?#93_?Eam( z!;gQ?=g!P~ynQim-poDc+_Ssqd^bSqF&zt_g{S-ZFV7C3H{T$@nu$EoeITAp2%wKk zUDdn#AfH#*VRQ)~#dCc@m)6MBg}Z@+F+i@LSO>^;+8W3+J>Pdx_tMDU48k4o)}N{g z`RUvKbY956pYW&XYG;1=?D40D{NdtH+l2kkY=1hq1IABj{#3DRtK9lS{bhfd>`&q6 zpOp>niYOKgw;OI}oF1^{mw~oKmgDB@uBZbXZDSu*}-XcHh zeDzDn&1Zge?#-uq&u;tCj^^vF+Mo9$(M`TM?d zsT1PjM}mf4{OpJ_z~-cR`sJa$1`g`TKLfvbi$0}Duj3%8)-Y_FdloLd{48|Puz{fephxzvWT&bY*^n&_hXP~QO8IF5B--F zRLw}q1F!oxFK^_0ne+dA<+|rDU&;4+>nn8$3Vr3g|2<#AGP%X(+rGs9!&iODNpyI} zeW}Fy$0uD6`^x#p1HN>5-m=kccOn+=m94(ivqzuw?ODF$-E!ey+hxA={9mW$GZy($ zUS7ML$#Z;VKK~3~n%ZGYdekIeI)mH1T7=LyAxc0q$sisTS zZlmLT>GSdO1(&0J$=qO{#o#W!R9P6LwD*EM>ncX~JU<@x1W^?W67vzjm2EUk0!MJ2R@i-Bte zU;h56^v{PZ1d;Wt59bkBeDpqB=0gLf%y?S#&`0LK z-tnQauT&wPw|vO^(22;bt3K3B>pgDzSs!X8K3ww9Uau&5@1PHX)pa~I$A|I{&hSY- z;6uB;_Xb7oM!UR|2WM>ep-;YGNN)6z483ln~Ob@L(i{fhIE{P|cPTIGm@fM_3rnMlFKjy}{>2uy|JJZJ`* z+qUqb*fT#8-#7K4ey{svz9JuLaH#$YZ+{=sYwML;*w}~Im(tgVEFHl}^zfnZayv4k zfy~!)@R9kHwm#&xzHi1=AnPEhe5jJJ%dzsITCY3)$gJ%{r;$E4zPb;UyONhRzp4*a z7lKTceW;Vi{L#lMVEbCz71PT5P?CfFold2Fh<&Ope5jiL;X}QC8|Z+;@JC6X4fFuy zLiGm&ZFRXE)%C4`J_&n*mj?P=|3Ju>LIYv65%A%ef#QS8OsxCVKsF(8Xn9~Ded&Dj zy?X}o0&O$pra{gtTsDyH+zx)nFBxe0OwY%qP8o>xuk#E9^MLQUrwx)XdfY(Q#@zV* z{fL1M?i_MA{jh;nU58=a0RugJTo6!hk3rsdJ8*o$R~7iDH9nZO7&y=L)j9*c$zAjP z`+5WQW}=sY3{Sj6YOgX-d5epOCN4Kf{g6clg30uX8Ve01Xys)V807eLo`F`5Z&Yw; zCa^k$$fg*`=kC2lnUf6iKAmVF_DfAS$bNgQf%BRwjxbQ?_x=35M;d7HDCKH@#M-sD z{i_Z&(1ecd4xSlcpkdc73N?KVlIPUVKzDr4mwMaBAa#d&1s;4mI!%le}kOo3owwNz3%bF`E?H(whK7o z^MqfgbOvfO{NeXIUIr3!LgRrQL;{PufdX8hueVq+FzdFOoKxeDv@84&O z{Rw?Lm4WOcvcI>s!uc3ctyGZ$$Gf%s-@QtM%+s%LAoh<#y>Pea1eD_qgVa~5hU0D2 z@$c@+IF2sKrAAjV5c_l^X5F$%1`^9WUn?5OufW#lO9g|>r!8ZkyX}^)o>9smbprnB zX-O#laEYy42YSRQlKZW zK0?y&>gnC?72i(Y(#!RC;C}PO?-Ot9Wq)^FFTXb~>v?|T;w3$Ww8e}Hko&{)db;?z zMpDKZJv9vJ)pSX|p4^3PYM!1h3H!L?dTKGQUzu9R^mGW_s70=xR{U6cAnt&kDhh+J z96hxc#`d`Ds)y2PWy`I>gZi8Na&#uyw*YRdiM^@^o9o&Hh zy6pe5Sh)h%Zx_4R)Pf$YCFPESIv?bcX5Y3tt)d^1u{U4Pm>-ZDZ@ zf2vO?88%u^(aV;u+=uwcD1}cq)KB#6nAdSQj?)ntkwf(qc3#=N%n&^l?A4s?1@u$E znYur&mmv1{!*!VIHNp2ky&OLQdETJ6o^taO@;3C;%kRhTdV0D0cI4z9xNi(|BW2`qW#QN*K!03zZTv7

)O|%f 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

9mKxj&y$x&qo)5I&$@mlj+i~iC=Q~W#4QGY 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 diff --git a/docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation.py b/docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation.py deleted file mode 100644 index edc823e6e..000000000 --- a/docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation.py +++ /dev/null @@ -1,33 +0,0 @@ -# Import h5py, to write an hdf5 file -import h5py - -# create a h5py file in writing mode with given name "NXopt_minimal_example", file extension "nxs" -f = h5py.File("NXopt_minimal_example.nxs", "w") - -# there are only 3 fundamental objects: >group<, >attribute< and >datafield<. - - -# create a >group< called "entry" -f.create_group("/entry") - -# assign the >group< called "entry" an >attribute< -# The attribute is "NX_class"(a NeXus class) with the value of this class is "NXentry" -f["/entry"].attrs["NX_class"] = "NXentry" - -# create >datafield< called "definition" inside the entry, and assign it the value "NXoptical_spectroscopy" -# This field is important, as it is used in validation process to identify the NeXus definition. -f["/entry/definition"] = "NXoptical_spectroscopy" - - -f["/entry/definition"].attrs["version"] = ( - "2024.05.22 - Hardcored (i.e. no software generated version available)" -) - -f["/entry/definition"].attrs["URL"] = ( - "https://github.com/FAIRmat-NFDI/nexus_definitions/blob/2811f38f8fab23a267c4868ec3820e334e7a1199/contributed_definitions/NXopt.nxdl.xml" -) - -f["/entry/experiment_type"] = "transmission spectroscopy" - -f.create_group("/entry/experiment_setup_1") -f["/entry/experiment_setup_1"].attrs["NX_class"] = "NXinstrument" diff --git a/docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation_NIAC_NeXus_Def.py b/docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation_NIAC_NeXus_Def.py deleted file mode 100644 index 29f08ff3f..000000000 --- a/docs/how-tos/python-and-nexus-files/h5py_nexus_file_creation_NIAC_NeXus_Def.py +++ /dev/null @@ -1,121 +0,0 @@ -# Import h5py, to write an hdf5 file -import h5py -import numpy as np - -# create a h5py file in writing mode with given name "NXopt_minimal_example", file extension "nxs" -f = h5py.File("NXopt_minimal_example_NIAC_NeXus_Def.nxs", "w") - -# there are only 3 fundamental objects: >group<, >attribute< and >datafield<. - - -# create a >group< called "entry" -f.create_group("/entry") - -# assign the >group< called "entry" an >attribute< -# The attribute is "NX_class"(a NeXus class) with the value of this class is "NXentry" -f["/entry"].attrs["NX_class"] = "NXentry" - -# create >datafield< called "definition" inside the entry, and assign it the value "NXoptical_spectroscopy" -# This field is important, as it is used in validation process to identify the NeXus definition. -f["/entry/definition"] = "NXopt" - - -f["/entry/definition"].attrs["version"] = ( - "v2024.02 - Hardcored (i.e. no software generated version available)" -) - -f["/entry/definition"].attrs["url"] = ( - "https://github.com/nexusformat/definitions/blob/0e3421f8cef02bfbaa6004e182e3d67dace7ef1b/contributed_definitions/NXopt.nxdl.xml" -) - -f["/entry/experiment_identifier"] = "Measurement Nbr 12356789" - - -f["/entry/experiment_description"] = "This is a real experiment." - -f["/entry/experiment_type"] = "Ellipsometry" - -f["/entry/start_time"] = "2008-02-01T09:00:22+05" - - -f.create_group("/entry/user1") -f["/entry/user1"].attrs["NX_class"] = "NXuser" - -f["/entry/user1/name"] = "Max Mustermann" - -f["/entry/user1/email"] = "max@mustermann.de" - - -f.create_group("/entry/experiment_setup_1") -f["/entry/experiment_setup_1"].attrs["NX_class"] = "NXinstrument" - -f["/entry/experiment_setup_1/calibration_status"] = "no calibration" - -f["/entry/experiment_setup_1/model"] = "M2000" - -f["/entry/experiment_setup_1/angle_of_incidence"] = float(40) -f["/entry/experiment_setup_1/angle_of_incidence"].attrs["units"] = "degree" - - -f.create_group("/entry/experiment_setup_1/software") -f["/entry/experiment_setup_1/software"].attrs["NX_class"] = "NXprocess" -f["/entry/experiment_setup_1/software"].attrs["url"] = "www.internet.com" -f["/entry/experiment_setup_1/software/program"] = "unknown" -f["/entry/experiment_setup_1/software/version"] = "version 0" - -f.create_group("/entry/experiment_setup_1/excitation_beam_path") -f["/entry/experiment_setup_1/excitation_beam_path"].attrs["NX_class"] = "NXbeam_path" - - -f.create_group("/entry/experiment_setup_1/sample_stage") -f["/entry/experiment_setup_1/sample_stage"].attrs["NX_class"] = "NXsubentry" - -f["/entry/experiment_setup_1/sample_stage/stage_type"] = "manual stage" - -f.create_group("/entry/experiment_setup_1/sample_stage/environment_conditions") -f["/entry/experiment_setup_1/sample_stage/environment_conditions"].attrs["NX_class"] = ( - "NXenvironment" -) - -f["/entry/experiment_setup_1/sample_stage/environment_conditions/medium"] = "water" - - -f.create_group("/entry/silicon_substrate") -f["/entry/silicon_substrate"].attrs["NX_class"] = "NXsample" - -f["/entry/silicon_substrate/sample_name"] = "Si-111" - -f["/entry/silicon_substrate/sample_type"] = "thin film" - -f["/entry/silicon_substrate/layer_structure"] = "This is just a silicon wafer" - -f["/entry/silicon_substrate/chemical_formula"] = "Si" - -f["/entry/silicon_substrate/atom_types"] = "Si" - -f["/entry/silicon_substrate/sample_history"] = "This sample was found in the lab B123" - - -f.create_group("/entry/data_collection") -f["/entry/data_collection"].attrs["NX_class"] = "NXprocess" - -f["/entry/data_collection/data_identifier"] = "Nr. 1234" - -f["/entry/data_collection/data_type"] = "intensity" - - -f["/entry/data_collection/measured_data"] = [100, 3, 13] - - -f.create_group("/entry/plot") -f["/entry/plot"].attrs["NX_class"] = "NXdata" -f["/entry/plot/wavelength_x"] = np.arange(100) -f["/entry/plot/intensity_y"] = np.arange(3) -f["/entry/plot"].attrs["axes"] = "wavelength_x" -f["/entry/plot"].attrs["signal"] = "intensity_y" - - -# f['/entry/dataset_example/x'] = X -# f['/entry/dataset_example/y'] = np.sin(X) -# f['/entry/dataset_example/y'].attrs['signal'] = 'y' -# f['/entry/dataset_example/y'].attrs['axes'] = 'x' From b1b9291a443f3430c27b66c53162dd8f6f8e440d Mon Sep 17 00:00:00 2001 From: Ron Hildebrandt Date: Fri, 30 Aug 2024 09:33:55 +0200 Subject: [PATCH 08/33] include adjustments discussed with lukas, add installation notes nxvalidate, add testing validation --- docs/how-tos/create-nexus-files-by-python.md | 14 +- docs/how-tos/installation_notes_nxvalidate.md | 80 ++++++++ docs/how-tos/testing-validation-tools.md | 175 ++++++++++++++++++ docs/how-tos/validate-nexus-file.md | 6 +- 4 files changed, 268 insertions(+), 7 deletions(-) create mode 100644 docs/how-tos/installation_notes_nxvalidate.md create mode 100644 docs/how-tos/testing-validation-tools.md diff --git a/docs/how-tos/create-nexus-files-by-python.md b/docs/how-tos/create-nexus-files-by-python.md index 35b81fc33..1d0c47141 100644 --- a/docs/how-tos/create-nexus-files-by-python.md +++ b/docs/how-tos/create-nexus-files-by-python.md @@ -120,9 +120,11 @@ Go to "nexus\_definitions" (Step 2, Red box in the image) On the right side, you should see below "Releases" the "tags" (Red box in the image). Follow this link. -Copy the latest Tag, which should look similar to "v2024.02". Insert it as value for the "version" attribute. - +Copy the latest tag, which should look similar to "v2024.02". Insert it as value for the "version" attribute. +### Disclaimer: +It would be better, to specify this version tag to include as well the "GitHub commit id". In this way, a [pynxtools generated version tag](https://github.com/FAIRmat-NFDI/pynxtools/blob/c13716915bf8f69068c3b94d1423681b580fd437/src/pynxtools/_build_wrapper.py#L17) might look like this: +`v2022.07.post1.dev1278+g1d7000f4`. For simplicity, this is omitted here. @@ -147,8 +149,8 @@ The next required concept of [NXoptical_spectrsocopy](https://fairmat-nfdi.githu 5. The "NX\_CHAR" indicates the datatype. This should be a string: "The preferred string representation is UTF-8" (more information see [here]()). 6. The "NX\_CHAR" indicates that this is a datafield. It is NOT a group. - A group would have a link to a NeXus class (i.e. for "**ENTRY**: (required) [NXentry"]() to [a link with "classes" in it]()). - As it is a field, the link directs to a data type (i.e. [a link with "nxdl-types" in it]()). + A group is a NeXus class. "NXentry" is for example is a NeXus class, while "NX_CHAR" indicates the datatype of the field. + Wheter or not the underscore "_" is present after NX, indicates therefore if it is a NeXus class or datafield. Read the documentation at "▶ Specify the type of the optical experiment. ..." by extending it via click on the triangle symbol. You should see something like this: @@ -184,11 +186,11 @@ The first required group in NXoptical\_spectroscopy on the "ENTRY/" level is "** 7. The uppercase notation of "**INSTRUMENT**" means: - 1. You can give INSTRUMENT any name, such as "abc" or "Raman\_setup". + 1. You can give INSTRUMENT [almost](https://manual.nexusformat.org/datarules.html) any name, such as "abc" or "Raman\_setup" (see "regex" or regular expression). 2. You can create as many groups with the class NXinstrument as you want. Their names have to be different. - 3. For more information see the [NeXus rules]() + 3. For more information see the [NeXus rules](../learn/nexus-rules.md) The respective python code to implement a NXinstrument class (or equivalently in python group) with the name "experiment\_setup\_1" is: diff --git a/docs/how-tos/installation_notes_nxvalidate.md b/docs/how-tos/installation_notes_nxvalidate.md new file mode 100644 index 000000000..7c725ea41 --- /dev/null +++ b/docs/how-tos/installation_notes_nxvalidate.md @@ -0,0 +1,80 @@ + +This lists some notes for installation of nxvalidate on Ubuntu and Windows. For windows, the installation of the XML2 library was not sucessful. This should be possible, but could not reproduced yet. + + + +# cnxvalidate installation on Ubuntu 22.04 + +These commands install nxvaldiate on a fresh Ubuntu 22.04 system (tested with Linux running from USB stick). + +``` +sudo apt-get update +sudo apt-get install git +sudo apt-get install build-essential +sudo add-apt-repository universe +sudo apt-get install libhdf5-serial-dev +sudo apt-get -y install pkg-config +sudo apt upgrade -y +sudo apt-get -y install cmake +sudo apt-get install libxml2-dev + +mkdir nexusvalidate +cd nexusvalidate +git clone https://github.com/nexusformat/cnxvalidate.git +cd cnxvalidate/ +mkdir build +cd build/ +cmake ../ +make +``` + +# cnxvalidate installation on windows: + +## -- CMAKE + +[https://cmake.org/download/]() + +\--> [cmake-3.30.2-windows-x86\_64.msi]() + +Install with .msi + +## -- HDF5 + +Download **hdf5-1.14.4-2-win-vs2022\_**[**cl.zip**]()** from **[https://www.hdfgroup.org/downloads/hdf5/]() + +unzip the .zip file + +put the file into the folder + +``` +C:\hdf5 +``` + +(can be named differently, but no spaces are allowed for this path) + +``` +set PATH=%PATH%;C:\your\path\here\ +``` + +## -- libiconv + +[https://github.com/vovythevov/libiconv-cmake]() + +``` +git clone +``` + +cd to downloaded directory + +``` +mkdir build +cd build +cmake .. +``` + +## -- XML2 + +??? Unsolved... + +Please create GitHub issue [here](https://github.com/FAIRmat-NFDI/pynxtools/issues/new) if you could solve this. + diff --git a/docs/how-tos/testing-validation-tools.md b/docs/how-tos/testing-validation-tools.md new file mode 100644 index 000000000..8b4f36bd9 --- /dev/null +++ b/docs/how-tos/testing-validation-tools.md @@ -0,0 +1,175 @@ +# The shows the example of testing NeXus files with validation methods + +There are [different methods](validate-nexus-file.md), which can be used for file validation. + +- pynxtools (verify_nexus, read_nexus) +- nxvalidate +- punx + +Here some examples are shown for the respective methods, by using a pynxtools-ellips generated NeXus file. This generated file already contained some level of validation, as a generated and filled template for this NeXus application definition was used. + + +# 1. Example from pynxtools read_nexus function + +`read_nexus -f SiO2onSi.ellips.nxs > read_nexus_output_file.txt` +``` +NXellipsometry.nxdl.xml:/ENTRY/data_collection/data_software +NXprogram.nxdl.xml: +DEBUG: @url - IS NOT IN SCHEMA +#################################################### +NXellipsometry.nxdl.xml:/ENTRY/definition +NXoptical_spectroscopy.nxdl.xml:/ENTRY/definition +NXentry.nxdl.xml:/definition +DEBUG: @url - IS NOT IN SCHEMA +#################################################### +DEBUG: ===== GROUP (//entry/instrument/software_RC2 [NXellipsometry::/NXentry/NXinstrument/software_RC2]): +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +#################################################### +DEBUG: ===== FIELD (//entry/instrument/software_RC2/program): +DEBUG: value: b'CompleteEASE' +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +#################################################### +DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@url) +DEBUG: value: https://www.jawoollam.com/ellipsometry-software/completeease +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +#################################################### +DEBUG: ===== ATTRS (//entry/instrument/software_RC2/program@version) +DEBUG: value: 6.37 +DEBUG: classpath: ['NXentry', 'NXinstrument'] +DEBUG: NOT IN SCHEMA +#################################################### +``` +_Total 6 Errors_ +1. @url. Changing to @URL could fix this maybe. +2. Software_RC2 not detected as NXprogram. This is indeed not assigned. + +# 2. Example from pynxtools verify_nexus function + +` verify_nexus SiO2onSi.ellips.nxs` + +``` +WARNING: Field /entry/data_collection/Delta_50deg/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_50deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_60deg/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_60deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_70deg/@units written without documentation. +WARNING: Field /entry/data_collection/Delta_70deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_50deg/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_50deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_60deg/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_60deg_errors/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_70deg/@units written without documentation. +WARNING: Field /entry/data_collection/Psi_70deg_errors/@units written without documentation. +WARNING: Missing attribute: "/ENTRY/DATA/@axes" +WARNING: Missing attribute: "/ENTRY/DATA/@signal" +Invalid: The entry `entry` in file `SiO2onSi.ellips.nxs` is NOT a valid file according to the `NXellipsometry` application definition. +``` +_Total 14 Errors_ +_Total 3 Errors - without documentation_ +1. Psi+Delta with Unit+Errors written without doc. +2. Data @axes + @signal. May not find NXdata? Attributes are present in .nxs file. +3. entry not valid in NXellips. + + +# 3. Example from nxvalidate + +``PATH_TO_NX_VALIDATE_EXE/nxvalidate -l PATH_TO_FAIRMAT_NEXUS_DEF/nexus_definitions/ PATH_TO_NEXUS_FILE/SiO2onSi.ellips.nxs` +``` +definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { H5T_STD_I8LE; "FALSE" 0; "TRUE" 1; }" nxdlPath=/NXentry/NXinstrument/NXlens_opt/data_correction sev=error dataPath=/entry/instrument/focussing_probes/data_correction dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXbeam sev=error dataPath=/entry/instrument dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXinstrument/NXdetector sev=error dataPath=/entry/instrument dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_ENUM { H5T_STD_I8LE; "FALSE" 0; "TRUE" 1; }" nxdlPath=/NXentry/NXsample/backside_roughness sev=error dataPath=/entry/sample/backside_roughness dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXdata/measured_data sev=error dataPath=/entry/data_collection/measured_data dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Data type mismatch, expected NX_BOOLEAN, got H5T_STRING { STRSIZE H5T_VARIABLE; STRPAD H5T_STR_NULLTERM; CSET H5T_CSET_UTF8; CTYPE H5T_C_S1; }" nxdlPath=/NXentry/NXidentifier/is_persistent sev=error dataPath=/entry/experiment_identifier/is_persistent dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXdata sev=error dataPath=/entry dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +definition=NXellipsometry.nxdl.xml message="Required units attribute missing" nxdlPath=/NXentry/NXprocess/depolarization sev=error dataPath=/entry/derived_parameters/depolarization dataFile=/home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +9 errors and 85 warnings found when validating /home/ron/GitPynxtoolsValidation/nexus_files/SiO2onSi.ellips.nxs +``` +_Total 8 or 9 Errors_ +1. Datatype mismatch for Bools: "H5T_STRING" or "H5T_ENUM" instead of "NX_BOOLEAN". In NXlens_opt, backside_roughness and is_persistent. +2. NXbeam + NXdetector: Has a problem with " exists: [min, 1, max, infty]" +3. "/NXentry/NXdata/measured_data". Units are missing (unit should be NX_ANY). +4. It does not find the NXdata (in this file it is at /entry/data_collection/). +5. Depolarization is not assigned the unit NX_unitless. + +## nxvalidate Errors: + +1. "Data type mismatch, expected NX\_BOOLEAN" --> "NeXus interprets NX\_BOOLEAN differently than h5py. NeXus uses an integer of 1 byte for NX\_BOOLEAN. This is an int8 or uint8." --> [https://github.com/nexusformat/cnxvalidate/issues/34]() + +2. Required group missing for "NXbeam" and "NXdetector". Probem with NeXus requirement as given in the .yaml file by: "exists: [min, 1, max, infty]"? + +3. "Required units attribute missing" for entry/data\_collection/measured\_data --> ? unclear. Units are assigned in NeXus file. + +4. "Required group missing" for /entry ---> ? unclear. + + +## nxvalidate Warnings: + +I think warnings can be evoked by: (-t in front of the NeXus file): + +``` +~/FAIRmat/WorkshopNeXusValid02/nxvalidate/cnxvalidate/build$ ./nxvalidate -l /home/ron/FAIRmat/WorkshopNeXusValid02/nxvalidate/nexus_definitions/ -t SiO2onSi.ellips.nxs +``` + +Most of the warnings are not critical at all. Not sure if this is helpful at all: + +here are some examples of the "messages" of the warnings: + +1. "Optional group missing" + +2. "Optional field missing" + +3. "Optional attribute units missing" + +4. "Validating field" + +5. "Validating group" + +6. "Additional base class dataset name found" + +7. "Additional base class dataset address found" + +8. "Unknown dataset wavelength\_spectrum found" + +9. "Additional base class group notes of type NXnote found" + +10. "Additional base class group environment\_sample of type NXenvironment found" + + + + + + +# 4. Example from punx +`punx validate SiO2onSi.ellips.nxs` +Not possible, as only the NIAC NeXus definitoon can right now be used as reference. Unclear if the `punx install` functionality is working or still developed. + + +# Summary +| Error Message | origin | Error in .nxs file? | Error in validation tool? | +| ---------------- | ---| ------------------------ | ------------------------ | +| unit + error without doc | verify_nexus | ? | ? | +| no @signal @axes for NXdata | verify_nexus | no | yes | +| entry not valid in NXellips | verify_nexus | ? | ? | +| @url error | read_nexus | no | yes | +| Software_RC2 no NXprogram | read_nexus | yes | no | +| Bool Data types | nxvalidate | ? | ? | +| exists: [min, 1, max, infty] | nxvalidate | no | yes | +| Unit missing for measured_data| nxvalidate | yes | no | +| NXdata not present | nxvalidate | no | yes | +| No unit for depolarization | nxvalidate | yes | no | + + +### NOTE ### +Only the nxvalidate method seems to point out completely missing required concepts. + +I tested this with an empty NeXus file, in which only the "definition" was given (NXellipsometry and NXraman). + + + + + + diff --git a/docs/how-tos/validate-nexus-file.md b/docs/how-tos/validate-nexus-file.md index 0702bf889..1d873bd0d 100644 --- a/docs/how-tos/validate-nexus-file.md +++ b/docs/how-tos/validate-nexus-file.md @@ -327,7 +327,7 @@ and indicates the entry of the .nxs file, which is incorrect and what the respec # 3.1. Installation (Linux only) -This did not work for me on windows. (The problem was the software cmake couldn't fine the libxml2 library. Though, if you solve this, this maybe work on windows). +This [did not work for me on windows](/installation_notes_nxvalidate.md) (The problem was the software cmake couldn't fine the libxml2 library. Though, if you solve this, this maybe work on windows). Therefore: Use linux. @@ -779,6 +779,10 @@ This tutorial showed: 3. How to use them via Examples +### Recommended methods: + +As pynxtools verify_nexus method is right now in development, [not all situations are covered right now](/testing-validation-tools.md). Therefore, the most reliable method right now is a combination of _Human Manual Validation_ + _1-2 Software solutions_. + ### Pynxtools Parsers: For a specifically structured set of data, a parser can be written, which uses the meta data and a pre-structured meta data file, to create a NeXus file. Tough, the parser depends on: Experimental Technique and Setup and has therefore to be written invidiually. This is another functionallity of [pynxtools with plugins for the techniques](https://fairmat-nfdi.github.io/pynxtools/reference/plugins.html): From 3e9791418271099462f1ca1666c7544e3d3d2580 Mon Sep 17 00:00:00 2001 From: mkuehbach Date: Wed, 21 Aug 2024 10:16:41 +0200 Subject: [PATCH 09/33] Suggestion for fixing the unintentional situation that since v0.6 the dataconverter required a config file if it was called the classical way and in case no parameter yaml file was provided. For programmatically use of the converter the creation of an additional params file with only a few entries is unnecessary overhead especially when all cli arguments are available in the callers scope and thus the CLI call can be issues directly using the classical way dataconverter convert [INPUTFILES] options --- src/pynxtools/dataconverter/README.md | 2 +- src/pynxtools/dataconverter/convert.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/pynxtools/dataconverter/README.md b/src/pynxtools/dataconverter/README.md index c452fb472..e7239c2af 100644 --- a/src/pynxtools/dataconverter/README.md +++ b/src/pynxtools/dataconverter/README.md @@ -14,4 +14,4 @@ In order to understand the dataconverter, these pages might be particularly help - [Tutorial: Converting research data to NeXus](https://fairmat-nfdi.github.io/pynxtools/tutorial/converting-data-to-nexus.html) - [Built-in readers of pynxtools](https://fairmat-nfdi.github.io/pynxtools/reference/built-in-readers.html) - [Existing reader plugins for different experimental techniques](https://fairmat-nfdi.github.io/pynxtools/reference/plugins.html) -- [How-to guide for writing your own reader/plugin](https://fairmat-nfdi.github.io/pynxtools/how-tos/build-a-plugin.html) \ No newline at end of file +- [How-to guide for writing your own reader/plugin](https://fairmat-nfdi.github.io/pynxtools/how-tos/build-a-plugin.html) diff --git a/src/pynxtools/dataconverter/convert.py b/src/pynxtools/dataconverter/convert.py index b87a6f5f4..3be1e9f31 100644 --- a/src/pynxtools/dataconverter/convert.py +++ b/src/pynxtools/dataconverter/convert.py @@ -294,7 +294,7 @@ def main_cli(): ) @click.option( "--reader", - default="json_map", + default=None, type=click.Choice(get_names_of_all_readers(), case_sensitive=False), help=( "The reader to use. Examples are json_map or readers from a pynxtools plugin. " @@ -340,6 +340,7 @@ def main_cli(): ) @click.option( "--mapping", + default=None, help="Takes a .mapping.json file and converts data from given input files.", ) @click.option( From c69e4460cd7f807fa0acefa2e946e24ec81519f9 Mon Sep 17 00:00:00 2001 From: mkuehbach Date: Thu, 22 Aug 2024 11:00:58 +0200 Subject: [PATCH 10/33] Feedback from the discussion #404 --- src/pynxtools/dataconverter/convert.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/pynxtools/dataconverter/convert.py b/src/pynxtools/dataconverter/convert.py index 3be1e9f31..b87a6f5f4 100644 --- a/src/pynxtools/dataconverter/convert.py +++ b/src/pynxtools/dataconverter/convert.py @@ -294,7 +294,7 @@ def main_cli(): ) @click.option( "--reader", - default=None, + default="json_map", type=click.Choice(get_names_of_all_readers(), case_sensitive=False), help=( "The reader to use. Examples are json_map or readers from a pynxtools plugin. " @@ -340,7 +340,6 @@ def main_cli(): ) @click.option( "--mapping", - default=None, help="Takes a .mapping.json file and converts data from given input files.", ) @click.option( From 38686b1d88bb9c92eea9ac488283166b81b40f05 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Mon, 12 Aug 2024 17:36:06 +0200 Subject: [PATCH 11/33] basic structure for docs on building a reader --- docs/how-tos/build_a_reader.md | 263 +++++++++++++++++++++++++++++++++ 1 file changed, 263 insertions(+) create mode 100644 docs/how-tos/build_a_reader.md diff --git a/docs/how-tos/build_a_reader.md b/docs/how-tos/build_a_reader.md new file mode 100644 index 000000000..f2ee33ea6 --- /dev/null +++ b/docs/how-tos/build_a_reader.md @@ -0,0 +1,263 @@ +# How to build your own reader + +Your current data is not supported yet by the [built-in pynxtools readers](https://github.com/FAIRmat-NFDI/pynxtools/tree/master/src/pynxtools/dataconverter/readers) or any of the officially supported [pynxtools plugins](..\reference\plugins.md)? + +Don't worry, the following how-to will guide you how to write a reader your own data. + +## Getting started +You should start by creating a clean repository that implements the following structure (for a plugin called ```pynxtools-plugin```): +``` +pynxtools-plugin +├── .github/workflows +├── docs +│ ├── explanation +│ ├── how-tos +│ ├── reference +│ ├── tutorial +├── src +│ ├── pynxtools_plugin +│ ├── reader.py +├── _layouts +│ ├── default.html +│ └── post.html +├── tests +│ └── data +├── LICENSE +├── mkdocs.yaml +├── dev-requirements.txt +└── pyproject.toml +``` + +To identify `pynxtools-plugin` as a plugin for pynxtools, an entry point must be established: +``` +[project.entry-points."pynxtools.reader"] +myreader = "pynxtools_plugin.reader:MyDataReader" +``` + +Note: There is also a [cookiecutter template](https://github.com/FAIRmat-NFDI/pynxtools-plugin-template) available for creating your own pynxtools plugin, but this is currently not well-maintained. + + +## Writing a Reader + +The pynxtools converter allows extending support to other data formats by allowing extensions called readers. +The converter provides a dev platform to build a NeXus compatible reader by providing checking against a chosen NeXus Application Definition. + +After you have established the main structure, you can start writing your reader. The new reader shall be placed in `reader.py`. + +Then implement the reader function: + +```python +"""MyDataReader implementation for the DataConverter to convert mydata to NeXus.""" +from typing import Tuple, Any + +from pynxtools.dataconverter.readers.base.reader import BaseReader + +class MyDataReader(BaseReader): + """MyDataReader implementation for the DataConverter to convert mydata to NeXus.""" + + def read( + self, + template: dict = None, + file_paths: Tuple[str] = None, + objects: Tuple[Any] = None + ) -> dict: + """Reads data from given file and returns a filled template dictionary""" + # Fill the template + for path in file_paths: + print(path) + + template["/entry/instrument/scan"] = raw_scan_data + + return template + + +# This has to be set to allow the convert script to use this reader. Set it to "MyDataReader". +READER = MyDataReader + +``` + +The read function takes a template dictionary based on the provided NXDL file (similar to `dataconverter generate-template`) and the list of all the file paths the user provides. +The returned dictionary should contain keys that exist in the template as defined below. +The values of these keys have to be data objects to be populated in the output NeXus file. +They can be lists, numpy arrays, numpy bytes, numpy floats, numpy ints. Practically you can pass any value that can be handled by the `h5py` package. + +The dataconverter can be executed using: + +```console +user@box:~$ dataconverter --reader mydatareader --nxdl NXmynxdl --output path_to_output.nxs +``` + +### The reader template dictionary + +Example: + +```json +{ + "/entry/instrument/source/type": "None" +} +``` + +**Units**: If there is a field defined in the NXDL, the converter expects a filled in /data/@units entry in the template dictionary corresponding to the right /data field unless it is specified as NX_UNITLESS in the NXDL. Otherwise, you will get an exception. + +```json +{ + "/ENTRY[my_entry]/INSTRUMENT[my_instrument]/SOURCE[my_source]/data": "None", + "/ENTRY[my_entry]/INSTRUMENT[my_instrument]/SOURCE[my_source]/data/@units": "Should be set to a string value" +} +``` + +In case the NXDL does not define a `name` for the group the requested data belongs to, the template dictionary will list it as `/NAME_IN_NXDL[name_in_output_nexus]` +You can choose any name you prefer instead of the suggested name. This allows the reader function to repeat groups defined in the NXDL to be outputted to the NeXus file. + +```json +{ + "/ENTRY[my_entry]/INSTRUMENT[my_instrument]/SOURCE[my_source]/type": "None" +} +``` + +For attributes defined in the NXDL, the reader template dictionary will have the assosciated key with a "@" prefix to the attributes name at the end of the path: + +```json +{ + "/entry/instrument/source/@attribute": "None" +} +``` + +You can also define links by setting the value to sub dictionary object with key `link`: + +```python +template["/entry/instrument/source"] = {"link": "/path/to/source/data"} +``` + +For a given NXDL schema, you can generate an empty template with the command +```console +user@box:~$ dataconverter generate-template` --nxdl NXmynxdl +``` + + + + + +## How to use the built-in MultiFormatReader + +While building on the ```BaseReader``` allows for the most flexibility, in most cases it is desirable to implement a reader that can read in multiple file formats and then populate the template based on the read data. For this purpose, `pynxtools` has the [**`MultiFormatReader`**](https://github.com/FAIRmat-NFDI/pynxtools/blob/master/src/pynxtools/dataconverter/readers/multi/reader.py#L310), which can be readily extended for your own data. + +In case you want to make use of the `MultiFormatReader`, the following basic structure must be implemented. +```python +"""MyDataReader implementation for the DataConverter to convert mydata to NeXus.""" +from typing import Tuple, Any + +from pynxtools.dataconverter.readers.base.reader import ParseJsonCallbacks, MultiFormatReader + +class MyDataReader(MultiFormatReader): + """MyDataReader implementation for the DataConverter to convert mydata to NeXus.""" + + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + + self.extensions = { + ".yml": self.handle_eln_file, + ".yaml": self.handle_eln_file, + ".json": self.set_config_file, + # Here you must add functions for handling any other file extension + } +# This has to be set to allow the convert script to use this reader. Set it to "MyDataReader". +READER = MyDataReader +``` + +In order to understand the capabilities of the `MultiFormatReader` and which method you need to implement when extending it, we will have a look at its ```read``` method: +``` +def read( + self, + template: dict = None, + file_paths: Tuple[str] = None, + objects: Optional[Tuple[Any]] = None, + **kwargs, +) -> dict: + self.kwargs = kwargs + self.config_file = self.kwargs.get("config_file", self.config_file) + self.overwrite_keys = self.kwargs.get("overwrite_keys", self.overwrite_keys) +``` +### Template initialization and processing order +An empty `Template` object is initialized that later gets filled from the data files later. +``` + template = Template(overwrite_keys=self.overwrite_keys) + + def get_processing_order(path: str) -> Tuple[int, Union[str, int]]: + """ + Returns the processing order of the file. + """ + ext = os.path.splitext(path)[1] + if self.processing_order is None or ext not in self.processing_order: + return (1, ext) + return (0, self.processing_order.index(ext)) + + sorted_paths = sorted(file_paths, key=get_processing_order) +``` +If the reader has a `self.processing_order`, the input files get sorted in this order. If `self.overwrite_keys` is True, later files get precedent. +### Reading of input files +``` + for file_path in sorted_paths: + extension = os.path.splitext(file_path)[1].lower() + if extension not in self.extensions: + logger.warning( + f"File {file_path} has an unsupported extension, ignoring file." + ) + continue + if not os.path.exists(file_path): + logger.warning(f"File {file_path} does not exist, ignoring entry.") + continue + + template.update(self.extensions.get(extension, lambda _: {})(file_path)) +``` +This parts reads in the data from all data files. The `MultiFormatReader` has an `extensions` property, which is a dictionary that for each file extension calls a function that reads in data from files with that extension. If you have e.g. an HDF5 file, you would have to add a method for handling this type of file, i.e., `self.extensions[".hdf5"] = self.handle_hdf5`. Note that any of these methods take as input only the file path, e.g. +``` +def handle_eln_file(self, file_path: str) -> Dict[str, Any] +``` + +Note that for several input formats, standardized readers already exist within the `MultiFormatReader`. For example, YAML files can be parsed using the `pynxtools.dataconverter.readers.utils.parse_yml` function. + +### Setting default values in the template +``` + template.update(self.setup_template()) +``` +### Handling objects +``` + if objects is not None: + template.update(self.handle_objects(objects)) +``` +### Parsing the config file +``` + if self.config_file is not None: + self.config_dict = parse_flatten_json( + self.config_file, create_link_dict=False + ) +``` +### Data post processing +``` + self.post_process() +``` +### Filling the template from the read-in data +``` + if self.config_dict: + suppress_warning = kwargs.pop("suppress_warning", False) + template.update( + fill_from_config( + self.config_dict, + self.get_entry_names(), + self.callbacks, + suppress_warning=suppress_warning, + ) + ) + + return template +``` + + + + + + + + + From bede682d1903f65cb100d4ab3e19c8ba63ca0557 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Tue, 13 Aug 2024 15:43:35 +0200 Subject: [PATCH 12/33] update plugin docs --- docs/how-tos/build_a_reader.md | 263 ------------------------- docs/how-tos/media/convert_routine.svg | 3 + docs/index.md | 13 +- 3 files changed, 8 insertions(+), 271 deletions(-) delete mode 100644 docs/how-tos/build_a_reader.md create mode 100644 docs/how-tos/media/convert_routine.svg diff --git a/docs/how-tos/build_a_reader.md b/docs/how-tos/build_a_reader.md deleted file mode 100644 index f2ee33ea6..000000000 --- a/docs/how-tos/build_a_reader.md +++ /dev/null @@ -1,263 +0,0 @@ -# How to build your own reader - -Your current data is not supported yet by the [built-in pynxtools readers](https://github.com/FAIRmat-NFDI/pynxtools/tree/master/src/pynxtools/dataconverter/readers) or any of the officially supported [pynxtools plugins](..\reference\plugins.md)? - -Don't worry, the following how-to will guide you how to write a reader your own data. - -## Getting started -You should start by creating a clean repository that implements the following structure (for a plugin called ```pynxtools-plugin```): -``` -pynxtools-plugin -├── .github/workflows -├── docs -│ ├── explanation -│ ├── how-tos -│ ├── reference -│ ├── tutorial -├── src -│ ├── pynxtools_plugin -│ ├── reader.py -├── _layouts -│ ├── default.html -│ └── post.html -├── tests -│ └── data -├── LICENSE -├── mkdocs.yaml -├── dev-requirements.txt -└── pyproject.toml -``` - -To identify `pynxtools-plugin` as a plugin for pynxtools, an entry point must be established: -``` -[project.entry-points."pynxtools.reader"] -myreader = "pynxtools_plugin.reader:MyDataReader" -``` - -Note: There is also a [cookiecutter template](https://github.com/FAIRmat-NFDI/pynxtools-plugin-template) available for creating your own pynxtools plugin, but this is currently not well-maintained. - - -## Writing a Reader - -The pynxtools converter allows extending support to other data formats by allowing extensions called readers. -The converter provides a dev platform to build a NeXus compatible reader by providing checking against a chosen NeXus Application Definition. - -After you have established the main structure, you can start writing your reader. The new reader shall be placed in `reader.py`. - -Then implement the reader function: - -```python -"""MyDataReader implementation for the DataConverter to convert mydata to NeXus.""" -from typing import Tuple, Any - -from pynxtools.dataconverter.readers.base.reader import BaseReader - -class MyDataReader(BaseReader): - """MyDataReader implementation for the DataConverter to convert mydata to NeXus.""" - - def read( - self, - template: dict = None, - file_paths: Tuple[str] = None, - objects: Tuple[Any] = None - ) -> dict: - """Reads data from given file and returns a filled template dictionary""" - # Fill the template - for path in file_paths: - print(path) - - template["/entry/instrument/scan"] = raw_scan_data - - return template - - -# This has to be set to allow the convert script to use this reader. Set it to "MyDataReader". -READER = MyDataReader - -``` - -The read function takes a template dictionary based on the provided NXDL file (similar to `dataconverter generate-template`) and the list of all the file paths the user provides. -The returned dictionary should contain keys that exist in the template as defined below. -The values of these keys have to be data objects to be populated in the output NeXus file. -They can be lists, numpy arrays, numpy bytes, numpy floats, numpy ints. Practically you can pass any value that can be handled by the `h5py` package. - -The dataconverter can be executed using: - -```console -user@box:~$ dataconverter --reader mydatareader --nxdl NXmynxdl --output path_to_output.nxs -``` - -### The reader template dictionary - -Example: - -```json -{ - "/entry/instrument/source/type": "None" -} -``` - -**Units**: If there is a field defined in the NXDL, the converter expects a filled in /data/@units entry in the template dictionary corresponding to the right /data field unless it is specified as NX_UNITLESS in the NXDL. Otherwise, you will get an exception. - -```json -{ - "/ENTRY[my_entry]/INSTRUMENT[my_instrument]/SOURCE[my_source]/data": "None", - "/ENTRY[my_entry]/INSTRUMENT[my_instrument]/SOURCE[my_source]/data/@units": "Should be set to a string value" -} -``` - -In case the NXDL does not define a `name` for the group the requested data belongs to, the template dictionary will list it as `/NAME_IN_NXDL[name_in_output_nexus]` -You can choose any name you prefer instead of the suggested name. This allows the reader function to repeat groups defined in the NXDL to be outputted to the NeXus file. - -```json -{ - "/ENTRY[my_entry]/INSTRUMENT[my_instrument]/SOURCE[my_source]/type": "None" -} -``` - -For attributes defined in the NXDL, the reader template dictionary will have the assosciated key with a "@" prefix to the attributes name at the end of the path: - -```json -{ - "/entry/instrument/source/@attribute": "None" -} -``` - -You can also define links by setting the value to sub dictionary object with key `link`: - -```python -template["/entry/instrument/source"] = {"link": "/path/to/source/data"} -``` - -For a given NXDL schema, you can generate an empty template with the command -```console -user@box:~$ dataconverter generate-template` --nxdl NXmynxdl -``` - - - - - -## How to use the built-in MultiFormatReader - -While building on the ```BaseReader``` allows for the most flexibility, in most cases it is desirable to implement a reader that can read in multiple file formats and then populate the template based on the read data. For this purpose, `pynxtools` has the [**`MultiFormatReader`**](https://github.com/FAIRmat-NFDI/pynxtools/blob/master/src/pynxtools/dataconverter/readers/multi/reader.py#L310), which can be readily extended for your own data. - -In case you want to make use of the `MultiFormatReader`, the following basic structure must be implemented. -```python -"""MyDataReader implementation for the DataConverter to convert mydata to NeXus.""" -from typing import Tuple, Any - -from pynxtools.dataconverter.readers.base.reader import ParseJsonCallbacks, MultiFormatReader - -class MyDataReader(MultiFormatReader): - """MyDataReader implementation for the DataConverter to convert mydata to NeXus.""" - - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - - self.extensions = { - ".yml": self.handle_eln_file, - ".yaml": self.handle_eln_file, - ".json": self.set_config_file, - # Here you must add functions for handling any other file extension - } -# This has to be set to allow the convert script to use this reader. Set it to "MyDataReader". -READER = MyDataReader -``` - -In order to understand the capabilities of the `MultiFormatReader` and which method you need to implement when extending it, we will have a look at its ```read``` method: -``` -def read( - self, - template: dict = None, - file_paths: Tuple[str] = None, - objects: Optional[Tuple[Any]] = None, - **kwargs, -) -> dict: - self.kwargs = kwargs - self.config_file = self.kwargs.get("config_file", self.config_file) - self.overwrite_keys = self.kwargs.get("overwrite_keys", self.overwrite_keys) -``` -### Template initialization and processing order -An empty `Template` object is initialized that later gets filled from the data files later. -``` - template = Template(overwrite_keys=self.overwrite_keys) - - def get_processing_order(path: str) -> Tuple[int, Union[str, int]]: - """ - Returns the processing order of the file. - """ - ext = os.path.splitext(path)[1] - if self.processing_order is None or ext not in self.processing_order: - return (1, ext) - return (0, self.processing_order.index(ext)) - - sorted_paths = sorted(file_paths, key=get_processing_order) -``` -If the reader has a `self.processing_order`, the input files get sorted in this order. If `self.overwrite_keys` is True, later files get precedent. -### Reading of input files -``` - for file_path in sorted_paths: - extension = os.path.splitext(file_path)[1].lower() - if extension not in self.extensions: - logger.warning( - f"File {file_path} has an unsupported extension, ignoring file." - ) - continue - if not os.path.exists(file_path): - logger.warning(f"File {file_path} does not exist, ignoring entry.") - continue - - template.update(self.extensions.get(extension, lambda _: {})(file_path)) -``` -This parts reads in the data from all data files. The `MultiFormatReader` has an `extensions` property, which is a dictionary that for each file extension calls a function that reads in data from files with that extension. If you have e.g. an HDF5 file, you would have to add a method for handling this type of file, i.e., `self.extensions[".hdf5"] = self.handle_hdf5`. Note that any of these methods take as input only the file path, e.g. -``` -def handle_eln_file(self, file_path: str) -> Dict[str, Any] -``` - -Note that for several input formats, standardized readers already exist within the `MultiFormatReader`. For example, YAML files can be parsed using the `pynxtools.dataconverter.readers.utils.parse_yml` function. - -### Setting default values in the template -``` - template.update(self.setup_template()) -``` -### Handling objects -``` - if objects is not None: - template.update(self.handle_objects(objects)) -``` -### Parsing the config file -``` - if self.config_file is not None: - self.config_dict = parse_flatten_json( - self.config_file, create_link_dict=False - ) -``` -### Data post processing -``` - self.post_process() -``` -### Filling the template from the read-in data -``` - if self.config_dict: - suppress_warning = kwargs.pop("suppress_warning", False) - template.update( - fill_from_config( - self.config_dict, - self.get_entry_names(), - self.callbacks, - suppress_warning=suppress_warning, - ) - ) - - return template -``` - - - - - - - - - diff --git a/docs/how-tos/media/convert_routine.svg b/docs/how-tos/media/convert_routine.svg new file mode 100644 index 000000000..3cf339023 --- /dev/null +++ b/docs/how-tos/media/convert_routine.svg @@ -0,0 +1,3 @@ + + +
convert.py
convert.py
Generate Template
Generate Template
--nxdl
--nxdl
The NXDL used for conversion.
The NXDL used for...
Select Reader
Select Reader
--reader
--reader
The reader ID sent in from the command line.
The reader ID sent...
Reader Data
Reader Data
The flat dictionary sent back by the read func.
The flat dictionar...
Call the writer function
Call the writer funct...
--input_file (1..n)
--input_file (1....
The input data file paths sent in from the command line.
The input data fil...
--output
--output
The output filename
The output filen...
Output NeXus file
Output NeXus file
Call the read func of selected reader
Call the read func of...
Viewer does not support full SVG 1.1
\ No newline at end of file diff --git a/docs/index.md b/docs/index.md index 75c3c90bf..276f0ed91 100644 --- a/docs/index.md +++ b/docs/index.md @@ -35,20 +35,17 @@ A series of tutorials giving you an overview on how to store or convert your dat How-to guides provide step-by-step instructions for a wide range of tasks. -- [Writing an application definition](how-tos/writing-an-appdef.md) -- [Storing data in multiple application definitions](how-tos/using-multiple-appdefs.md) - [Build your own pynxtools plugin](how-tos/build-a-plugin.md) - [Implement a reader based on the MultiFormatReader](how-tos/use-multi-format-reader.md) -- [Representing experimental geometries](how-tos/transformations.md) -- [Using pynxtools test framework](how-tos/using-pynxtools-test-framework.md) -- [Creation of NeXus files by Python](how-tos/create-nexus-files-by-python.md) - [Validation of NeXus files](how-tos/validate-nexus-file.md) +- [Creation of NeXus files by hard-coding-in-python](how-tos/create-nexus-files-by-python.md) +- [Using pynxtools test framework](how-tos/using-pynxtools-test-framework.md) __The following How-To guides are still under development:__ -- Writing an application definition -- Storing data in multiple application definitions -- Representing experimental geometries +- [Writing an application definition](how-tos/writing-an-appdef.md) +- [Storing data in multiple application definitions](how-tos/using-multiple-appdefs.md) +- [Representing experimental geometries](how-tos/transformations.md)

From 209ce2793f5c07a1a2ef10e83950189ab71ca57c Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Mon, 19 Aug 2024 13:52:14 +0200 Subject: [PATCH 13/33] split how-to and explanation for multiformat reader --- docs/index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/index.md b/docs/index.md index 276f0ed91..cd975146f 100644 --- a/docs/index.md +++ b/docs/index.md @@ -58,6 +58,7 @@ __The following How-To guides are still under development:__ - [An introduction to NeXus](learn/nexus-primer.md) - [Rules for storing data in NeXus](learn/nexus-rules.md) - [The concept of multiple application definitions](learn/multiple-appdefs.md) +- [The MultiFormatReader as a reader superclass](learn/multi-format-reader.md) #### pynxtools From ae72d3aad7a208d57c05bf2bed8995483b0c68e8 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Mon, 19 Aug 2024 18:29:39 +0200 Subject: [PATCH 14/33] split off multi format reader use how-to --- docs/how-tos/media/convert_routine.svg | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 docs/how-tos/media/convert_routine.svg diff --git a/docs/how-tos/media/convert_routine.svg b/docs/how-tos/media/convert_routine.svg deleted file mode 100644 index 3cf339023..000000000 --- a/docs/how-tos/media/convert_routine.svg +++ /dev/null @@ -1,3 +0,0 @@ - - -
convert.py
convert.py
Generate Template
Generate Template
--nxdl
--nxdl
The NXDL used for conversion.
The NXDL used for...
Select Reader
Select Reader
--reader
--reader
The reader ID sent in from the command line.
The reader ID sent...
Reader Data
Reader Data
The flat dictionary sent back by the read func.
The flat dictionar...
Call the writer function
Call the writer funct...
--input_file (1..n)
--input_file (1....
The input data file paths sent in from the command line.
The input data fil...
--output
--output
The output filename
The output filen...
Output NeXus file
Output NeXus file
Call the read func of selected reader
Call the read func of...
Viewer does not support full SVG 1.1
\ No newline at end of file From 7d03b9fe26566b543066a6b32e9dde51e75d0284 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Tue, 20 Aug 2024 18:08:33 +0200 Subject: [PATCH 15/33] use dynamic generation of help call in mkdocs --- .github/workflows/build_docs.yml | 1 + docs/how-tos/build-a-plugin.md | 5 ++++- mkdocs.yaml | 3 +++ scripts/generate_dataconverter_help.py | 16 ++++++++++++++++ 4 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 scripts/generate_dataconverter_help.py diff --git a/.github/workflows/build_docs.yml b/.github/workflows/build_docs.yml index f26824c20..26e06d338 100644 --- a/.github/workflows/build_docs.yml +++ b/.github/workflows/build_docs.yml @@ -4,6 +4,7 @@ on: push: branches: - master # Triggers deployment on push to the main branch + - 398-add-documentation-pages-for-multi-format-reader env: UV_SYSTEM_PYTHON: true diff --git a/docs/how-tos/build-a-plugin.md b/docs/how-tos/build-a-plugin.md index 9f4f6b1e0..127f80095 100644 --- a/docs/how-tos/build-a-plugin.md +++ b/docs/how-tos/build-a-plugin.md @@ -2,8 +2,11 @@ The pynxtools [dataconverter](https://github.com/FAIRmat-NFDI/pynxtools/tree/master/src/pynxtools/dataconverter) is used to convert experimental data to NeXus/HDF5 files based on any provided [NXDL schemas](https://manual.nexusformat.org/nxdl.html#index-1). The converter allows extending support to other data formats by allowing extensions called `readers`. There exist a set of [built-in pynxtools readers](https://github.com/FAIRmat-NFDI/pynxtools/tree/master/src/pynxtools/dataconverter/readers) as well as [pynxtools plugins](../reference/plugins.md) to convert supported data files for some experimental techniques into compliant NeXus files. +<<<<<<< HEAD Your current data is not supported yet by the built-in pynxtools readers or the officially supported pynxtools plugins? +======= +>>>>>>> f3b1b966 (use dynamic generation of help call in mkdocs) Don't worry, the following how-to will guide you through the steps of writing a reader for your own data. @@ -162,4 +165,4 @@ dataconverter call. Here is its API: :prog_name: dataconverter :depth: 2 :style: table - :list_subcommands: True \ No newline at end of file + :list_subcommands: True diff --git a/mkdocs.yaml b/mkdocs.yaml index 816e6fe8c..ddb1ee80e 100644 --- a/mkdocs.yaml +++ b/mkdocs.yaml @@ -39,6 +39,9 @@ plugins: - macros: module_name: src/pynxtools/mkdocs +hooks: + - scripts/generate_dataconverter_help.py + theme: name: material palette: diff --git a/scripts/generate_dataconverter_help.py b/scripts/generate_dataconverter_help.py new file mode 100644 index 000000000..bbb53667f --- /dev/null +++ b/scripts/generate_dataconverter_help.py @@ -0,0 +1,16 @@ +import subprocess +from pathlib import Path + +# Run the command and capture the output +result = subprocess.run( + ["dataconverter", "--help"], capture_output=True, text=True, check=False +) + +# Write the output to a new Markdown file +output_file = Path(__file__).parent.parent.joinpath( + "docs", "how-tos", "dataconverter_help_output.md" +) +with open(output_file, "w") as f: + f.write("```shell\n") + f.write(result.stdout) + f.write("```\n") From 331f392c1e4164b10b7308a2683883ac8bc18e64 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Wed, 21 Aug 2024 17:20:19 +0200 Subject: [PATCH 16/33] address review comments --- .gitignore | 1 + docs/how-tos/build-a-plugin.md | 3 --- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index bd139eea0..42abff368 100644 --- a/.gitignore +++ b/.gitignore @@ -202,6 +202,7 @@ cython_debug/ !dev-requirements.txt !mkdocs-requirements.txt !src/pynxtools/nexus-version.txt +docs/how-tos/dataconverter_help_output.md build/ nexusparser.egg-info/PKG-INFO .python-version diff --git a/docs/how-tos/build-a-plugin.md b/docs/how-tos/build-a-plugin.md index 127f80095..863ab1137 100644 --- a/docs/how-tos/build-a-plugin.md +++ b/docs/how-tos/build-a-plugin.md @@ -2,11 +2,8 @@ The pynxtools [dataconverter](https://github.com/FAIRmat-NFDI/pynxtools/tree/master/src/pynxtools/dataconverter) is used to convert experimental data to NeXus/HDF5 files based on any provided [NXDL schemas](https://manual.nexusformat.org/nxdl.html#index-1). The converter allows extending support to other data formats by allowing extensions called `readers`. There exist a set of [built-in pynxtools readers](https://github.com/FAIRmat-NFDI/pynxtools/tree/master/src/pynxtools/dataconverter/readers) as well as [pynxtools plugins](../reference/plugins.md) to convert supported data files for some experimental techniques into compliant NeXus files. -<<<<<<< HEAD Your current data is not supported yet by the built-in pynxtools readers or the officially supported pynxtools plugins? -======= ->>>>>>> f3b1b966 (use dynamic generation of help call in mkdocs) Don't worry, the following how-to will guide you through the steps of writing a reader for your own data. From 04fa7f73ec305c2ebced1767af62dbe60f4e5ee8 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Wed, 21 Aug 2024 17:29:12 +0200 Subject: [PATCH 17/33] checks for dataconverter --help docs --- .github/workflows/build_docs.yml | 4 ++++ scripts/generate_dataconverter_help.py | 2 ++ 2 files changed, 6 insertions(+) diff --git a/.github/workflows/build_docs.yml b/.github/workflows/build_docs.yml index 26e06d338..155b58df2 100644 --- a/.github/workflows/build_docs.yml +++ b/.github/workflows/build_docs.yml @@ -46,6 +46,10 @@ jobs: curl -LsSf https://astral.sh/uv/install.sh | sh uv pip install --no-cache-dir ".[docs]" + - name: Check dataconverter Installation + run: | + dataconverter --help + - name: Build and Deploy run: | mkdocs gh-deploy --force --remote-branch gh-pages \ No newline at end of file diff --git a/scripts/generate_dataconverter_help.py b/scripts/generate_dataconverter_help.py index bbb53667f..bf0a02520 100644 --- a/scripts/generate_dataconverter_help.py +++ b/scripts/generate_dataconverter_help.py @@ -6,6 +6,8 @@ ["dataconverter", "--help"], capture_output=True, text=True, check=False ) +print(result.stdout) + # Write the output to a new Markdown file output_file = Path(__file__).parent.parent.joinpath( "docs", "how-tos", "dataconverter_help_output.md" From cd5f8cbd6f523b24438f0ed5ac943f1d6128d4be Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Thu, 22 Aug 2024 11:02:56 +0200 Subject: [PATCH 18/33] use no-cache-dir in docs install --- .github/workflows/build_docs.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/build_docs.yml b/.github/workflows/build_docs.yml index 155b58df2..789620b95 100644 --- a/.github/workflows/build_docs.yml +++ b/.github/workflows/build_docs.yml @@ -4,7 +4,6 @@ on: push: branches: - master # Triggers deployment on push to the main branch - - 398-add-documentation-pages-for-multi-format-reader env: UV_SYSTEM_PYTHON: true From a157918a8322a25a2fa3b0436e86c5f1eb9ad650 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Thu, 22 Aug 2024 11:40:29 +0200 Subject: [PATCH 19/33] build docs from feature branch --- .github/workflows/build_docs.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build_docs.yml b/.github/workflows/build_docs.yml index 789620b95..155b58df2 100644 --- a/.github/workflows/build_docs.yml +++ b/.github/workflows/build_docs.yml @@ -4,6 +4,7 @@ on: push: branches: - master # Triggers deployment on push to the main branch + - 398-add-documentation-pages-for-multi-format-reader env: UV_SYSTEM_PYTHON: true From a90ccc154e86ed0fc410f1b16f37331d03184381 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Thu, 22 Aug 2024 12:23:56 +0200 Subject: [PATCH 20/33] clean up docs CI/CD workflow --- .github/workflows/build_docs.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/workflows/build_docs.yml b/.github/workflows/build_docs.yml index 155b58df2..f26824c20 100644 --- a/.github/workflows/build_docs.yml +++ b/.github/workflows/build_docs.yml @@ -4,7 +4,6 @@ on: push: branches: - master # Triggers deployment on push to the main branch - - 398-add-documentation-pages-for-multi-format-reader env: UV_SYSTEM_PYTHON: true @@ -46,10 +45,6 @@ jobs: curl -LsSf https://astral.sh/uv/install.sh | sh uv pip install --no-cache-dir ".[docs]" - - name: Check dataconverter Installation - run: | - dataconverter --help - - name: Build and Deploy run: | mkdocs gh-deploy --force --remote-branch gh-pages \ No newline at end of file From e8fbb8dc5b1fa8dbadb4049f74846c5a16b3c2a2 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Fri, 23 Aug 2024 16:58:17 +0200 Subject: [PATCH 21/33] add docs for CLI API --- .gitignore | 1 - mkdocs.yaml | 7 ++++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 42abff368..bd139eea0 100644 --- a/.gitignore +++ b/.gitignore @@ -202,7 +202,6 @@ cython_debug/ !dev-requirements.txt !mkdocs-requirements.txt !src/pynxtools/nexus-version.txt -docs/how-tos/dataconverter_help_output.md build/ nexusparser.egg-info/PKG-INFO .python-version diff --git a/mkdocs.yaml b/mkdocs.yaml index ddb1ee80e..846cf5947 100644 --- a/mkdocs.yaml +++ b/mkdocs.yaml @@ -39,9 +39,6 @@ plugins: - macros: module_name: src/pynxtools/mkdocs -hooks: - - scripts/generate_dataconverter_help.py - theme: name: material palette: @@ -85,6 +82,10 @@ markdown_extensions: extra: generator: false homepage: https://nomad-lab.eu + click: + show_subcommands: true + show_options: true + show_help: true use_directory_urls: false From 629dcaa378560ecdc2c8ecb6d99d9fd4d0a7d4f5 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Fri, 23 Aug 2024 17:10:39 +0200 Subject: [PATCH 22/33] clean up mkdocs.yaml --- mkdocs.yaml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/mkdocs.yaml b/mkdocs.yaml index 846cf5947..816e6fe8c 100644 --- a/mkdocs.yaml +++ b/mkdocs.yaml @@ -82,10 +82,6 @@ markdown_extensions: extra: generator: false homepage: https://nomad-lab.eu - click: - show_subcommands: true - show_options: true - show_help: true use_directory_urls: false From 54aaa5acdada1181df7ae1cf4ec67a356c97b7e8 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Tue, 27 Aug 2024 09:23:59 +0200 Subject: [PATCH 23/33] remove unneeded doc generation script --- scripts/generate_dataconverter_help.py | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 scripts/generate_dataconverter_help.py diff --git a/scripts/generate_dataconverter_help.py b/scripts/generate_dataconverter_help.py deleted file mode 100644 index bf0a02520..000000000 --- a/scripts/generate_dataconverter_help.py +++ /dev/null @@ -1,18 +0,0 @@ -import subprocess -from pathlib import Path - -# Run the command and capture the output -result = subprocess.run( - ["dataconverter", "--help"], capture_output=True, text=True, check=False -) - -print(result.stdout) - -# Write the output to a new Markdown file -output_file = Path(__file__).parent.parent.joinpath( - "docs", "how-tos", "dataconverter_help_output.md" -) -with open(output_file, "w") as f: - f.write("```shell\n") - f.write(result.stdout) - f.write("```\n") From 0213b0dc20963406db900e327ed2182ccf884dfb Mon Sep 17 00:00:00 2001 From: Ron Hildebrandt Date: Tue, 27 Aug 2024 12:55:59 +0200 Subject: [PATCH 24/33] split How-To in 2 parts, include PR comments/critique --- docs/index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/index.md b/docs/index.md index cd975146f..42940a639 100644 --- a/docs/index.md +++ b/docs/index.md @@ -35,6 +35,7 @@ A series of tutorials giving you an overview on how to store or convert your dat How-to guides provide step-by-step instructions for a wide range of tasks. + - [Build your own pynxtools plugin](how-tos/build-a-plugin.md) - [Implement a reader based on the MultiFormatReader](how-tos/use-multi-format-reader.md) - [Validation of NeXus files](how-tos/validate-nexus-file.md) From 06282b995affde397bb8a5ce20d4c7abc1f7d79a Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Fri, 30 Aug 2024 14:26:54 +0200 Subject: [PATCH 25/33] fix rebase issues --- docs/how-tos/build-a-plugin.md | 2 +- docs/index.md | 4 ++-- docs/learn/nexus-validation.md | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/how-tos/build-a-plugin.md b/docs/how-tos/build-a-plugin.md index 863ab1137..9f4f6b1e0 100644 --- a/docs/how-tos/build-a-plugin.md +++ b/docs/how-tos/build-a-plugin.md @@ -162,4 +162,4 @@ dataconverter call. Here is its API: :prog_name: dataconverter :depth: 2 :style: table - :list_subcommands: True + :list_subcommands: True \ No newline at end of file diff --git a/docs/index.md b/docs/index.md index 42940a639..8de7a667f 100644 --- a/docs/index.md +++ b/docs/index.md @@ -39,8 +39,8 @@ How-to guides provide step-by-step instructions for a wide range of tasks. - [Build your own pynxtools plugin](how-tos/build-a-plugin.md) - [Implement a reader based on the MultiFormatReader](how-tos/use-multi-format-reader.md) - [Validation of NeXus files](how-tos/validate-nexus-file.md) -- [Creation of NeXus files by hard-coding-in-python](how-tos/create-nexus-files-by-python.md) -- [Using pynxtools test framework](how-tos/using-pynxtools-test-framework.md) +- [Creation of NeXus files in python via hard-coding ](how-tos/create-nexus-files-by-python.md) +- [Using pynxtools test framework for plugins](how-tos/using-pynxtools-test-framework.md) __The following How-To guides are still under development:__ diff --git a/docs/learn/nexus-validation.md b/docs/learn/nexus-validation.md index 02a4b91a5..833f2158f 100644 --- a/docs/learn/nexus-validation.md +++ b/docs/learn/nexus-validation.md @@ -38,7 +38,7 @@ MSYS_NO_PATHCONV=1 read_nexus -c /NXarpes/ENTRY/INSTRUMENT/analyser This workaround was tested with Windows 11, but should very likely also work with Windows 10 and lower. ## Other approaches (not part of pynxtools) -Aside from the tools we developed within FAIRmat, the [official NeXus website](https://manual.nexusformat.org/validation.htm) listed two more programs for the validation of NeXus files: +Aside from the tools we developed within FAIRmat, the [official NeXus website](https://manual.nexusformat.org/validation.htm) lists two more programs for the validation of NeXus files: 1. nxvalidate 2. punx \ No newline at end of file From 4203a4af20ebe084a3db05395969132f2a8beedf Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Fri, 30 Aug 2024 14:27:14 +0200 Subject: [PATCH 26/33] typo fixes --- docs/how-tos/validate-nexus-file.md | 83 +++++++++++++---------------- 1 file changed, 36 insertions(+), 47 deletions(-) diff --git a/docs/how-tos/validate-nexus-file.md b/docs/how-tos/validate-nexus-file.md index 1d873bd0d..7bd6db7a0 100644 --- a/docs/how-tos/validate-nexus-file.md +++ b/docs/how-tos/validate-nexus-file.md @@ -1,4 +1,6 @@ -# Validate NeXus files +# Validating NeXus files + +Note: This is a how-to guide for using different tools to validate NeXus files. If you want to learn more about how validation is done in `pynxtools`, please visit the [explanation page](../learn/nexus-validation.md). # The goal @@ -9,25 +11,21 @@ Use a tool to validate NeXus files to a given set of NeXus definitions: 2. [NIAC](https://manual.nexusformat.org/) - # Validation of a .nxs file -The validity of NeXus file is fundamental, to ensure FAIR data. Without specific requirements, it is not possible to understand the data. What type of experiment? What Laser Wavelength? Which voltage? What data is represented at all in the table? What is the unit of the value? Which ISO norm does this refer to? Where was this measured? Which year was this measured? +The validity of NeXus files is fundamental to ensure FAIR data. Without specific requirements, it is not possible to understand the data. What type of experiment? What Laser Wavelength? Which voltage? What data is represented at all in the table? What is the unit of the value? Which ISO norm does this refer to? Where was this measured? Which year was this measured? Therefore you have enter all required fields in the NeXus definition. The requirements are set by the community via workshops or at conferences. You can as well comment the NeXus definitions, to initiate or propose changes/additions. Go to the NeXus definition, and sign-up/log-in and give us some feedback (Red boxes in the image. Expand this panel on the left by clicking on the arrow symbol). ![image.png](<./attachments/9d748230d54a8059-image.png>) -ftentimes, there will be errors in a generated NeXus file (be it by hand or automatically): Typos, missing required concepts, missing attributes, using the incorrect datatype or format (e.g., array instad of list, float instead of integer, etc.). Therefore, a validation is required, to ensure that the data you want to share, is FAIR. +Oftentimes, there will be errors in a generated NeXus file (be it by hand or automatically): Typos, missing required concepts, missing attributes, using the incorrect datatype or format (e.g., array instad of list, float instead of integer, etc.). Therefore, a validation is required, to ensure that the data you want to share, is FAIR. -The NeXus file is valid, if it complies with the respective NeXus application definition. +The NeXus file is valid if it complies with the respective NeXus application definition. This validation is done by software. - - - -# 1. Validation software +# Validation software There are right now three tools, which can be used for validation of NeXus files. All are different and have individual advantages or disadvantages: @@ -37,41 +35,34 @@ There are right now three tools, which can be used for validation of NeXus files 3. punx - Open software is usually shared on Github - There you find usually the most accurate information, as documentation sometimes lags behind. There you see a box with folders and files. Below is the content of the README.md file displayed. This usually shows instructions for installation and handling of the software. Here are the GitHub links for the thee software packages: +[pynxtools]() + [cnxvalidate]() [punx]() -[pynxtools]() - In the following, each package and its capabilities is presented. ### Operating systems Almost all PC users are used to Windows as operating system. -A lot of Software development is done on Linux as operating system. +A lot of software development is done on Linux as operating system. -This is not a problem for big company, but for smaller open software projects, which ared often developed without funding, this is a problem. +This is not a problem for big companies, but for smaller open software projects, which are often developed without funding, this is a problem. If you are used to Windows, consider setting up a Linux operating system to eliminate problems in the installation process and ensure compatibility. +# 1. pynxtools - Python Nexus Tools +This is a python package which is developed by the FAIRmat consortium. - - - - -# 2 pynxtools - Python Nexus Tools - -This is python package which is developed by the FAIRmat consortium. - -As python package, this can be used on Linux and Windows systems. +As a python package, this can be used on Linux and Windows systems. The package can be installed via pip. Therefore you need to have installed: @@ -92,7 +83,7 @@ This tool has 3 command line functions: For validation purposes, we will use the "read\_nexus" and "verify\_nexus" function. -# 2.1 verify_nexus +# 1.1 verify_nexus This tool is currently in development. It enables a command like: @@ -101,16 +92,16 @@ verify_nexus C:\nexusvalidation\Raman.nxs ``` -The outpu warning looks like this: +The output warning looks like this: ``` ... WARNING: Field /entry/instrument/beam_incident/wavelength/@units written without documentation. ... ``` -# 2.1.1 Installation verfiy_nexus +# 1.1.1 Installation of verify_nexus -Aside of read_nexus, there is a second functionality from pynxtools. This method is currently in development (Aug 2024). This function is called: verify\_nexus. Therefore, you have to use the development install, until this function is published. +Aside from read_nexus, there is a second functionality from pynxtools. This method is currently in development (Aug 2024). This function is called: verify\_nexus. Therefore, you have to use the development install, until this function is published. Do this to install pynxtools with verify\_nexus @@ -143,7 +134,7 @@ Options: ``` -# 2.1.2 Using verify\_nexus +# 1.1.2 Using verify_nexus Open your terminal. Assuming there is a folder at: @@ -159,9 +150,9 @@ For Windows: C:\nexusvalidation ``` -Put into this folder your NeXus file, for example the [Raman.nxs file](https://zenodo.org/records/13373909/files/Raman.nxs?download=1). +Put into this folder your NeXus file, for example this [Raman.nxs file](https://zenodo.org/records/13373909/files/Raman.nxs?download=1). -Use verify nexus with the command: +Use verify_nexus with the command: ``` verify_nexus C:\nexusvalidation\Raman.nxs @@ -179,9 +170,7 @@ Invalid: The entry `entry` in file `Raman.nxs` is NOT a valid file according to ``` - - -# 2.2 read_nexus +# 1.2 read_nexus The command used is: @@ -230,7 +219,7 @@ The second example was for the "software\_TYPE" attribute @URL entry in the "NXo -# 2.2.1 Installation read_nexus +# 1.2.1 Installation of read_nexus This is installed with pip: @@ -239,7 +228,7 @@ pip install pynxtools ``` -# 2.2.2 Using the read\_nexus function +# 1.2.2 Using the read_nexus function Open your terminal. Assuming there is a folder at: @@ -288,7 +277,7 @@ For Axis #0, 1 axes have been identified: [] ``` -Search for filed which are not found in the NeXus definiton by searching for the line: "DEBUG: NOT IN SCHEMA". Recheck the used NeXus definition to eliminate the problem. Be careful with upper and lower case notation and correct spelling. +Search for fields which are not found in the NeXus definition by searching for the line: "DEBUG: NOT IN SCHEMA". Recheck the used NeXus definition to eliminate the problem. Be careful with upper and lower case notation and correct spelling. Keep in mind, that the output provides quite some information. This is useful for software development, but may be a bit too much for validation purposes. @@ -303,7 +292,7 @@ Similar features as the tables and messages provided from punx and cnxvalidate f -# 3. cnxvalidate +# 2. cnxvalidate This package is written in C. It is allows a command line evocation like: @@ -325,7 +314,7 @@ definition=NXoptical_spectroscopy.nxdl.xml message="Required attribute URL missi and indicates the entry of the .nxs file, which is incorrect and what the respective problem is. It also points to the NeXus definition (.nxdl.xml file), in which this conflict was found. -# 3.1. Installation (Linux only) +# 2.1. Installation (Linux only) This [did not work for me on windows](/installation_notes_nxvalidate.md) (The problem was the software cmake couldn't fine the libxml2 library. Though, if you solve this, this maybe work on windows). @@ -335,7 +324,7 @@ The installation process has to be build from source. This is eased significantl ### Install cmake, github, hdf5 & xml2 library, etc: -open the terminal and install all parts required to install cnxvalidate via cmake: +Open the terminal and install all parts required to install cnxvalidate via cmake: ``` sudo apt-get update @@ -425,7 +414,7 @@ Now the above mentioned commands should be avaialble. The programm/executable is /home/USER/nexusvalidation/cnxvalidate/build/nxvalidate ``` -# 3.2. Using cnxvalidate +# 2.2. Using cnxvalidate Now you can start to validate your created [NeXus file](https://zenodo.org/records/13373909). But before the validation, we need to get a set of NeXus definitions, which we want to use as reference. This is done again by using git: @@ -510,7 +499,7 @@ Now adjust the file creation, and add the respective fields to make your NeXus f -# 4. Punx - Python Utilities for NeXus HDF5 files +# 3. Punx - Python Utilities for NeXus HDF5 files This is python package, and can therefore be used on Linux and Windows systems. @@ -535,7 +524,7 @@ This is done by replacing REPORT with ={COMMENT,ERROR,NOTE,OK,TODO,UNUSED,WARN} [Official docs]() -# 4.1 Installation +# 3.1 Installation Open the terminal and install punx via pip: @@ -650,7 +639,7 @@ Then you should be able to use this package. Official docs for [punx installation]() -# 4.2. Using punx +# 3.2. Using punx Open your terminal. Assuming there is a folder at: @@ -682,7 +671,7 @@ punx validate C:\nexusvalidation\SiO2onSi.ellips.nxs The output tables "findings" and "summary statistics" can be used to find error present in the NeXus file. -# 4.3. Example +# 3.3. Example ### Which NeXus definition? @@ -756,7 +745,7 @@ The last error message: can be ignored and is a bug right now. If this is the only Error message, then your NeXus file is compliant with the NeXus definitions and you can share and publish your data. -# 4.4. Further Notes +# 3.4. Further Notes 1. Punx only uses the NeXus definiton from the NIAC [NeXus definiton from the NIAC](). The use of the [FAIRmat NeXus definition]() is not possible right now. @@ -781,11 +770,11 @@ This tutorial showed: ### Recommended methods: -As pynxtools verify_nexus method is right now in development, [not all situations are covered right now](/testing-validation-tools.md). Therefore, the most reliable method right now is a combination of _Human Manual Validation_ + _1-2 Software solutions_. +As pynxtools verify_nexus method is right now in development, [not all situations are covered right now](/testing-validation-tools.md). Therefore, the most reliable method right now is a combination of _Human Manual Validation_ + _Software solutions_. ### Pynxtools Parsers: -For a specifically structured set of data, a parser can be written, which uses the meta data and a pre-structured meta data file, to create a NeXus file. Tough, the parser depends on: Experimental Technique and Setup and has therefore to be written invidiually. This is another functionallity of [pynxtools with plugins for the techniques](https://fairmat-nfdi.github.io/pynxtools/reference/plugins.html): +For a specifically structured set of data, a parser can be written, which uses the meta data and a pre-structured meta data file, to create a NeXus file. Tough, the parser depends on: Experimental Technique and Setup and has therefore to be written individually. This is another functionallity of [pynxtools with plugins for the techniques](https://fairmat-nfdi.github.io/pynxtools/reference/plugins.html): [electron microscopy (EM)]() From e34016943330b8c8f0ddb676855cdb5245d17159 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Fri, 30 Aug 2024 14:29:58 +0200 Subject: [PATCH 27/33] remove whitespace in docs/index.md --- docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/index.md b/docs/index.md index 8de7a667f..5a5becf9e 100644 --- a/docs/index.md +++ b/docs/index.md @@ -39,7 +39,7 @@ How-to guides provide step-by-step instructions for a wide range of tasks. - [Build your own pynxtools plugin](how-tos/build-a-plugin.md) - [Implement a reader based on the MultiFormatReader](how-tos/use-multi-format-reader.md) - [Validation of NeXus files](how-tos/validate-nexus-file.md) -- [Creation of NeXus files in python via hard-coding ](how-tos/create-nexus-files-by-python.md) +- [Creation of NeXus files in python via hard-coding](how-tos/create-nexus-files-by-python.md) - [Using pynxtools test framework for plugins](how-tos/using-pynxtools-test-framework.md) __The following How-To guides are still under development:__ From 69f1adbf83add42fb2b7276383dffe9657077ffa Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Fri, 30 Aug 2024 15:41:50 +0200 Subject: [PATCH 28/33] add link to nexus-validation in learn --- docs/learn/nexus-validation.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/docs/learn/nexus-validation.md b/docs/learn/nexus-validation.md index 833f2158f..67a036e2e 100644 --- a/docs/learn/nexus-validation.md +++ b/docs/learn/nexus-validation.md @@ -1,5 +1,7 @@ # NeXus validation -!!! info "Work in progress" +!!! danger "Work in progress" + +!!! info "This page is intended to give more information about the validation tools that are part of `pynxtools`. Please also have a look at our comprehensive [how-to guide](../learn/nexus-validation.md) on NeXus validation." One of the main advantages of using pynxtools is that it comes with its own validation tools. That is, it can be used to validate that a given NeXus/HDF5 file is compliant with a NeXus application definition. @@ -40,5 +42,7 @@ This workaround was tested with Windows 11, but should very likely also work wit ## Other approaches (not part of pynxtools) Aside from the tools we developed within FAIRmat, the [official NeXus website](https://manual.nexusformat.org/validation.htm) lists two more programs for the validation of NeXus files: -1. nxvalidate -2. punx \ No newline at end of file +1. [cnxvalidate]() +2. [punx]() + +We will not discuss the details of these two programs here, but you can find some information about the in the how-to guide linked above. \ No newline at end of file From dc05fc1dca8606409de9f7c5198eaf7fb5535c37 Mon Sep 17 00:00:00 2001 From: Ron <139139971+RonHildebrandt@users.noreply.github.com> Date: Fri, 30 Aug 2024 16:22:49 +0200 Subject: [PATCH 29/33] Suggestions by Lukas after rebasing Co-authored-by: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> --- docs/how-tos/create-nexus-files-by-python.md | 46 ++++++++++---------- docs/how-tos/validate-nexus-file.md | 46 ++++++++------------ 2 files changed, 42 insertions(+), 50 deletions(-) diff --git a/docs/how-tos/create-nexus-files-by-python.md b/docs/how-tos/create-nexus-files-by-python.md index 1d0c47141..4eba111b2 100644 --- a/docs/how-tos/create-nexus-files-by-python.md +++ b/docs/how-tos/create-nexus-files-by-python.md @@ -1,18 +1,20 @@ -# Create NeXus files by python +# Creation of NeXus files in python via hard-coding -# The goal +## The goal -Use python to create a NeXus file (.nxs) by hardcoding via the python package h5py. NeXus files can as well be created by our software [pynxtools](https://github.com/FAIRmat-NFDI/pynxtools) automatically, IF a recipe for the specific device/instrument/data-structure is written. This How-To is intended as easy access to FAIRdata structures via NeXus. For static-datastructures (i.e. always the same type of standard measurement) or one-time examples (small data publications), this may provide a feasable solution. For large scaled automated file processing, storage and validatation use [pynxtools](https://github.com/FAIRmat-NFDI/pynxtools) and it's measurement method specific plugins. +Use python to create a NeXus file (.nxs) by hardcoding via the python package `h5py`. NeXus files can also be created by our software [`pynxtools`](https://github.com/FAIRmat-NFDI/pynxtools) automatically, but ONLY IF a reader for the specific device/instrument/data-structure exists. This How-To is intended as easy access to FAIR data structures _via_ NeXus. For static-datastructures (i.e., always the same type of standard measurement) or one-time examples (small data publications), this may provide a feasible solution. For large scaled automated file processing, storage, and validation, it is advisable to use [`pynxtools`](https://github.com/FAIRmat-NFDI/pynxtools) and its measurement method specific [plugins](../reference/plugins.md) You can find the necessary file downloads [here](https://zenodo.org/records/13373909). -# Create NeXus by hardcoding with python +## Create NeXus by hardcoding with python -Install h5py via pip by `pip install h5py` +Install `h5py` via `pip`: +```console +`pip install h5py` -Then you can create a nexus file by the python script called [h5py_nexus_file_creation.py](https://zenodo.org/records/13373909/files/h5py_nexus_file_creation.py?download=1). +Then you can create a NeXus file by the python script called [h5py_nexus_file_creation.py](https://zenodo.org/records/13373909/files/h5py_nexus_file_creation.py?download=1). ``` # Import h5py, to write an hdf5 file @@ -52,11 +54,11 @@ You see several search results, select the one with is named "NXoptical\_spectro Then you are (ideally) on this page: [NXoptical_spectroscopy NeXus definition]() -You see a tree like structure of the NeXus definition NXoptical\_spectrosocopy with several tree nodes: Status, Description, Symbols, Groups\_cited, Structure. For now, only the part in Structure is of interest. This contains the information, which has to be written in the python code to add fields/groups/attributes to the NeXus file. +You see a tree-like structure of the NeXus definition NXoptical\_spectrosocopy with several tree nodes: Status, Description, Symbols, Groups\_cited, Structure. For now, only the part in Structure is of interest. This contains the information which has to be written in the python code to add fields/groups/attributes to the NeXus file. -Use your browser search (CRTL+F) and search for "required". Ideally your browser highlights all entries which are required. You have to add those to the python script, to extend your created .nxs file. (Which fields/groups/attributes are "required" was defined by the respective scientific community, to ensure that the data serves the FAIR principles.) +Use your browser search (CRTL+F) and search for "required". Ideally, your browser highlights all concepts which are required. You have to add those to the python script to extend your created .nxs file. (Which fields/groups/attributes are "required" was defined by the respective scientific community, to ensure that the data serves the FAIR principles.) -In the following, it will be shown, how the python script has to be extended for the three fundamental objects: +In the following, it will be shown how the python script has to be extended for the three fundamental objects: 1. Attribute @@ -70,7 +72,7 @@ In the following, it will be shown, how the python script has to be extended for # 3. Adding a NeXus attribute -Search for the first concept/object in the NeXus file, which is not created yet. It is: +Search for the first concept/object in the NeXus file which is not created yet. It is: **@version**: (required) [NX\_CHAR]() [⤆]() @@ -80,7 +82,7 @@ Search for the first concept/object in the NeXus file, which is not created yet. 3. The name of the attribute is "version". -4. Since it is "required", thas this attribute has to be added so that the resulting NeXus file is compliant with the NeXus definition "NXoptical\_spectroscopy". +4. Since it is "required", that means this attribute has to be added so that the resulting NeXus file is compliant with the NeXus definition "NXoptical\_spectroscopy". 5. The "NX\_CHAR" indicates the datatype. This should be a string: "The preferred string representation is UTF-8" (more information see [here]()) @@ -123,7 +125,7 @@ On the right side, you should see below "Releases" the "tags" (Red box in the im Copy the latest tag, which should look similar to "v2024.02". Insert it as value for the "version" attribute. ### Disclaimer: -It would be better, to specify this version tag to include as well the "GitHub commit id". In this way, a [pynxtools generated version tag](https://github.com/FAIRmat-NFDI/pynxtools/blob/c13716915bf8f69068c3b94d1423681b580fd437/src/pynxtools/_build_wrapper.py#L17) might look like this: +When specifying this version tag, it would be better to include the "GitHub commit id" as well . In this way, a [pynxtools generated version tag](https://github.com/FAIRmat-NFDI/pynxtools/blob/c13716915bf8f69068c3b94d1423681b580fd437/src/pynxtools/_build_wrapper.py#L17) might look like this: `v2022.07.post1.dev1278+g1d7000f4`. For simplicity, this is omitted here. @@ -132,7 +134,7 @@ It would be better, to specify this version tag to include as well the "GitHub c # 4. Adding a datafield -Two attributes were added two "ENTRY/definition", both of which were required. By now, this part of the NeXus file fulfills the requirements of the application definition NXoptical\_spectroscopy. +Two attributes were added to "ENTRY/definition", both of which were required. By now, this part of the NeXus file fulfills the requirements of the application definition NXoptical\_spectroscopy. The next required concept of [NXoptical_spectrsocopy](https://fairmat-nfdi.github.io/nexus_definitions/classes/contributed_definitions/NXoptical_spectroscopy.html) is "**experiment\_type"**. @@ -144,19 +146,19 @@ The next required concept of [NXoptical_spectrsocopy](https://fairmat-nfdi.githu 3. The name of this group/datafield is "**experiment\_type**". -4. The "required" indicates, that this group/datafield has to be added to be in line with the NeXus definition "NXoptical\_spectroscopy". +4. The "required" indicates that this group/datafield has to be added to be in line with the NeXus definition "NXoptical\_spectroscopy". 5. The "NX\_CHAR" indicates the datatype. This should be a string: "The preferred string representation is UTF-8" (more information see [here]()). 6. The "NX\_CHAR" indicates that this is a datafield. It is NOT a group. - A group is a NeXus class. "NXentry" is for example is a NeXus class, while "NX_CHAR" indicates the datatype of the field. - Wheter or not the underscore "_" is present after NX, indicates therefore if it is a NeXus class or datafield. + A group is a NeXus class. "NXentry" is for example a NeXus class, while "NX_CHAR" indicates the datatype of the field. + Whether or not the underscore "_" is present after NX, indicates therefore if it is a NeXus class or datafield. Read the documentation at "▶ Specify the type of the optical experiment. ..." by extending it via click on the triangle symbol. You should see something like this: ![image.png](<./attachments/5cbd8c6a1ca227df-image.png>) -There, the value of the datafield, has to be one of the shwon list. e.g "transmission spectroscopy", since it is an enumeration. Note that this is case sensitive. +There, the value of the datafield has to be one of the shown list, since it is an enumeration (e.g. "transmission spectroscopy"). Note that this is case sensitive. Therefore, the python script has to be extended by: @@ -180,7 +182,7 @@ The first required group in NXoptical\_spectroscopy on the "ENTRY/" level is "** 4. The "NXinstrument" indicates that it is a NeXus class (or group in python), as it starts with "NX". -5. As this is a group, attributes or valuees may be assigned to it. +5. As this is a group, attributes or values may be assigned to it. 6. As this is a group, it can contain many datafields or groups. @@ -201,7 +203,7 @@ f['/entry/experiment_setup_1'].attrs['NX_class'] = 'NXinstrument' The first line creates the group with the name "experiment\_setup\_1". -The second line assigns this group the attribute with the name "NX\_class" and it's value "NXinstrument". +The second line assigns this group the attribute with the name "NX\_class" and its value "NXinstrument". @@ -209,7 +211,7 @@ The second line assigns this group the attribute with the name "NX\_class" and i # 6. Finishing the .nxs file -This has to be done by using the respective NeXus definiton website: +This has to be done by using the respective NeXus definition website: [NXoptical_spectroscopy]() @@ -223,14 +225,14 @@ Both are groups. "**beam\_TYPE"** could be named: "beam\_abc" or "beam\_Raman\_s ### Note for required concepts in optional fields/groups: -Above in the definition of NXoptical\_spectroscopy, you as well may found a required entry "**depends\_on**: (required) [NX\_CHAR]() [⤆"](). This is at the level of "ENTRY/reference\_frames/beam\_ref\_frame". If you dont have the group "**beam\_ref\_frame"** because this is "optional", then you don't need to have this field. +Above in the definition of NXoptical\_spectroscopy, you as well may found a required entry "**depends\_on**: (required) [NX\_CHAR]() [⤆"](). This is at the level of "ENTRY/reference\_frames/beam\_ref\_frame". If you don't have the group "**beam\_ref\_frame"** because this is "optional", then you don't need to have this field. ### Feedback and contact: -1. Best way is to contact the software development directly via a [Github Issue](https://github.com/FAIRmat-NFDI/nexus_definitions/issues/new). +1. Best way is to contact the FAIRmat team directly by creating a [Github Issue](https://github.com/FAIRmat-NFDI/nexus_definitions/issues/new). 2. ron.hildebrandt(at)physik.hu-berlin.de diff --git a/docs/how-tos/validate-nexus-file.md b/docs/how-tos/validate-nexus-file.md index 7bd6db7a0..73da65ee1 100644 --- a/docs/how-tos/validate-nexus-file.md +++ b/docs/how-tos/validate-nexus-file.md @@ -15,10 +15,10 @@ Use a tool to validate NeXus files to a given set of NeXus definitions: The validity of NeXus files is fundamental to ensure FAIR data. Without specific requirements, it is not possible to understand the data. What type of experiment? What Laser Wavelength? Which voltage? What data is represented at all in the table? What is the unit of the value? Which ISO norm does this refer to? Where was this measured? Which year was this measured? -Therefore you have enter all required fields in the NeXus definition. The requirements are set by the community via workshops or at conferences. You can as well comment the NeXus definitions, to initiate or propose changes/additions. Go to the NeXus definition, and sign-up/log-in and give us some feedback (Red boxes in the image. Expand this panel on the left by clicking on the arrow symbol). +The NeXus application definitions define the minimum set of terms that must be used in an instance of that class (i.e., the required terms that you must add to the file in order to be compliant with that application definition). Application definitions also may define terms that are optional in the NeXus data file. The requirements are set by the community via workshops or at conferences. To initiate or propose changes/additions, you can comment the FAIRMat NeXus proposal by going to the [NeXus definitions](https://fairmat-nfdi.github.io/nexus_definitions/index.html#), and using the hypothes.is tool (sign-up/log-in) to give us some feedback (Red boxes in the image. Expand this panel on the left by clicking on the arrow symbol). ![image.png](<./attachments/9d748230d54a8059-image.png>) -Oftentimes, there will be errors in a generated NeXus file (be it by hand or automatically): Typos, missing required concepts, missing attributes, using the incorrect datatype or format (e.g., array instad of list, float instead of integer, etc.). Therefore, a validation is required, to ensure that the data you want to share, is FAIR. +Oftentimes, there will be errors in a generated NeXus file (be it by hand or automatically): Typos, missing required concepts, missing attributes, using the incorrect datatype or format (e.g., array instad of list, float instead of integer, etc.). Therefore, a validation is required, to ensure that the data you want to share is FAIR. The NeXus file is valid if it complies with the respective NeXus application definition. @@ -37,7 +37,7 @@ There are right now three tools, which can be used for validation of NeXus files Open software is usually shared on Github - There you find usually the most accurate information, as documentation sometimes lags behind. There you see a box with folders and files. Below is the content of the README.md file displayed. This usually shows instructions for installation and handling of the software. -Here are the GitHub links for the thee software packages: +Here are the GitHub links for the three software packages: [pynxtools]() @@ -70,18 +70,9 @@ The package can be installed via pip. Therefore you need to have installed: 2. pip -This tool has 3 command line functions: -1. [dataconverter]() -2. [read\_nexus]() - -3. [generate\_eln]() - -4. [verify\_nexus](https://github.com/FAIRmat-NFDI/pynxtools/pull/333) - - -For validation purposes, we will use the "read\_nexus" and "verify\_nexus" function. +For validation purposes, we will use the "read\_nexus" and "verify\_nexus" command line tools from `pynxtools`. # 1.1 verify_nexus @@ -101,8 +92,7 @@ WARNING: Field /entry/instrument/beam_incident/wavelength/@units written without # 1.1.1 Installation of verify_nexus -Aside from read_nexus, there is a second functionality from pynxtools. This method is currently in development (Aug 2024). This function is called: verify\_nexus. Therefore, you have to use the development install, until this function is published. - +The `verify_nexus` function is currently under development (Aug 2024). Therefore, you have to install pynxtools from its feature branch until this function is published. Do this to install pynxtools with verify\_nexus ``` @@ -116,7 +106,7 @@ python -m pip install -e . python -m pip install -e ".[dev]" ``` -then, the help function should be available: +Then, you should be able to call its help function: ``` verify_nexus --help @@ -171,7 +161,7 @@ Invalid: The entry `entry` in file `Raman.nxs` is NOT a valid file according to # 1.2 read_nexus - +While `verify_nexus´ is used as a straightforward tool for validating a NeXus file, `read_nexus` outputs a debug log for a given NeXus file by annotating the data and metadata entries with the schema definitions from the respective NeXus base classes and application definitions to which the file refers to. This can be helpful to extract documentation and understand the concept defined in the NeXus application definition. The command used is: ``` @@ -279,7 +269,7 @@ DEBUG: For Axis #0, 1 axes have been identified: [). @@ -320,7 +310,7 @@ This [did not work for me on windows](/installation_notes_nxvalidate.md) (The pr Therefore: Use linux. -The installation process has to be build from source. This is eased significantly by using another software called: cmake. +The software has to be built from source. This is eased significantly by using another software called: cmake. ### Install cmake, github, hdf5 & xml2 library, etc: @@ -338,9 +328,9 @@ sudo apt-get -y install cmake sudo apt-get install libxml2-dev ``` -### Directoty location +### Directory location -create a folder named "nexusvalidation" via terminal or file manager. +Create a folder named "nexusvalidation" via terminal or file manager. The folder is located at `/home/USER/nexusvalidation` @@ -348,7 +338,7 @@ The folder is located at `/home/USER/nexusvalidation` In the terminal, this is indicated by `~/nexusvalidation` ( \~ = /home/USER) -open the thermal and go into this directory by: +Open the thermal and go into this directory by: ``` cd /home/USER/nexusvalidation @@ -366,9 +356,9 @@ Copy the https link. ![image.png](<./attachments/e28ec15bb537c9b7-image.png>) -open the terminal and ensure you are in the `nexusvalidation` folder. +Open the terminal and ensure you are in the `nexusvalidation` folder. -clone the github repository (= download the files of the software). +Clone the github repository (= download the files of the software). ``` git clone https://github.com/nexusformat/cnxvalidate.git @@ -440,7 +430,7 @@ For the NIAC NeXus definitions, go to [this link]() @@ -794,7 +784,7 @@ For a specifically structured set of data, a parser can be written, which uses t ### Feedback and contact: -1. Best way is to contact the software development directly via a [Github Issue](https://github.com/FAIRmat-NFDI/pynxtools/issues/new). +1. Best way is to contact the software development team directly via a [Github Issue](https://github.com/FAIRmat-NFDI/pynxtools/issues/new). 2. ron.hildebrandt(at)physik.hu-berlin.de From 049ad26a21939a7228976e131845ff3f6bcd9b39 Mon Sep 17 00:00:00 2001 From: Ron Hildebrandt Date: Fri, 30 Aug 2024 17:04:26 +0200 Subject: [PATCH 30/33] second round of lukas suggestions after rebase --- docs/how-tos/create-nexus-files-by-python.md | 23 ++++--- docs/how-tos/validate-nexus-file.md | 68 +++++++------------- 2 files changed, 38 insertions(+), 53 deletions(-) diff --git a/docs/how-tos/create-nexus-files-by-python.md b/docs/how-tos/create-nexus-files-by-python.md index 4eba111b2..c5a799a7f 100644 --- a/docs/how-tos/create-nexus-files-by-python.md +++ b/docs/how-tos/create-nexus-files-by-python.md @@ -13,6 +13,7 @@ You can find the necessary file downloads [here](https://zenodo.org/records/1337 Install `h5py` via `pip`: ```console `pip install h5py` +``` Then you can create a NeXus file by the python script called [h5py_nexus_file_creation.py](https://zenodo.org/records/13373909/files/h5py_nexus_file_creation.py?download=1). @@ -42,7 +43,7 @@ This proves a starting point of the NeXus file. We will go through these functio -# 2. Fill the content of the .nxs file +## Fill the content of the .nxs file Go to [FAIRmat NeXus definitions]() @@ -70,7 +71,7 @@ In the following, it will be shown how the python script has to be extended for -# 3. Adding a NeXus attribute +## Adding a NeXus attribute Search for the first concept/object in the NeXus file which is not created yet. It is: @@ -125,14 +126,18 @@ On the right side, you should see below "Releases" the "tags" (Red box in the im Copy the latest tag, which should look similar to "v2024.02". Insert it as value for the "version" attribute. ### Disclaimer: -When specifying this version tag, it would be better to include the "GitHub commit id" as well . In this way, a [pynxtools generated version tag](https://github.com/FAIRmat-NFDI/pynxtools/blob/c13716915bf8f69068c3b94d1423681b580fd437/src/pynxtools/_build_wrapper.py#L17) might look like this: -`v2022.07.post1.dev1278+g1d7000f4`. For simplicity, this is omitted here. - +When specifying this version tag, it would be better to include the "GitHub commit id" as well. In this way, a [pynxtools generated version tag](https://github.com/FAIRmat-NFDI/pynxtools/blob/c13716915bf8f69068c3b94d1423681b580fd437/src/pynxtools/_build_wrapper.py#L17) might look like this: +`v2022.07.post1.dev1278+g1d7000f4`. If you have pynxtools installed, you can get the tag by: +```python +>>> from pynxtools import get_nexus_version +>>> get_nexus_version() +'v2022.07.post1.dev1284+gf75a2983' +``` -# 4. Adding a datafield +## Adding a datafield Two attributes were added to "ENTRY/definition", both of which were required. By now, this part of the NeXus file fulfills the requirements of the application definition NXoptical\_spectroscopy. @@ -170,11 +175,11 @@ f['/entry/experiment_type'] = 'transmission spectroscopy' -# 5. Adding a group +## Adding a group The first required group in NXoptical\_spectroscopy on the "ENTRY/" level is "**INSTRUMENT**: (required) [NXinstrument]() [⤆"]() -1. It is located in the tree at position: NXentry/experiment_type +1. It is located in the tree at position: NXentry/ 2. There is no "@" in front of "**INSTRUMENT"** and because the "NXinstrument" is a NeXus class, this has to be implemented as group in the python script. @@ -209,7 +214,7 @@ The second line assigns this group the attribute with the name "NX\_class" and i -# 6. Finishing the .nxs file +## Finishing the .nxs file This has to be done by using the respective NeXus definition website: diff --git a/docs/how-tos/validate-nexus-file.md b/docs/how-tos/validate-nexus-file.md index 73da65ee1..d76a52ad0 100644 --- a/docs/how-tos/validate-nexus-file.md +++ b/docs/how-tos/validate-nexus-file.md @@ -2,7 +2,7 @@ Note: This is a how-to guide for using different tools to validate NeXus files. If you want to learn more about how validation is done in `pynxtools`, please visit the [explanation page](../learn/nexus-validation.md). -# The goal +## The goal Use a tool to validate NeXus files to a given set of NeXus definitions: @@ -11,7 +11,7 @@ Use a tool to validate NeXus files to a given set of NeXus definitions: 2. [NIAC](https://manual.nexusformat.org/) -# Validation of a .nxs file +## Validation of a .nxs file The validity of NeXus files is fundamental to ensure FAIR data. Without specific requirements, it is not possible to understand the data. What type of experiment? What Laser Wavelength? Which voltage? What data is represented at all in the table? What is the unit of the value? Which ISO norm does this refer to? Where was this measured? Which year was this measured? @@ -25,7 +25,7 @@ The NeXus file is valid if it complies with the respective NeXus application def This validation is done by software. -# Validation software +## Validation software There are right now three tools, which can be used for validation of NeXus files. All are different and have individual advantages or disadvantages: @@ -58,7 +58,9 @@ This is not a problem for big companies, but for smaller open software projects, If you are used to Windows, consider setting up a Linux operating system to eliminate problems in the installation process and ensure compatibility. -# 1. pynxtools - Python Nexus Tools +# pynxtools - Python Nexus Tools + +_[> learn more about validation in pynxtools <](../learn/nexus-validation.md)_ This is a python package which is developed by the FAIRmat consortium. @@ -74,7 +76,7 @@ The package can be installed via pip. Therefore you need to have installed: For validation purposes, we will use the "read\_nexus" and "verify\_nexus" command line tools from `pynxtools`. -# 1.1 verify_nexus +## verify_nexus This tool is currently in development. It enables a command like: @@ -90,20 +92,13 @@ WARNING: Field /entry/instrument/beam_incident/wavelength/@units written without ... ``` -# 1.1.1 Installation of verify_nexus +### Installation of verify_nexus The `verify_nexus` function is currently under development (Aug 2024). Therefore, you have to install pynxtools from its feature branch until this function is published. -Do this to install pynxtools with verify\_nexus +Do this to install pynxtools with verify\_nexus via; ``` -git clone https://github.com/FAIRmat-NFDI/pynxtools/tree/hdf-based-validation -cd pynxtools -git checkout git checkout hdf-based-validation -git submodule sync --recursive -git submodule update --init --recursive --jobs=4 -python -m pip install --upgrade pip -python -m pip install -e . -python -m pip install -e ".[dev]" +pip install git+https://github.com/FAIRmat-NFDI/pynxtools@hdf-based-validation ``` Then, you should be able to call its help function: @@ -124,7 +119,7 @@ Options: ``` -# 1.1.2 Using verify_nexus +### Using verify_nexus Open your terminal. Assuming there is a folder at: @@ -160,7 +155,7 @@ Invalid: The entry `entry` in file `Raman.nxs` is NOT a valid file according to ``` -# 1.2 read_nexus +## read_nexus While `verify_nexus´ is used as a straightforward tool for validating a NeXus file, `read_nexus` outputs a debug log for a given NeXus file by annotating the data and metadata entries with the schema definitions from the respective NeXus base classes and application definitions to which the file refers to. This can be helpful to extract documentation and understand the concept defined in the NeXus application definition. The command used is: @@ -209,7 +204,7 @@ The second example was for the "software\_TYPE" attribute @URL entry in the "NXo -# 1.2.1 Installation of read_nexus +### Installation of read_nexus This is installed with pip: @@ -218,7 +213,7 @@ pip install pynxtools ``` -# 1.2.2 Using the read_nexus function +### Using the read_nexus function Open your terminal. Assuming there is a folder at: @@ -271,7 +266,6 @@ Search for fields which are not found in the NeXus definition by searching for t Keep in mind that the output provides quite some information. This is useful for software development, but may be a bit too much for validation purposes. -Similar features as the tables and messages provided from punx and cnxvalidate for pynxtools are [planned to be implemented in the future](). @@ -282,7 +276,7 @@ Similar features as the tables and messages provided from punx and cnxvalidate f -# 2. cnxvalidate +# cnxvalidate This package is written in C. It is allows a command line evocation like: @@ -304,9 +298,9 @@ definition=NXoptical_spectroscopy.nxdl.xml message="Required attribute URL missi and indicates the entry of the .nxs file, which is incorrect and what the respective problem is. It also points to the NeXus definition (.nxdl.xml file), in which this conflict was found. -# 2.1. Installation (Linux only) +## Installation (Linux only) -This [did not work for me on windows](/installation_notes_nxvalidate.md) (The problem was the software cmake couldn't fine the libxml2 library. Though, if you solve this, this maybe work on windows). +Note: You can find more information about installing nxvalidate [here](/installation_notes_nxvalidate.md). Note that installation on Windows can be tricky because cmake can sometimes not find the libxml2 library. Though, if you solve this, this maybe work on windows). Therefore: Use linux. @@ -404,7 +398,7 @@ Now the above mentioned commands should be avaialble. The programm/executable is /home/USER/nexusvalidation/cnxvalidate/build/nxvalidate ``` -# 2.2. Using cnxvalidate +## Using cnxvalidate Now you can start to validate your created [NeXus file](https://zenodo.org/records/13373909). But before the validation, we need to get a set of NeXus definitions, which we want to use as reference. This is done again by using git: @@ -489,7 +483,7 @@ Now adjust the file creation, and add the respective fields to make your NeXus f -# 3. Punx - Python Utilities for NeXus HDF5 files +# Punx - Python Utilities for NeXus HDF5 files This is python package, and can therefore be used on Linux and Windows systems. @@ -514,7 +508,7 @@ This is done by replacing REPORT with ={COMMENT,ERROR,NOTE,OK,TODO,UNUSED,WARN} [Official docs]() -# 3.1 Installation +## Installation Open the terminal and install punx via pip: @@ -629,7 +623,7 @@ Then you should be able to use this package. Official docs for [punx installation]() -# 3.2. Using punx +## Using punx Open your terminal. Assuming there is a folder at: @@ -661,7 +655,7 @@ punx validate C:\nexusvalidation\SiO2onSi.ellips.nxs The output tables "findings" and "summary statistics" can be used to find error present in the NeXus file. -# 3.3. Example +## Example ### Which NeXus definition? @@ -735,7 +729,7 @@ The last error message: can be ignored and is a bug right now. If this is the only Error message, then your NeXus file is compliant with the NeXus definitions and you can share and publish your data. -# 3.4. Further Notes +## Further Notes 1. Punx only uses the NeXus definiton from the NIAC [NeXus definiton from the NIAC](). The use of the [FAIRmat NeXus definition]() is not possible right now. @@ -764,21 +758,7 @@ As pynxtools verify_nexus method is right now in development, [not all situation ### Pynxtools Parsers: -For a specifically structured set of data, a parser can be written, which uses the meta data and a pre-structured meta data file, to create a NeXus file. Tough, the parser depends on: Experimental Technique and Setup and has therefore to be written individually. This is another functionallity of [pynxtools with plugins for the techniques](https://fairmat-nfdi.github.io/pynxtools/reference/plugins.html): - -[electron microscopy (EM)]() - -[x-ray photoelectron spectroscopy (XPS)]() - -[scanning tunneling spectroscopy/microscopy and atomic force microscopy (STS / STM /AFM)]() - -[x-ray diffraction (XRD)]() - -[ellipsometry (ellips)]() - -[Raman spectroscopy (raman)]() - -[atom probe microscopy (APM)]() +For a specifically structured set of data, a parser can be written, which uses the meta data and a pre-structured meta data file, to create a NeXus file. Tough, the parser depends on: Experimental Technique and Setup and has therefore to be written individually. Take a look [here](../reference/plugins.md). From bc81a93fdff9316f5a0fb8560f0ad9f9d1a4baea Mon Sep 17 00:00:00 2001 From: Ron Hildebrandt Date: Fri, 30 Aug 2024 17:14:56 +0200 Subject: [PATCH 31/33] fixing links and update NXinstrument note --- docs/how-tos/create-nexus-files-by-python.md | 2 +- docs/how-tos/validate-nexus-file.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/how-tos/create-nexus-files-by-python.md b/docs/how-tos/create-nexus-files-by-python.md index c5a799a7f..5a1288058 100644 --- a/docs/how-tos/create-nexus-files-by-python.md +++ b/docs/how-tos/create-nexus-files-by-python.md @@ -185,7 +185,7 @@ The first required group in NXoptical\_spectroscopy on the "ENTRY/" level is "** 3. The "required" indicates that this group has to be added to be in line with the NeXus definition "NXoptical\_spectroscopy". -4. The "NXinstrument" indicates that it is a NeXus class (or group in python), as it starts with "NX". +4. The "NXinstrument" indicates that it is a NeXus class (or group in python), as it starts with "NX" - without an underscore "_". It can also not be found at the [data types](https://manual.nexusformat.org/nxdl-types.html#data-types-allowed-in-nxdl-specifications). 5. As this is a group, attributes or values may be assigned to it. diff --git a/docs/how-tos/validate-nexus-file.md b/docs/how-tos/validate-nexus-file.md index d76a52ad0..887e30e7d 100644 --- a/docs/how-tos/validate-nexus-file.md +++ b/docs/how-tos/validate-nexus-file.md @@ -300,7 +300,7 @@ and indicates the entry of the .nxs file, which is incorrect and what the respec ## Installation (Linux only) -Note: You can find more information about installing nxvalidate [here](/installation_notes_nxvalidate.md). Note that installation on Windows can be tricky because cmake can sometimes not find the libxml2 library. Though, if you solve this, this maybe work on windows). +Note: You can find more information about installing nxvalidate [here](installation_notes_nxvalidate.md). Note that installation on Windows can be tricky because cmake can sometimes not find the libxml2 library. Though, if you solve this, this maybe work on windows). Therefore: Use linux. @@ -754,7 +754,7 @@ This tutorial showed: ### Recommended methods: -As pynxtools verify_nexus method is right now in development, [not all situations are covered right now](/testing-validation-tools.md). Therefore, the most reliable method right now is a combination of _Human Manual Validation_ + _Software solutions_. +As pynxtools verify_nexus method is right now in development, [not all situations are covered right now](testing-validation-tools.md). Therefore, the most reliable method right now is a combination of _Human Manual Validation_ + _Software solutions_. ### Pynxtools Parsers: From 0084e3296524937615bffd194d7fba47f37f2950 Mon Sep 17 00:00:00 2001 From: Ron Hildebrandt Date: Mon, 2 Sep 2024 11:14:05 +0200 Subject: [PATCH 32/33] rework TOC view of webpage for validation and creation of nexus files with python --- docs/how-tos/create-nexus-files-by-python.md | 25 ++++---- docs/how-tos/validate-nexus-file.md | 61 ++++++++++---------- mkdocs.yaml | 3 - 3 files changed, 44 insertions(+), 45 deletions(-) diff --git a/docs/how-tos/create-nexus-files-by-python.md b/docs/how-tos/create-nexus-files-by-python.md index 5a1288058..2aa993bb2 100644 --- a/docs/how-tos/create-nexus-files-by-python.md +++ b/docs/how-tos/create-nexus-files-by-python.md @@ -1,6 +1,6 @@ -# Creation of NeXus files in python via hard-coding +# Use python to create NeXus files -## The goal +__The goal__ Use python to create a NeXus file (.nxs) by hardcoding via the python package `h5py`. NeXus files can also be created by our software [`pynxtools`](https://github.com/FAIRmat-NFDI/pynxtools) automatically, but ONLY IF a reader for the specific device/instrument/data-structure exists. This How-To is intended as easy access to FAIR data structures _via_ NeXus. For static-datastructures (i.e., always the same type of standard measurement) or one-time examples (small data publications), this may provide a feasible solution. For large scaled automated file processing, storage, and validation, it is advisable to use [`pynxtools`](https://github.com/FAIRmat-NFDI/pynxtools) and its measurement method specific [plugins](../reference/plugins.md) @@ -8,7 +8,7 @@ You can find the necessary file downloads [here](https://zenodo.org/records/1337 -## Create NeXus by hardcoding with python +## Make NeXus file by python Install `h5py` via `pip`: ```console @@ -43,7 +43,7 @@ This proves a starting point of the NeXus file. We will go through these functio -## Fill the content of the .nxs file +## Add NeXus concepts by python Go to [FAIRmat NeXus definitions]() @@ -71,7 +71,7 @@ In the following, it will be shown how the python script has to be extended for -## Adding a NeXus attribute +### Adding an attribute Search for the first concept/object in the NeXus file which is not created yet. It is: @@ -103,7 +103,7 @@ f['/entry/definition'].attrs['URL'] = 'https://github.com/FAIRmat-NFDI/nexus_def For your use case, you may want to use a different version of the NeXus definitions, since these are changed over time. In the following, it is shown where to obtain the correct version and URL. -### How to get the "version" and "URL" values +__Get the values: *version* and *URL*__ At the time, you create the NeXus definition. Go to the page of the respectively used NeXus concept, i.e. [NXoptical_spectroscopy]() @@ -125,7 +125,7 @@ On the right side, you should see below "Releases" the "tags" (Red box in the im Copy the latest tag, which should look similar to "v2024.02". Insert it as value for the "version" attribute. -### Disclaimer: +__Disclaimer__ When specifying this version tag, it would be better to include the "GitHub commit id" as well. In this way, a [pynxtools generated version tag](https://github.com/FAIRmat-NFDI/pynxtools/blob/c13716915bf8f69068c3b94d1423681b580fd437/src/pynxtools/_build_wrapper.py#L17) might look like this: `v2022.07.post1.dev1278+g1d7000f4`. If you have pynxtools installed, you can get the tag by: @@ -137,7 +137,7 @@ When specifying this version tag, it would be better to include the "GitHub comm -## Adding a datafield +### Adding a datafield Two attributes were added to "ENTRY/definition", both of which were required. By now, this part of the NeXus file fulfills the requirements of the application definition NXoptical\_spectroscopy. @@ -175,7 +175,7 @@ f['/entry/experiment_type'] = 'transmission spectroscopy' -## Adding a group +### Adding a group The first required group in NXoptical\_spectroscopy on the "ENTRY/" level is "**INSTRUMENT**: (required) [NXinstrument]() [⤆"]() @@ -214,7 +214,7 @@ The second line assigns this group the attribute with the name "NX\_class" and i -## Finishing the .nxs file +### Finishing the NeXus file This has to be done by using the respective NeXus definition website: @@ -228,14 +228,15 @@ And by searching for all "required" entries. The next required entries are locat Both are groups. "**beam\_TYPE"** could be named: "beam\_abc" or "beam\_Raman\_setup". Use the knowledge above to extend the python script to create those NeXus file entries. -### Note for required concepts in optional fields/groups: +__Note for required NeXus concepts__ Above in the definition of NXoptical\_spectroscopy, you as well may found a required entry "**depends\_on**: (required) [NX\_CHAR]() [⤆"](). This is at the level of "ENTRY/reference\_frames/beam\_ref\_frame". If you don't have the group "**beam\_ref\_frame"** because this is "optional", then you don't need to have this field. +[_Continue by validating the NeXus file_](validate-nexus-file.md) -### Feedback and contact: +## Feedback and contact 1. Best way is to contact the FAIRmat team directly by creating a [Github Issue](https://github.com/FAIRmat-NFDI/nexus_definitions/issues/new). diff --git a/docs/how-tos/validate-nexus-file.md b/docs/how-tos/validate-nexus-file.md index 887e30e7d..2534bdb33 100644 --- a/docs/how-tos/validate-nexus-file.md +++ b/docs/how-tos/validate-nexus-file.md @@ -2,7 +2,7 @@ Note: This is a how-to guide for using different tools to validate NeXus files. If you want to learn more about how validation is done in `pynxtools`, please visit the [explanation page](../learn/nexus-validation.md). -## The goal +__The goal__ Use a tool to validate NeXus files to a given set of NeXus definitions: @@ -25,7 +25,7 @@ The NeXus file is valid if it complies with the respective NeXus application def This validation is done by software. -## Validation software +### Validation software There are right now three tools, which can be used for validation of NeXus files. All are different and have individual advantages or disadvantages: @@ -58,7 +58,9 @@ This is not a problem for big companies, but for smaller open software projects, If you are used to Windows, consider setting up a Linux operating system to eliminate problems in the installation process and ensure compatibility. -# pynxtools - Python Nexus Tools +## pynxtools + +pynxtools = Python Nexus Tools _[> learn more about validation in pynxtools <](../learn/nexus-validation.md)_ @@ -76,7 +78,7 @@ The package can be installed via pip. Therefore you need to have installed: For validation purposes, we will use the "read\_nexus" and "verify\_nexus" command line tools from `pynxtools`. -## verify_nexus +## pynxtools - *verify_nexus* This tool is currently in development. It enables a command like: @@ -92,7 +94,7 @@ WARNING: Field /entry/instrument/beam_incident/wavelength/@units written without ... ``` -### Installation of verify_nexus +### Installation of *verify_nexus* The `verify_nexus` function is currently under development (Aug 2024). Therefore, you have to install pynxtools from its feature branch until this function is published. Do this to install pynxtools with verify\_nexus via; @@ -119,7 +121,7 @@ Options: ``` -### Using verify_nexus +### Using *verify_nexus* Open your terminal. Assuming there is a folder at: @@ -155,7 +157,7 @@ Invalid: The entry `entry` in file `Raman.nxs` is NOT a valid file according to ``` -## read_nexus +## pynxtools - *read_nexus* While `verify_nexus´ is used as a straightforward tool for validating a NeXus file, `read_nexus` outputs a debug log for a given NeXus file by annotating the data and metadata entries with the schema definitions from the respective NeXus base classes and application definitions to which the file refers to. This can be helpful to extract documentation and understand the concept defined in the NeXus application definition. The command used is: @@ -204,7 +206,7 @@ The second example was for the "software\_TYPE" attribute @URL entry in the "NXo -### Installation of read_nexus +### Installation of *read_nexus* This is installed with pip: @@ -213,7 +215,7 @@ pip install pynxtools ``` -### Using the read_nexus function +### Using *read_nexus* Open your terminal. Assuming there is a folder at: @@ -276,7 +278,7 @@ Keep in mind that the output provides quite some information. This is useful for -# cnxvalidate +## cnxvalidate This package is written in C. It is allows a command line evocation like: @@ -298,7 +300,7 @@ definition=NXoptical_spectroscopy.nxdl.xml message="Required attribute URL missi and indicates the entry of the .nxs file, which is incorrect and what the respective problem is. It also points to the NeXus definition (.nxdl.xml file), in which this conflict was found. -## Installation (Linux only) +### Installation Note: You can find more information about installing nxvalidate [here](installation_notes_nxvalidate.md). Note that installation on Windows can be tricky because cmake can sometimes not find the libxml2 library. Though, if you solve this, this maybe work on windows). @@ -306,7 +308,7 @@ Therefore: Use linux. The software has to be built from source. This is eased significantly by using another software called: cmake. -### Install cmake, github, hdf5 & xml2 library, etc: +__Install cmake, github, hdf5 & xml2 library, etc:__ Open the terminal and install all parts required to install cnxvalidate via cmake: @@ -322,7 +324,7 @@ sudo apt-get -y install cmake sudo apt-get install libxml2-dev ``` -### Directory location +__Directory location__ Create a folder named "nexusvalidation" via terminal or file manager. @@ -338,7 +340,7 @@ Open the thermal and go into this directory by: cd /home/USER/nexusvalidation ``` -### Using GitHub +__Using GitHub__ Go to the [Github Repository of cnxvalidate:]() @@ -398,11 +400,11 @@ Now the above mentioned commands should be avaialble. The programm/executable is /home/USER/nexusvalidation/cnxvalidate/build/nxvalidate ``` -## Using cnxvalidate +### Using cnxvalidate Now you can start to validate your created [NeXus file](https://zenodo.org/records/13373909). But before the validation, we need to get a set of NeXus definitions, which we want to use as reference. This is done again by using git: -### Getting NeXus definitions +__Getting NeXus definitions__ go to the folder nexusvalidation @@ -432,7 +434,7 @@ The respective path would be: /home/USER/nexusvalidation/definitions ``` -### Get your NeXus file +__Get your NeXus file__ put one of created NeXus file (or this [this file](https://zenodo.org/records/13373909/files/NXopt_minimal_example.nxs?download=1)) into the "nexusvalidation" folder (filemanager/explorer). @@ -442,7 +444,7 @@ The file should now be loacted at (assumed the file name is "NXopt_minimal_examp /home/USER/nexusvalidation/NXopt_minimal_example.nxs ``` -### Validating the NeXus file +__Validating the NeXus file__ now you can use the cnxvalidate with the executable called "nxvalidate" to use the set of NeXus definitions called "appdefdir" to validate the NeXus file called "datafile". This is done from the terminal. @@ -483,7 +485,9 @@ Now adjust the file creation, and add the respective fields to make your NeXus f -# Punx - Python Utilities for NeXus HDF5 files +## punx + +_punx - Python Utilities for NeXus HDF5 files_ This is python package, and can therefore be used on Linux and Windows systems. @@ -508,7 +512,7 @@ This is done by replacing REPORT with ={COMMENT,ERROR,NOTE,OK,TODO,UNUSED,WARN} [Official docs]() -## Installation +### Installation Open the terminal and install punx via pip: @@ -623,7 +627,7 @@ Then you should be able to use this package. Official docs for [punx installation]() -## Using punx +### Using punx Open your terminal. Assuming there is a folder at: @@ -655,9 +659,7 @@ punx validate C:\nexusvalidation\SiO2onSi.ellips.nxs The output tables "findings" and "summary statistics" can be used to find error present in the NeXus file. -## Example - -### Which NeXus definition? +__Which NeXus definition?__ The program selects the NeXus definitions (set of nxdl.xml files) by itself. It can in principle also be modified with different repositories. The functionality to add a new repository is right now not possible (Aug 2024). @@ -729,7 +731,7 @@ The last error message: can be ignored and is a bug right now. If this is the only Error message, then your NeXus file is compliant with the NeXus definitions and you can share and publish your data. -## Further Notes +### Further notes 1. Punx only uses the NeXus definiton from the NIAC [NeXus definiton from the NIAC](). The use of the [FAIRmat NeXus definition]() is not possible right now. @@ -742,7 +744,7 @@ can be ignored and is a bug right now. If this is the only Error message, then y -# Summary +## Summary This tutorial showed: @@ -752,17 +754,16 @@ This tutorial showed: 3. How to use them via Examples -### Recommended methods: +### Recommended workflow As pynxtools verify_nexus method is right now in development, [not all situations are covered right now](testing-validation-tools.md). Therefore, the most reliable method right now is a combination of _Human Manual Validation_ + _Software solutions_. -### Pynxtools Parsers: +### Pynxtools Parsers For a specifically structured set of data, a parser can be written, which uses the meta data and a pre-structured meta data file, to create a NeXus file. Tough, the parser depends on: Experimental Technique and Setup and has therefore to be written individually. Take a look [here](../reference/plugins.md). - -### Feedback and contact: +### Feedback and contact 1. Best way is to contact the software development team directly via a [Github Issue](https://github.com/FAIRmat-NFDI/pynxtools/issues/new). diff --git a/mkdocs.yaml b/mkdocs.yaml index 816e6fe8c..5aeec425f 100644 --- a/mkdocs.yaml +++ b/mkdocs.yaml @@ -11,11 +11,8 @@ nav: - tutorial/converting-data-to-nexus.md - tutorial/nexus-to-nomad.md - How-tos: - - how-tos/writing-an-appdef.md - - how-tos/using-multiple-appdefs.md - how-tos/build-a-plugin.md - how-tos/use-multi-format-reader.md - - how-tos/transformations.md - how-tos/using-pynxtools-test-framework.md - how-tos/create-nexus-files-by-python.md - how-tos/validate-nexus-file.md From af3dd9562e82af3845943a52289e811d2cea164c Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Mon, 2 Sep 2024 13:57:56 +0200 Subject: [PATCH 33/33] readd docs pages to navigation --- mkdocs.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/mkdocs.yaml b/mkdocs.yaml index 5aeec425f..9dcb7d970 100644 --- a/mkdocs.yaml +++ b/mkdocs.yaml @@ -11,6 +11,9 @@ nav: - tutorial/converting-data-to-nexus.md - tutorial/nexus-to-nomad.md - How-tos: + - how-tos/writing-an-appdef.md + - how-tos/using-multiple-appdefs.md + - how-tos/transformations.md - how-tos/build-a-plugin.md - how-tos/use-multi-format-reader.md - how-tos/using-pynxtools-test-framework.md

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%0ACU7m*BXJX$#D}%>45wS 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