From cfb4d0555d23af1e8ddeb1433cb9894b4d1f467c Mon Sep 17 00:00:00 2001 From: Giovanni Campagna Date: Tue, 28 Jan 2020 18:03:13 -0800 Subject: [PATCH] Rebrand as genienlp --- LICENSE | 1 + README.md | 182 +++++++++-------------------------------------- decaNLP_logo.png | Bin 78758 -> 0 bytes setup.py | 4 +- 4 files changed, 38 insertions(+), 149 deletions(-) delete mode 100644 decaNLP_logo.png diff --git a/LICENSE b/LICENSE index d8b6f89c..c804a19f 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,7 @@ BSD 3-Clause License Copyright (c) 2018, Salesforce + 2019-2020 The Board of Trustees of the Leland Stanford Junior University All rights reserved. Redistribution and use in source and binary forms, with or without diff --git a/README.md b/README.md index 4306c215..8b74aa2e 100644 --- a/README.md +++ b/README.md @@ -1,173 +1,54 @@ -![decaNLP Logo](decaNLP_logo.png) --------------------------------------------------------------------------------- -[![Build Status](https://travis-ci.org/salesforce/decaNLP.svg?branch=master)](https://travis-ci.org/salesforce/decaNLP) +# Genie NLP library -The Natural Language Decathlon is a multitask challenge that spans ten tasks: -question answering ([SQuAD](https://rajpurkar.github.io/SQuAD-explorer/)), machine translation ([IWSLT](https://wit3.fbk.eu/mt.php?release=2016-01)), summarization ([CNN/DM](https://cs.nyu.edu/~kcho/DMQA/)), natural language inference ([MNLI](https://www.nyu.edu/projects/bowman/multinli/)), sentiment analysis ([SST](https://nlp.stanford.edu/sentiment/treebank.html)), semantic role labeling([QA‑SRL](https://dada.cs.washington.edu/qasrl/)), zero-shot relation extraction ([QA‑ZRE](http://nlp.cs.washington.edu/zeroshot/)), goal-oriented dialogue ([WOZ](https://github.com/nmrksic/neural-belief-tracker/tree/master/data/woz), semantic parsing ([WikiSQL](https://github.com/salesforce/WikiSQL)), and commonsense reasoning ([MWSC](https://s3.amazonaws.com/research.metamind.io/decaNLP/data/schema.txt)). -Each task is cast as question answering, which makes it possible to use our new Multitask Question Answering Network ([MQAN](https://github.com/salesforce/decaNLP/blob/d594b2bf127e13d0e61151b6a2af3bf63612f380/models/multitask_question_answering_network.py)). -This model jointly learns all tasks in decaNLP without any task-specific modules or parameters in the multitask setting. For a more thorough introduction to decaNLP and the tasks, see the main [website](http://decanlp.com/), our [blog post](https://einstein.ai/research/the-natural-language-decathlon), or the [paper](https://arxiv.org/abs/1806.08730). +[![Build Status](https://travis-ci.org/stanford-oval/genienlp.svg?branch=master)](https://travis-ci.org/stanford-oval/genienlp) [![Language grade: Python](https://img.shields.io/lgtm/grade/python/g/stanford-oval/genienlp.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/stanford-oval/genienlp/context:python) -While the research direction associated with this repository focused on multitask learning, the framework itself is designed in a way that should make single-task training, transfer learning, and zero-shot evaluation simple. Similarly, the [paper](https://arxiv.org/abs/1806.08730) focused on multitask learning as a form of question answering, but this framework can be easily adapted for different approaches to single-task or multitask learning. +This library contains the NLP models for the [Genie](https://github.com/stanford-oval/genie-toolkit) toolkit for +virtual assistants. It is derived from the [decaNLP](https://github.com/salesforce/decaNLP) library by Salesforce, +but has diverged significantly. -## Leaderboard +The library is suitable for all NLP tasks that can be framed as Contextual Question Answering, that is, with 3 inputs: +- text or structured input as _context_ +- text input as _question_ +- text or structured output as _answer_ -| Model | decaNLP | [SQuAD](https://rajpurkar.github.io/SQuAD-explorer/) | [IWSLT](https://wit3.fbk.eu/mt.php?release=2016-01) | [CNN/DM](https://cs.nyu.edu/~kcho/DMQA/) | [MNLI](https://www.nyu.edu/projects/bowman/multinli/) | [SST](https://nlp.stanford.edu/sentiment/treebank.html) | [QA‑SRL](https://dada.cs.washington.edu/qasrl/) | [QA‑ZRE](http://nlp.cs.washington.edu/zeroshot/) | [WOZ](https://github.com/nmrksic/neural-belief-tracker/tree/master/data/woz) | [WikiSQL](https://github.com/salesforce/WikiSQL) | [MWSC](https://s3.amazonaws.com/research.metamind.io/decaNLP/data/schema.txt) | -| --- | --- | --- | --- | --- | --- | --- | ---- | ---- | --- | --- |--- | -| [MQAN](https://arxiv.org/abs/1806.08730)(Sampling+[CoVe](http://papers.nips.cc/paper/7209-learned-in-translation-contextualized-word-vectors)) | 609.0 | 77.0 | 21.4 | 24.4 | 74.0 | 86.5 | 80.9 | 40.9 | 84.8 | 70.2 | 48.8 | -| [MQAN](https://arxiv.org/abs/1806.08730)(QA‑first+[CoVe](http://papers.nips.cc/paper/7209-learned-in-translation-contextualized-word-vectors)) | 599.9 | 75.5 | 18.9 | 24.4 | 73.6 | 86.4 | 80.8 | 37.4 | 85.8 | 68.5 | 48.8 | -| [MQAN](https://arxiv.org/abs/1806.08730)(QA‑first) | 590.5 | 74.4 | 18.6 | 24.3 | 71.5 | 87.4 | 78.4 | 37.6 | 84.8 | 64.8 | 48.7 | -| [S2S](https://arxiv.org/abs/1806.08730) | 513.6 | 47.5 | 14.2 | 25.7 | 60.9 | 85.9 | 68.7 | 28.5 | 84.0 | 45.8 | 52.4 | +As the [decaNLP paper](https://arxiv.org/abs/1806.08730) shows, many different NLP tasks can be framed in this way. +Genie primarily uses the library for semantic parsing, dialogue state tracking, and natural language generation +given a formal dialogue state, and this is what the models work best for. -## Getting Started +## Installation -### GPU vs. CPU - -The `devices` argument can be used to specify the devices for training. For CPU training, specify `--devices -1`; for GPU training, specify `--devices DEVICEID`. Note that Multi-GPU training is currently a WIP, so `--device` is sufficient for commands below. The default will be to train on GPU 0 as training on CPU will be quite time-consuming to train on all ten tasks in decaNLP. - -If you want to use CPU, then remove the `nvidia-` and the `cuda9_` prefixes from the default commands listed in sections below. This will allow you to use Docker without CUDA. - -For example, if you have CUDA and all the necessary drivers and GPUs, you you can run a command inside the CUDA Docker image using: +genienlp is available on PyPi. You can install it with: ```bash -nvidia-docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "COMMAND --device 0" +pip3 install genienlp ``` -If you want to run the same command without CUDA: -```bash -docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:torch041 bash -c "COMMAND --device -1" -``` +After installation, a `genienlp` command becomes available. -For those in the Docker know, you can look at the Dockerfiles used to build these two images in `dockerfiles/`. - - -### PyTorch Version -The research associated with the original paper was done using Pytorch 0.3, but we have since migrated to 0.4. If you want to replicate results from the paper, then to be safe, you should use the code at a commit on or before 3c4f94b88768f4c3efc2fd4f015fed2f5453ebce. You should also replace `toch041` with `torch03` in the commands below to access a Docker image with the older version of PyTorch. - -## Training - -For example, to train a Multitask Question Answering Network (MQAN) on the Stanford Question Answering Dataset (SQuAD) on GPU 0: -```bash -nvidia-docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/train.py --train_tasks squad --device 0" -``` - -To multitask with the fully joint, round-robin training described in the paper, you can add multiple tasks: -```bash -nvidia-docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/train.py --train_tasks squad iwslt.en.de --train_iterations 1 --device 0" -``` - -To train on the entire Natural Language Decathlon: -```bash -nvidia-docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/train.py --train_tasks squad iwslt.en.de cnn_dailymail multinli.in.out sst srl zre woz.en wikisql schema --train_iterations 1 --device 0" -``` - -To pretrain on `n_jump_start=1` tasks for `jump_start=75000` iterations before switching to round-robin sampling of all tasks in the Natural Language Decathlon: -```bash -nvidia-docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/train.py --n_jump_start 1 --jump_start 75000 --train_tasks squad iwslt.en.de cnn_dailymail multinli.in.out sst srl zre woz.en wikisql schema --train_iterations 1 --device 0" -``` -This jump starting (or pretraining) on a subset of tasks can be done for any set of tasks, not only the entirety of decaNLP. - -### Tensorboard - -If you would like to make use of tensorboard, you can add the `--tensorboard` flag to your training runs. This will log things in the format that Tensorboard expects. - -To read those files and run the Tensorboard server, run (typically in a `tmux` pane or equivalent so that the process is not killed when you shut your laptop) the following command: +Likely, you will also want to download the word embeddings ahead of time: ```bash -docker run -it --rm -p 0.0.0.0:6006:6006 -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "tensorboard --logdir /decaNLP/results" +genienlp cache-embeddings --embeddings glove+char -d ``` -If you are running the server on a remote machine, you can run the following on your local machine to forward to http://localhost:6006/: +## Usage +Train a model: ```bash -ssh -4 -N -f -L 6006:127.0.0.1:6006 YOUR_REMOTE_IP +genienlp train --tasks almond --train_iterations 50000 --embeddings --data --save ``` -If you are having trouble with the specified port on either machine, run `lsof -if:6006` and kill the process if it is unnecessary. Otherwise, try changing the port numbers in the commands above. The first port number is the port the local machine tries to bind to, and and the second port is the one exposed by the remote machine (or docker container). - -### Notes on Training - -- On a single NVIDIA Volta GPU, the code should take about 3 days to complete 500k iterations. These should be sufficient to approximately reproduce the experiments in the paper. Training for about 7 days should be enough to fully replicate those scores, which should be only a few points higher than what is achieved by 500k iterations. -- The model can be resumed using stored checkpoints using `--load ` and `--resume`. By default, models are stored every `--save_every` iterations in the `results/` folder tree. -- During training, validation can be slow! Especially when computing ROUGE scores. Use the `--val_every` flag to change the frequency of validation. -- If you run out of GPU memory, reduce `--train_batch_tokens` and `--val_batch_size`. -- If you run out of CPU memory, make sure that you are running the most recent version of the code that interns strings; if you are still running out of CPU memory, post an issue with the command you ran and your peak memory usage. -- The first time you run, the code will download and cache all considered datasets. Please be advised that this might take a while, especially for some of the larger datasets. - -### Notes on Cached Data -- In order to make data loading much quicker for repeated experiments, datasets are cached using code in `text/torchtext/datasets/generic.py`. -- If there is an update to this repository that touches any files in `text/`, then it might have changed the way a dataset is cached. If this is the case, then you'll need to delete all relevant cached files or you will not see the changes. -- Paths to cached files should be printed out when a dataset is loaded, either in training or in prediction. Search the text logged to stdout for `Loading cached data from` or `Caching data to` in order to locate the relevant path names for data caches. - -## Evaluation - -You can evaluate a model for a specific task with `EVALUATION_TYPE` as `validation` or `test`: - +Generate predictions: ```bash -nvidia-docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/predict.py --evaluate EVALUATION_TYPE --path PATH_TO_CHECKPOINT_DIRECTORY --device 0 --tasks squad" +genienlp predict --tasks almond --data --path ``` -or evaluate on the entire decathlon by removing any task specification: -```bash -nvidia-docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/predict.py --evaluate EVALUATION_TYPE --path PATH_TO_CHECKPOINT_DIRECTORY --device 0" -``` - -For test performance, please use the original [SQuAD](https://rajpurkar.github.io/SQuAD-explorer/), [MultiNLI](https://www.nyu.edu/projects/bowman/multinli/), and [WikiSQL](https://github.com/salesforce/WikiSQL) evaluation systems. For WikiSQL, there is a detailed walk-through of how to get test numbers in the section of this document concerning [pretrained models](https://github.com/salesforce/decaNLP#pretrained-models). - -## Pretrained Models - -This model is the best MQAN trained on decaNLP so far. It was trained first on SQuAD and then on all of decaNLP. It uses [CoVe](http://papers.nips.cc/paper/7209-learned-in-translation-contextualized-word-vectors.pdf) as well. You can obtain this model and run it on the validation sets with the following. - -```bash -wget https://s3.amazonaws.com/research.metamind.io/decaNLP/pretrained/mqan_decanlp_better_sampling_cove_cpu.tgz -tar -xvzf mqan_decanlp_better_sampling_cove_cpu.tgz -nvidia-docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/predict.py --evaluate validation --path /decaNLP/mqan_decanlp_better_sampling_cove_cpu/ --checkpoint_name iteration_560000.pth --device 0 --silent" -``` - -This model is the best MQAN trained on WikiSQL alone, which established [a new state-of-the-art performance by several points on that task](https://github.com/salesforce/WikiSQL): 73.2 / 75.4 / 81.4 (ordered test logical form accuracy, unordered test logical form accuracy, test execution accuracy). - -```bash -wget https://s3.amazonaws.com/research.metamind.io/decaNLP/pretrained/mqan_wikisql_cpu.tar.gz -tar -xvzf mqan_wikisql_cpu.tar.gz -nvidia-docker run -it --rm -v `pwd`:/decaNLP/ bmccann/decanlp:cuda9_torch041 -c "python /decaNLP/predict.py --evaluate validation --path /decaNLP/mqan_wikisql_cpu --checkpoint_name iteration_57000.pth --device 0 --tasks wikisql" -nvidia-docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/predict.py --evaluate test --path /decaNLP/mqan_wikisql_cpu --checkpoint_name iteration_57000.pth --device 0 --tasks wikisql" -docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/convert_to_logical_forms.py /decaNLP/.data/ /decaNLP/mqan_wikisql_cpu/iteration_57000/validation/wikisql.txt /decaNLP/mqan_wikisql_cpu/iteration_57000/validation/wikisql.ids.txt /decaNLP/mqan_wikisql_cpu/iteration_57000/validation/wikisql_logical_forms.jsonl valid" -docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/convert_to_logical_forms.py /decaNLP/.data/ /decaNLP/mqan_wikisql_cpu/iteration_57000/test/wikisql.txt /decaNLP/mqan_wikisql_cpu/iteration_57000/test/wikisql.ids.txt /decaNLP/mqan_wikisql_cpu/iteration_57000/test/wikisql_logical_forms.jsonl test" -git clone https://github.com/salesforce/WikiSQL.git #git@github.com:salesforce/WikiSQL.git for ssh -docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/WikiSQL/evaluate.py /decaNLP/.data/wikisql/data/dev.jsonl /decaNLP/.data/wikisql/data/dev.db /decaNLP/mqan_wikisql_cpu/iteration_57000/validation/wikisql_logical_forms.jsonl" # assumes that you have data stored in .data -docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/WikiSQL/evaluate.py /decaNLP/.data/wikisql/data/test.jsonl /decaNLP/.data/wikisql/data/test.db /decaNLP/mqan_wikisql_cpu/iteration_57000/test/wikisql_logical_forms.jsonl" # assumes that you have data stored in .data -``` - -## Inference on a Custom Dataset - -Using a pretrained model or a model you have trained yourself, you can run on new, custom datasets easily by following the instructions below. In this example, we use the checkpoint for the best MQAN trained on the entirety of decaNLP (see the section on Pretrained Models to see how to get this checkpoint) to run on `my_custom_dataset`. - -```bash -mkdir -p .data/my_custom_dataset/ -touch .data/my_custom_dataset/val.jsonl -echo '{"context": "The answer is answer.", "question": "What is the answer?", "answer": "answer"}' >> .data/my_custom_dataset/val.jsonl -# TODO add your own examples line by line to val.jsonl in the form of a JSON dictionary, as demonstrated above. -# Make sure to delete the first line if you don't want the demonstrated example. -nvidia-docker run -it --rm -v `pwd`:/decaNLP/ -u $(id -u):$(id -g) bmccann/decanlp:cuda9_torch041 bash -c "python /decaNLP/predict.py --evaluate valid --path /decaNLP/mqan_decanlp_qa_first_cpu --checkpoint_name iteration_1140000.pth --tasks my_custom_dataset" -``` -You should get output that ends with something like this: -``` -** /decaNLP/mqan_decanlp_qa_first_cpu/iteration_1140000/valid/my_custom_dataset.txt already exists -- this is where predictions are stored ** -** /decaNLP/mqan_decanlp_qa_first_cpu/modeltion_1140000/valid/my_custom_dataset.gold.txt already exists -- this is where ground truth answers are stored ** -** /decaNLP/mqan_decanlp_qa_first_cpu/modeltion_1140000/valid/my_custom_dataset.results.txt already exists -- this is where metrics are stored ** -{"em":0.0,"nf1":100.0,"nem":100.0} - -{'em': 0.0, 'nf1': 100.0, 'nem': 100.0} -Prediction: the answer -Answer: answer -``` -From this output, you can see where predictions are stored along with ground truth outputs and metrics. If you want to rerun using this model checkpoint on this particular dataset, you'll need to pass the `--overwrite_predictions` argument to `predict.py`. If you do not want predictions and answers printed to stdout, then pass the `--silent` argument to `predict.py`. - -The metrics dictionary should have printed something like `{'em': 0.0, 'nf1': 100.0, 'nem': 100.0}`. Here `em` stands for exact match. This is the percentage of predictions that had every token match the ground truth answer exactly. The normalized version, `nem`, lowercases and strips punctuation -- all of our models are trained on lowercased data, so `nem` is a more accurate representation of performance than `em` for our models. For tasks that are typically treated as classification problems, these exact match scores should correspond to accuracy. `nf1` is a normalized (lowercased; punctuation stripped) [F1 score](https://en.wikipedia.org/wiki/F1_score) over the predicted and ground truth sequences. If you would like to add additional metrics that are already implemented you can try adding `--bleu` (the typical metric for machine translation) and `--rouge` (the typical metric for summarization). Other metrics can be implemented following the patterns in `metrics.py`. +See `genienlp --help` for details. ## Citation -If you use this in your work, please cite [*The Natural Language Decathlon: Multitask Learning as Question Answering*](https://arxiv.org/abs/1806.08730). +If you use the MultiTask Question Answering model in your work, please cite [*The Natural Language Decathlon: Multitask Learning as Question Answering*](https://arxiv.org/abs/1806.08730). -``` +```bibtex @article{McCann2018decaNLP, title={The Natural Language Decathlon: Multitask Learning as Question Answering}, author={Bryan McCann and Nitish Shirish Keskar and Caiming Xiong and Richard Socher}, @@ -176,6 +57,13 @@ If you use this in your work, please cite [*The Natural Language Decathlon: Mult } ``` -## Contact +If you use the BERT-LSTM model (Identity encoder + MQAN decoder), please cite [_Schema2QA: Answering Complex Queries on the Structured Web with a Neural Model_](https://arxiv.org/abs/2001.05609) -Contact: [bmccann@salesforce.com](mailto:bmccann@salesforce.com) and [nkeskar@salesforce.com](mailto:nkeskar@salesforce.com) +```bibtex +@article{Xu2020Schema2QA, + title={Schema2QA: Answering Complex Queries on the Structured Web with a Neural Model}, + author={Silei Xu and Giovanni Campagna and Jian Li and Monica S. Lam}, + journal={arXiv preprint arXiv:2001.05609}, + year={2020} +} +``` \ No newline at end of file diff --git a/decaNLP_logo.png b/decaNLP_logo.png deleted file mode 100644 index 140ca4aaba735be6921837770e1d1d5c7e4ffd25..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 78758 zcmeFYcUzO)(mt$+fFhzIARSadq$yQ8f=chb_uhL6A)+FR3P|suG$AC^0HGt&dxuaJ zLZtUl0_458@4ff4{XLIe=5LfN$z;-rR_^>Yy{0*xO%d-lP-fWgtfjqcb$&!!1G6^_y;`yfaf>y@Sn)@Cup4iCvE*H z9sdKKf57v9(7t~-&mXzmKZN=Jz|4Of=^ya?1D@ZI*?+37KSJZ5QvFYHiYk;&J!sSg62%H8#O2^wLXmAjl;Fhocr+RKgsrgeK2poczMJTA-Yhv93}no@{}M3 z-YvPa$W^_Yr0u6tU741ev=QWk1*7XZS~q9}e!6H;{id*FmNp;0NC?deCcXJUlVHp= z*aePT7hEzP`514hq^a5&>KVwsn=>DmHW8TMvK>BFcYD&U23(D*c~-zR#`1gB&7J@d z)F`IzvbrWW#;8doy;G}u^o}Q3)TPTPCZ2jvPoV(qNMzV$FkLS?jdP8!!+U3}R&Vem z)lckFGpus|*4pQd{(y!X(N-fF(JGFAdnkf&va_4R)|Xcx*g_L%f&@9VNjVa_mNFhi z)xSNN*eXsNtaI@*-On8}XgT8ZPX0~K0(RKSM7mgXbYt@ogPGunvG>tac|cyE&LruWbbFSP!M&OixM@1v_G=tol3(9LIm_vmslY%=!!s`@!82$6I+! zeXH->dch5~ye1bI@+-83T?!FHT^-A#={MP^220fBDrTM9R{6XVR?AOR9k>y$hWOq; zD4X{Fz#ccx-oEJirt!iKV>{AJj6GB?I>HfD(4ulh2Y>Jb0WauVZ$r&WMx|qClqK99 zuZsT|nXqkh;e&xtOiXK_|I5|>-lC9)cLB>~g}ubdbKEj{6U>4F)}>DBZ!#6;jvFc> z9=!Ur{LUj|GSVkgJnFQENHbl%qZd-`B{XTfQ@i+~NCA|8(qiYY_WM}h{|!)*+3Eun zA-b7)Q!!8^<5fMK4%{hKyi9@>uFwIEn~b&lUgv23d)#|CSQ(9 zpHdZsYC}h~yGC})_j18~y~-0#idX$l&QDmTaF-rt_n2XWKK$V;KCl8`QHcALymw8% z+S5Vx1j}LI+g0ifTa{N_@ff_vs7Y$T8K>xoE4k{dp}@vkQ)@Hk{Lt!McTi7vIhCPY ziD<$f0He=zzG?aBo=C0*;d(mA&sB6Ux3J1v!O#e$$vv80Hz{5uh%3PkW3AHERmM&! zJmU zqgRi=gM{;-dHf@qF~kMDwEJ_xg>jDe(Tci$*j(JmbW-`y0)5bUQxczxVs%ZmnfL3; zKWz9NZU8F|9%GZtA)#tK-88e}5*PM&^Xe*L-}kkqGn-)OIm32Ccq}pgiZXAWKn`os zBg;s7&vBNe)n(=U0pVDauEd}x|K5lH6%TKb0w6DOr*50O80BS4CE9QB_QJNT=2IxANbV7YE_usk=D4ezx-*e?rUl0in< zgzSSfYg{TmWyfn@!OzAL|LW$u&`(QM2B3U&2Rd7`(AvhqN7V19avM)t(&1v#gw?FX z-~ei%@Q#-7Z)0ty18}M;UeH##Pvqj8(r}4=6c^H61J&h{Pt`VdeFYdBTfq+ z-|P(TiXyJ#gn>kXo>;ZM&aX~X+2CNK%P@i_vKIJSn<1$_2o

g0dQ|7C*&4a_(EL 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