From 4a69bd13dceed859911f4e360dfde0cdb9d9fbf0 Mon Sep 17 00:00:00 2001 From: Alireza Kenarsari Date: Wed, 2 Dec 2020 07:45:12 -0800 Subject: [PATCH] V1.6 (#52) --- .gitmodules | 3 - README.md | 588 +++--- .../src/main/jniLibs/arm64-v8a/libpv_rhino.so | Bin 83880 -> 87976 bytes .../main/jniLibs/armeabi-v7a/libpv_rhino.so | Bin 75404 -> 76060 bytes .../rhino/src/main/jniLibs/x86/libpv_rhino.so | Bin 87628 -> 91724 bytes .../src/main/jniLibs/x86_64/libpv_rhino.so | Bin 92336 -> 96432 bytes .../rhino/src/main/res/raw/rhino_params.pv | Bin 2108162 -> 2108166 bytes binding/dotnet/README.md | 6 +- binding/dotnet/Rhino/Rhino.csproj | 4 +- binding/dotnet/RhinoTest/MainTest.cs | 6 +- binding/java/.idea/artifacts/Rhino_jar.xml | 2 +- .../org_junit_jupiter_junit_jupiter_5_4_2.xml | 17 + binding/java/README.md | 9 +- binding/java/Rhino.iml | 35 +- .../bin/{rhino-1.5.0.jar => rhino-1.6.0.jar} | Bin 2118115 -> 2121709 bytes .../test/ai/picovoice/rhino/RhinoTest.java | 6 +- binding/javascript/rhino.js | 5 +- binding/nodejs/.gitignore | 3 +- binding/nodejs/index.test.js | 20 +- binding/python/test_rhino.py | 11 +- binding/react-native/README.md | 7 +- binding/react-native/package.json | 5 +- .../src/main/res/raw/coffee_maker_android.rhn | Bin 25952 -> 3004 bytes .../main/res/raw/smart_lighting_android.rhn | Bin 13676 -> 7108 bytes demo/android/Activity/build.gradle | 2 +- .../gradle/wrapper/gradle-wrapper.properties | 4 +- demo/android/Activity/rhino/rhino-release.aar | Bin 2142994 -> 2147815 bytes demo/android/README.md | 125 +- demo/c/README.md | 30 +- demo/c/rhino_demo_file.c | 104 +- demo/c/rhino_demo_mic.c | 6 +- demo/dotnet/README.md | 33 +- demo/dotnet/RhinoDemo/FileDemo.cs | 4 +- demo/dotnet/RhinoDemo/MicDemo.cs | 4 +- demo/dotnet/RhinoDemo/RhinoDemo.csproj | 2 +- demo/ios/RhinoDemo/README.md | 125 +- .../RhinoDemo.xcodeproj/project.pbxproj | 8 +- demo/java/.idea/artifacts/rhino_file_demo.xml | 2 +- demo/java/.idea/artifacts/rhino_mic_demo.xml | 2 +- demo/java/.idea/libraries/rhino_1_5_0.xml | 9 - demo/java/README.md | 25 +- demo/java/bin/rhino-file-demo.jar | Bin 2182461 -> 2186056 bytes demo/java/bin/rhino-mic-demo.jar | Bin 2182460 -> 2186054 bytes .../lib/{rhino-1.5.0.jar => rhino-1.6.0.jar} | Bin 2118115 -> 2121709 bytes .../manifest/file-demo/META-INF/MANIFEST.MF | 2 +- .../manifest/mic-demo/META-INF/MANIFEST.MF | 2 +- demo/java/rhinodemo.iml | 2 +- demo/javascript/.gitignore | 3 +- demo/javascript/index.html | 1649 +++++------------ demo/nodejs/.gitignore | 3 +- demo/python/README.md | 25 +- demo/python/rhino_porcupine_demo_mic.py | 250 --- include/pv_rhino.h | 2 +- lib/README.md | 4 - lib/android/arm64-v8a/libpv_rhino.so | Bin 83880 -> 87976 bytes lib/android/armeabi-v7a/libpv_rhino.so | Bin 75404 -> 76060 bytes lib/android/x86/libpv_rhino.so | Bin 87628 -> 91724 bytes lib/android/x86_64/libpv_rhino.so | Bin 92336 -> 96432 bytes lib/beaglebone/libpv_rhino.so | Bin 91584 -> 96016 bytes lib/common/rhino_params.pv | Bin 2108162 -> 2108166 bytes lib/ios/libpv_rhino.a | Bin 1719736 -> 651760 bytes lib/java/linux/x86_64/libpv_rhino_jni.so | Bin 115456 -> 121088 bytes lib/java/mac/x86_64/libpv_rhino_jni.dylib | Bin 122864 -> 123096 bytes lib/java/windows/amd64/pv_rhino_jni.dll | Bin 144124 -> 145083 bytes lib/linux/x86_64/libpv_rhino.so | Bin 100568 -> 106000 bytes lib/mac/x86_64/libpv_rhino.dylib | Bin 94180 -> 122192 bytes lib/node/linux/x86_64/pv_rhino.node | Bin 103384 -> 109192 bytes lib/node/mac/x86_64/pv_rhino.node | Bin 118624 -> 118672 bytes .../raspberry-pi/cortex-a53/pv_rhino.node | Bin 86544 -> 95872 bytes lib/node/raspberry-pi/cortex-a7/pv_rhino.node | Bin 86544 -> 95872 bytes .../raspberry-pi/cortex-a72/pv_rhino.node | Bin 90640 -> 95872 bytes lib/raspberry-pi/arm11/libpv_rhino.so | Bin 87588 -> 87948 bytes lib/raspberry-pi/cortex-a53/libpv_rhino.so | Bin 91208 -> 91544 bytes lib/raspberry-pi/cortex-a7/libpv_rhino.so | Bin 91212 -> 91548 bytes lib/raspberry-pi/cortex-a72/libpv_rhino.so | Bin 95304 -> 95640 bytes lib/wasm/pv_rhino.js | 2 +- lib/wasm/pv_rhino.wasm | Bin 2164128 -> 2164778 bytes lib/windows/amd64/libpv_rhino.dll | Bin 144819 -> 142994 bytes .../audio_samples/test_within_context.wav | Bin 279116 -> 225892 bytes .../contexts/android/coffee_maker_android.rhn | Bin 25952 -> 3004 bytes .../android/smart_lighting_android.rhn | Bin 13676 -> 7108 bytes .../beaglebone/coffee_maker_beaglebone.rhn | Bin 25952 -> 3004 bytes .../beaglebone/smart_lighting_beaglebone.rhn | Bin 13676 -> 7108 bytes resources/contexts/ios/coffee_maker_ios.rhn | Bin 25952 -> 3004 bytes resources/contexts/ios/smart_lighting_ios.rhn | Bin 13676 -> 7108 bytes .../contexts/linux/coffee_maker_linux.rhn | Bin 25952 -> 3004 bytes .../contexts/linux/smart_lighting_linux.rhn | Bin 13676 -> 7108 bytes resources/contexts/mac/coffee_maker_mac.rhn | Bin 25952 -> 3004 bytes resources/contexts/mac/smart_lighting_mac.rhn | Bin 13676 -> 7108 bytes .../coffee_maker_raspberry-pi.rhn | Bin 25952 -> 3004 bytes .../smart_lighting_raspberry-pi.rhn | Bin 13676 -> 7108 bytes resources/contexts/wasm/coffee_maker_wasm.rhn | Bin 25947 -> 3000 bytes .../contexts/wasm/smart_lighting_wasm.rhn | Bin 13671 -> 7104 bytes .../contexts/windows/coffee_maker_windows.rhn | Bin 25952 -> 3004 bytes .../windows/smart_lighting_windows.rhn | Bin 13676 -> 7108 bytes resources/doc/console_rhino.gif | Bin 57843 -> 0 bytes resources/porcupine | 1 - 97 files changed, 1109 insertions(+), 2048 deletions(-) delete mode 100644 .gitmodules create mode 100644 binding/java/.idea/libraries/org_junit_jupiter_junit_jupiter_5_4_2.xml rename binding/java/bin/{rhino-1.5.0.jar => rhino-1.6.0.jar} (92%) delete mode 100644 demo/java/.idea/libraries/rhino_1_5_0.xml rename demo/java/lib/{rhino-1.5.0.jar => rhino-1.6.0.jar} (92%) delete mode 100644 demo/python/rhino_porcupine_demo_mic.py delete mode 100644 resources/doc/console_rhino.gif delete mode 160000 resources/porcupine diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 05be39d66..000000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "resources/porcupine"] - path = resources/porcupine - url = ../porcupine.git diff --git a/README.md b/README.md index bdda1e7e7..b5b0d018f 100644 --- a/README.md +++ b/README.md @@ -9,86 +9,80 @@ interest, in real-time. For example, given a spoken command >Can I have a small double-shot espresso? -Rhino infers that the user wants to order a drink with these specifications: +Rhino infers that the user and emits the following inference result: ```json { - "type": "espresso", - "size": "small", - "numberOfShots": "2" + "isUnderstood": "true", + "intent": "orderBeverage", + "slots": { + "beverage": "espresso", + "size": "small", + "numberOfShots": "2" + } } ``` Rhino is: - using deep neural networks trained in real-world environments. -- compact and computationally-efficient, making it perfect for IoT. -- cross-platform. It is implemented in fixed-point ANSI C. Raspberry Pi (all variants), Beagle Bone, Android, iOS, - Linux (x86_64), Mac (x86_64), Windows (x86_64), and web browsers are supported. Furthermore, Support for various ARM - Cortex-A microprocessors and ARM Cortex-M microcontrollers is available for enterprise customers. -- self-service. Developers and UX designers can train custom models using [Picovoice Console](https://picovoice.ai/console/). +- compact and computationally-efficient. It is perfect for IoT. +- cross-platform. Raspberry Pi, BeagleBone, Android, iOS, Linux (x86_64), Mac (x86_64), Windows (x86_64), and web +browsers are supported. Additionally, enterprise customers have access to ARM Cortex-M SDK. +- self-service. Developers can train custom models using [Picovoice Console](https://picovoice.ai/console/). ## Table of Contents -- [License](#license) -- [Use Cases](#use-cases) -- [Try It Out](#try-it-out) -- [Performance](#performance) -- [Model Variants](#model-variants) -- [Terminology](#terminology) -- [Picovoice Console](#picovoice-console) -- [Structure of Repository](#structure-of-repository) -- [Running Demo Applications](#running-demo-applications) - - [Python](#python-demos) - - [.NET](#net-demos) - - [Java](#java-demos) - - [React Native](#react-native-demos) - - [Android](#android-demos) - - [iOS](#ios-demos) - - [JavaScript](#javascript-demos) - - [C](#c-demos) -- [Integration](#integration) - - [Python](#python) - - [.NET](#net) - - [Java](#java) - - [React Native](#react-native) - - [Android](#android) - - [iOS](#ios) - - [JavaScript](#javascript) - - [C](#c) -- [Releases](#releases) -- [FAQ](#faq) - -## License - -This repository is licensed under Apache 2.0 which allows running the engine on all supported platforms -(except microcontrollers) using a set of freely-available [models](/resources/contexts). You may create custom models -using [Picovoice Console](https://picovoice.ai/console/). - -There are two types of Picovoice Console accounts: Personal and Enterprise. Personal accounts empower researchers, -hobbyists, and tinkerers to experiment. Personal accounts are not permitted for any commercial usage, including internal -prototyping and proofs-of-concept. Enterprise accounts can unlock all capabilities of Picovoice Console, are permitted -for use in commercial settings, and have a path to graduate to commercial distribution. For more information check -[here](https://picovoice.ai/pricing/). +- [Rhino](#rhino) + - [Table of Contents](#table-of-contents) + - [License & Terms](#license--terms) + - [Use Cases](#use-cases) + - [Try It Out](#try-it-out) + - [Performance](#performance) + - [Terminology](#terminology) + - [Demos](#demos) + - [Python](#python-demos) + - [.NET](#net-demos) + - [Java](#java-demos) + - [React Native](#react-native-demos) + - [Android](#android-demos) + - [iOS](#ios-demos) + - [JavaScript](#javascript-demos) + - [NodeJS](#nodejs-demos) + - [C](#c-demos) + - [SDKs](#sdks) + - [Python](#python) + - [.NET](#net) + - [Java](#java) + - [React Native](#react-native) + - [Android](#android) + - [iOS](#ios) + - [JavaScript](#javascript) + - [NodeJS](#nodejs) + - [C](#c) + - [Releases](#releases) + - [FAQ](#faq) + +## License & Terms + +Rhino SDK is free and licensed under Apache 2.0 including the [models](/resources/contexts) released within the +repository. [Picovoice Console](https://picovoice.ai/console/) offers two types of subscriptions: Personal and Enterprise. +Personal accounts can train custom wake word models, subject to limitations and strictly for non-commercial purposes. +Personal accounts empower researchers, hobbyists, and tinkerers to experiment. Enterprise accounts can unlock all +capabilities of Picovoice Console, are permitted for use in commercial settings, and have a path to graduate to +commercial distribution[*](https://picovoice.ai/pricing/). ## Use Cases -Rhino should be used when the domain of voice interactions is specific (limited). Smart appliances, hearables, -infotainment systems, and automotive are a few examples. +Rhino is the right product if the domain of voice interactions is specific (limited). -- If you want to create voice experiences similar to Alexa or Google, check out -[Picovoice SDK](https://github.com/Picovoice/picovoice). -- If you need to recognize a few simple voice commands or activate a device using voice you should check out - [Porcupine](https://github.com/Picovoice/porcupine). +- If you want to create voice experiences similar to Alexa or Google, check out [Picovoice platform](https://github.com/Picovoice/picovoice). +- If you need to recognize a few static (always listening) voice commands, check out [Porcupine](https://github.com/Picovoice/porcupine). ## Try It Out - [Interactive Web Demo](https://picovoice.ai/demos/barista/) -- [Picovoice Console](https://picovoice.ai/console/) - -![Picovoice Console](resources/doc/console_rhino.gif) - - Rhino and [Porcupine](https://github.com/Picovoice/porcupine) on an ARM Cortex-M7 [![Rhino in Action](https://img.youtube.com/vi/WadKhfLyqTQ/0.jpg)](https://www.youtube.com/watch?v=WadKhfLyqTQ) @@ -100,45 +94,40 @@ A comparison between the accuracy of Rhino and major cloud-based alternatives is ![](resources/doc/benchmark.png) -## Model Variants - -The library in this repository is the standard trim of the engine. The standard trim is suitable for applications running -on microprocessors (e.g. Raspberry Pi and BeagleBone) and mobile devices (Android and iOS). Picovoice has developed -several trims of the engine targeted at a wide range of applications. These are only available to enterprise customers. - ## Terminology Rhino infers the user's intent from spoken commands within a domain of interest. We refer to such a specialized domain as -a **context**. A context can be thought of a set of voice commands each mapped to an intent: +a `Context`. A context can be thought of a set of voice commands each mapped to an intent: ```yaml -turnOff: +turnLightOff: - Turn off the lights in the office - Turn off all lights -setColor: +setLightColor: - Set the kitchen lights to blue -lowerIntensity: - - Dim the lights - - Make the lights darker ``` -In examples above, each voice command is called an **expression**. Expressions are what we expect the user to utter +In examples above, each voice command is called an `Expression`. Expressions are what we expect the user to utter to interact with our voice application. -Consider the expression _"Turn off the lights in the office"_. What we require from Rhino is: +Consider the expression -1. To infer the intent ("turnOff") -2. Record the specific details from the utterance, in this case the location ("office") +>Turn off the lights in the office + +What we require from Rhino is: + +1. To infer the intent (`turnLightOff`) +2. Record the specific details from the utterance, in this case the location (`office`) We can capture these details using slots by updating the expression: ```yaml -turnOff: +turnLightOff: - Turn off the lights in the $location:lightLocation. ``` `$location:lightLocation` means that we expect a variable of type `location` to occur and we want to capture its value -in a variable named `lightLocation`. We call such variable a **slot**. Slots give us the ability to capture details of the +in a variable named `lightLocation`. We call such variable a `Slot`. Slots give us the ability to capture details of the spoken commands. Each slot type is be defined as a set of phrases. For example: ```yaml @@ -158,72 +147,58 @@ You can create custom contexts using the [Picovoice Console](https://picovoice.a To learn the complete expression syntax of Rhino, see the [Speech-to-Intent Syntax Cheat Sheet](https://picovoice.ai/docs/syntax-cheat-sheet/). -## Picovoice Console - -The [Picovoice Console](https://picovoice.ai/console/) enables creating Speech-to-Intent contexts. The Console is a web-based -platform for building voice applications and training models. +## Demos -## Structure of Repository +### Python Demos -If using SSH, clone the repository with: +Install [PyAudio](https://people.csail.mit.edu/hubert/pyaudio/) and then the demo package: ```bash -git clone --recurse-submodules git@github.com:Picovoice/rhino.git +sudo pip3 install pvrhinodemo ``` -If using HTTPS, then type: +With a working microphone connected to your device run the following in the terminal: -```bash -git clone --recurse-submodules https://github.com/Picovoice/rhino.git +``` +rhino_demo_mic --context_path ${CONTEXT_FILE_PATH} ``` -Rhino is shipped as an ANSI C shared library. The binary files for supported platforms are located under [lib](/lib) -and header files are at [include](/include). Bindings are available at [binding](/binding) to facilitate usage from -higher-level languages. Demo applications are at [demo](/demo). Finally, [resources](resources) is a placeholder for -data used by various applications within the repository. +Replace `${CONTEXT_FILE_PATH}` with either a context file created using Picovoice Console or one within the repository. -## Running Demo Applications +For more information about Python demos go to [demo/python](/demo/python). -### Python Demos +### .NET Demos -This [demo application](/demo/python/rhino_porcupine_demo_mic.py) allows testing Rhino using your computer's microphone. It opens -an input audio stream, monitors it using our [Porcupine](https://github.com/Picovoice/porcupine) wake word detection -engine, and when the wake phrase is detected it will extract the intent within the follow-up spoken command using Rhino. +[Rhino .NET demo](/demo/dotnet) is a command-line application that lets you choose between running Rhino on an audio +file or on real-time microphone input. -The following command runs the demo application on your machine to infer intent from spoken commands in the context of a -smart lighting system. It also initializes the Porcupine engine to detect the wake phrase "Picovoice". When running you -can issue commands such as "Picovoice, turn on the lights". +Make sure there is a working microphone connected to your device. From [demo/dotnet/RhinoDemo](/demo/dotnet/RhinoDemo) +run the following in the terminal: ```bash -python3 demo/python/rhino_porcupine_demo_mic.py \ ---rhino_context_file_path ./resources/contexts/${SYSTEM}/smart_lighting_${SYSTEM}.rhn +dotnet run -c MicDemo.Release -- --context_path ${CONTEXT_FILE_PATH} ``` -In the above command replace `${SYSTEM}` with your platform name (e.g. linux, mac, raspberry-pi). - -### .NET Demos - -The [Rhino dotnet demo](/demo/dotnet) is a command line application that lets you choose between running Rhino on a -audio file or on real-time microphone input. - -The following command runs the demo application on your machine to infer intent from spoken commands in the context of a -smart lighting system: +Replace `${CONTEXT_FILE_PATH}` with either a context file created using Picovoice Console or one within the repository. -```bash -dotnet run -c MicDemo.Release -- --context_path ./resources/contexts/${SYSTEM}/smart_lighting_${SYSTEM}.rhn -``` +For more information about .NET demos go to [demo/dotnet](/demo/dotnet). ### Java Demos The [Rhino Java demo](/demo/java) is a command-line application that lets you choose between running Rhino on a audio file or on real-time microphone input. -The following command uses the Java demo to run inference on an audio file in context of a smart coffee maker: +Make sure there is a working microphone connected to your device. From the root of the repository run the following in +the terminal: ```bash -java -jar rhino-file-demo.jar -i ${AUDIO_PATH} -c ./resources/contexts/${SYSTEM}/coffee_maker_${SYSTEM}.rhn +java -jar demo/java/bin/rhino-mic-demo.jar -c ${CONTEXT_FILE_PATH} ``` +Replace `${CONTEXT_FILE_PATH}` with either a context file created using Picovoice Console or one within the repository. + +For more information about Java demos go to [demo/java](/demo/java). + ### React Native Demos To run the React Native Rhino demo app you'll first need to setup your React Native environment. For this, @@ -243,122 +218,139 @@ yarn ios-install # sets up environment yarn ios-run # builds and deploys to iOS ``` - ### Android Demos Using Android Studio, open [demo/android/Activity](/demo/android/Activity) as an Android project and then run the -application. Note that you will need an Android phone (with developer options enabled) connected to your machine. After -pressing the start button you can issue commands such as "turn off the lights" or "set the lights in the living room to purple". +application. After pressing the start button you can issue commands such as + +>Turn off the lights. + +or + +>Set the lights in the living room to purple. + +For more information about Android demo and the complete list of available expressions go to [demo/android](/demo/android). ### iOS Demos Using [Xcode](https://developer.apple.com/xcode/), open -[demo/ios/RhinoDemo/RhinoDemo.xcodeproj](/demo/ios/RhinoDemo/RhinoDemo.xcodeproj) and run the application. You will -need an iOS device connected to your machine and a valid Apple developer account. After pressing the start button you can -issue commands such as "turn off the lights". +[demo/ios/RhinoDemo/RhinoDemo.xcodeproj](/demo/ios/RhinoDemo/RhinoDemo.xcodeproj) and run the application. After pressing +the start button you can issue commands such as -### JavaScript Demos +>Turn off the lights. + +or -You need `yarn` or `npm`. Install the demo dependencies by executing either of the following sets of `yarn` or `npm` commands from -[demo/javascript/](/demo/javascript/). +>Set the lights in the living room to purple. + +For more information about Android demo and the complete list of available expressions go to [demo/ios/RhinoDemo](/demo/ios/RhinoDemo). + +### JavaScript Demos -#### Yarn +From [demo/javascript](/demo/javascript) run the following in the terminal: ```bash yarn yarn start ``` -#### NPM +It will launch a local server running the demo. Open `http://localhost:5000` in your web browser and follow the +instructions on the page. + +### NodeJS Demos + +Install [node-record-lpcm16](https://www.npmjs.com/package/node-record-lpcm16) NPM package and follow the instructions +there for setting up your microphone. Then install the demo package: ```bash -npm install -npm install -g copy-files-from-to -copy-files-from-to -npx serve +yarn global add @picovoice/rhino-node-demo +``` + +With a working microphone connected to your device run the following in the terminal: + +```shell +rhn-mic-demo --context_path ${CONTEXT_FILE_PATH} ``` -#### Web Browser +Replace `${CONTEXT_FILE_PATH}` with either a context file created using Picovoice Console or one within the repository. -The last command will launch a local server running the demo. Open http://localhost:5000 in your web browser and follow the instructions on the page. +For more information about NodeJS demos go to [demo/nodejs](/demo/nodejs). ### C Demos -[This demo](/demo/c/rhino_demo_mic.c) runs on Linux-based systems (e.g. Ubuntu, Raspberry Pi, and BeagleBone). You need -`GCC` and `ALSA` installed to compile it. Compile the demo using +[Microphone demo](/demo/c/rhino_demo_mic.c) runs on Linux-based systems (e.g. Ubuntu, Raspberry Pi, and BeagleBone). +Build the demo: ```bash -gcc -O3 -o demo/c/rhino_demo_mic -I include -I resources/porcupine/include/ demo/c/rhino_demo_mic.c \ --ldl -lasound -std=c99 +gcc -std=c99 -O3 -o demo/c/rhino_demo_mic -I include demo/c/rhino_demo_mic.c -ldl -lasound ``` -Find the name of audio input device (microphone) on your computer using `arecord -L`. Finally execute the following +Find the name of audio input device (microphone) on your computer using `arecord -L` and then from the root of the +repository run the demo: ```bash -demo/c/rhino_demo_mic \ +./demo/c/rhino_demo_mic \ ${RHINO_LIBRARY_PATH} \ lib/common/rhino_params.pv \ resources/contexts/${SYSTEM}/smart_lighting_${SYSTEM}.rhn \ -${PORCUPINE_LIBRARY_PATH} \ -resources/porcupine/lib/common/porcupine_params.pv \ -resources/porcupine/resources/keyword_files/${SYSTEM}/picovoice_${SYSTEM}.ppn \ ${INPUT_AUDIO_DEVICE} ``` -Replace `${RHINO_LIBRARY_PATH}` with path to appropriate library available under [lib](/lib), `${SYSTEM}` with the -name of the operating system on your machine (e.g. linux or raspberry-pi), `${PORCUPINE_LIBRARY_PATH}` with path to appropriate -Porcupine library available under [resources/porcupine/lib](/resources/porcupine/lib) and `${INPUT_AUDIO_DEVICE}` with -the name of your microphone device. The demo opens an audio stream and detects utterances of keyword "Picovoice" -followed by spoken commands for a smart lighting system. For example you can say "Picovoice, turn on the lights". +Replace `${LIBRARY_PATH}` with path to appropriate library available under [lib](/lib), `${SYSTEM}` with the +name of the platform you are running on (`linux`, `raspberry-pi`, or `beaglebone`), and `${INPUT_AUDIO_DEVICE}` with +the name of your microphone device. The demo opens an audio stream and your intent from spoken commands in the context +of a smart lighting system. For example you can say -## Integration +>Turn on the lights in the bedroom. -Below are code snippets showcasing how Rhino can be integrated into different applications. +## SDKs ### Python -[rhino.py](/binding/python/rhino.py) provides a Python binding for Rhino library. Below is a quick demonstration of how -to initialize an instance: +Install the Python SDK: -```python -library_path = ... # absolute path to Rhino's dynamic library -model_file_path = ... # available at lib/common/rhino_params.pv -context_file_path = ... # absolute path to context file for the domain of interest +```bash +pip3 install pvrhino +``` -rhino = Rhino( - library_path=library_path, - model_path=model_file_path, - context_path=context_file_path) +The SDK exposes a factory method to create instances of the engine: + +```python +import pvrhino + +handle = pvrhino.create(context_path='/absolute/path/to/context') ``` +Where `context_path` is the absolute path to Speech-to-Intent context created either using Picovoice Console or one of +the default contexts available on Rhino's GitHub repository. + When initialized, valid sample rate can be obtained using `rhino.sample_rate`. Expected frame length (number of audio samples in an input array) is `rhino.frame_length`. The object can be used to infer intent from spoken commands as below: ```python +import pvrhino + +handle = pvrhino.create(context_path='/absolute/path/to/context') + def get_next_audio_frame(): pass while True: - is_finalized = rhino.process(get_next_audio_frame()) + is_finalized = handle.process(get_next_audio_frame()) if is_finalized: - if rhino.is_understood(): - intent, slot_values = rhino.get_intent() - # add code to take action based on inferred intent and slot values - else: + inference = handle.get_inference() + if not inference.is_understood: # add code to handle unsupported commands pass - - rhino.reset() + else: + intent = inference.intent + slots = inference.slots + # add code to take action based on inferred intent and slot values ``` -Finally, when done, be sure to explicitly release the resources; the binding class does not rely on the garbage -collector. - -```python -rhino.delete() -``` +Finally, when done be sure to explicitly release the resources using `handle.delete()`. ### .NET @@ -371,7 +363,7 @@ dotnet add package Rhino The SDK exposes a factory method to create instances of the engine as below: ```csharp -using Rhino +using Pv Rhino handle = Rhino.Create(contextPath:"/absolute/path/to/context"); ``` @@ -466,11 +458,8 @@ handle.delete(); ### React Native -For React Native integration, you can install our -[@picovoice/react-native-voice-processor](https://www.npmjs.com/package/@picovoice/react-native-voice-processor) and -[@picovoice/rhino-react-native](https://www.npmjs.com/package/@picovoice/rhino-react-native) native modules into -your project using yarn or npm. The module provides you with two levels of API to choose from depending -on your needs. +Install [@picovoice/react-native-voice-processor](https://www.npmjs.com/package/@picovoice/react-native-voice-processor) and +[@picovoice/rhino-react-native](https://www.npmjs.com/package/@picovoice/rhino-react-native). The SDK provides two APIs: #### High-Level API @@ -498,7 +487,7 @@ call `.process()` again. let didStart = await this._rhinoManager.process(); ``` -When you are done using Rhino, release you must explicityly resources: +When you are done using Rhino, release you must explicitly resources: ```javascript this._rhinoManager.delete(); ``` @@ -546,53 +535,185 @@ this._rhino.delete(); ### Android -Rhino provides a binding for Android using JNI. It can be initialized using: +There are two possibilities for integrating Rhino into an Android application. + +#### High-Level API + +[RhinoManager](binding/android/Rhino/rhino/src/main/java/ai/picovoice/rhino/RhinoManager.java) provides a high-level API +for integrating Rhino into Android applications. It manages all activities related to creating an input audio stream, +feeding it into Rhino, and invoking a user-provided inference callback. ```java - final String modelPath = ... // It is available at lib/common/rhino_params.pv + final String modelPath = ... // Available at lib/common/rhino_params.pv final String contextPath = ... final float sensitivity = 0.5; - Rhino rhino = new Rhino(modelPath, contextPath, sensitivity); +RhinoManager manager = new RhinoManager( + modelPath, + contextPath, + sensitivity, + new RhinoManagerCallback() { + @Override + public void invoke(RhinoInference inference) { + // Insert infernce event logic + } + }); ``` -Once initialized, `rhino` can be used for intent inference: +Sensitivity is the parameter that enables developers to trade miss rate for false alarm. It is a floating number within +[0, 1]. A higher sensitivity reduces miss rate at cost of increased false alarm rate. + +When initialized, input audio can be processed using `manager.process()`. When done be sure to release the resources +using `manager.delete()`. + +#### Low-Level API + +Rhino provides a binding for Android using JNI. It can be initialized using: ```java - private short[] getNextAudioFrame(); +final String modelPath = ... // Available at lib/common/rhino_params.pv +final String contextPath = ... +final float sensitivity = 0.5; - while (!rhino.process(getNextAudioFrame())); +Rhino handle = new Rhino(modelPath, contextPath, sensitivity); +``` - final RhinoInference inference = rhino.getInference(); - if (inference.getIsUnderstood()) { - // logic to perform an action given the intent object. - } else { - // logic for handling out of context or unrecognized command - } +Once initialized, `handle` can be used for intent inference: + +```java +private short[] getNextAudioFrame(); + +while (!handle.process(getNextAudioFrame())); + +final RhinoInference inference = handle.getInference(); +if (inference.getIsUnderstood()) { + // logic to perform an action given the intent object. +} else { + // logic for handling out of context or unrecognized command +} ``` Finally, prior to exiting the application be sure to release resources acquired via: ```java - rhino.delete() +handle.delete() ``` ### iOS -The [RhinoManager](binding/ios/rhino_manager.swift) class manages all activities related to creating an input audio stream +There are two approaches for integrating Rhino into an iOS application. + +#### High-Level API + +The [RhinoManager](binding/ios/RhinoManager.swift) class manages all activities related to creating an input audio stream feeding it into Rhino's library, and invoking a user-provided detection callback. The class can be initialized as below ```swift -let modelFilePath: String = ... // It is available at lib/common/rhino_params.pv -let contextFilePath: String = ... -let onInferenceCallback: ((InferenceInfo) -> Void) = { +let modelPath: String = ... // It is available at lib/common/rhino_params.pv +let contextPath: String = ... +let onInferenceCallback: ((Inference) -> Void) = { inference in // detection event callback } -let manager = RhinoManager(modelFilePath: modelFilePath, contextFilePath: contextFilePath, onInferenceCallback: onInferenceCallback); +let manager = RhinoManager( + modelPath: modelPath, + contextPath: contextPath, + onInferenceCallback: onInferenceCallback); +``` + +when initialized, input audio can be processed using `manager.process()`. + +#### Direct + +Rhino is shipped as a precompiled ANSI C library and can directly be used in Swift using module maps. It can be +initialized to detect multiple wake words concurrently using: + +```swift +let modelPath: String = ... // Available at lib/common/rhino_params.pv +let contextPath: String = "/path/to/context/file.rhn" +let sensitivity: Float32 = 0.35 + +var handle: OpaquePointer? +let status = pv_rhino_init( + modelPath, + contextPath, + sensitivity, + &handle) +if status != PV_STATUS_SUCCESS { + // error handling logic +} ``` -when initialized, input audio can be processed using `manager.startListening()`. +Then `handle` can be used to process incoming audio stream. + +```swift +func getNextAudioFrame() -> UnsafeMutablePointer { + // +} + +while true { + let pcm = getNextAudioFrame() + + var isFinalized: Bool = false + let status = pv_rhino_process(handle, pcm, &isFinalized) + if status != PV_STATUS_SUCCESS { + // error handling logic + } + + if isFinalized { + var isUnderstood: Bool = false + var intent = "" + var slots = [String: String]() + + status = pv_rhino_is_understood(handle, &isUnderstood) + if status != PV_STATUS_SUCCESS { + // error handling logic + } + + if isUnderstood { + var cIntent: UnsafePointer? + var numSlots: Int32 = 0 + var cSlotKeys: UnsafeMutablePointer?>? + var cSlotValues: UnsafeMutablePointer?>? + status = pv_rhino_get_intent( + handle, + &cIntent, + &numSlots, + &cSlotKeys, + &cSlotValues) + if status != PV_STATUS_SUCCESS { + // error handling logic + } + + if isUnderstood { + intent = String(cString: cIntent!) + for i in 0...(numSlots - 1) { + let slot = String(cString: cSlotKeys!.advanced(by: Int(i)).pointee!) + let value = String(cString: cSlotValues!.advanced(by: Int(i)).pointee!) + slots[slot] = value + } + + // Insert inference logic + + status = pv_rhino_free_slots_and_values(handle, cSlotKeys, cSlotValues) + if status != PV_STATUS_SUCCESS { + // error handling logic + } + } else { + // Insert logic for invalid commands + } + } + + pv_rhino_reset(handle) + } +} +``` + +When finished, release the resources via + +```swift +pv_rhino_delete(handle) +``` ### JavaScript @@ -630,23 +751,64 @@ When done be sure to release resources acquired by WebAssembly using `.release`. handle.release(); ``` +### NodeJS + +Install NodeJS SDK: + +```bash +yarn add @picovoice/rhino-node +``` + +Create instances of the Rhino class by specifying the path to the context file: + +```javascript +const Rhino = require("@picovoice/rhino-node"); + + +let handle = new Rhino("/path/to/context/file.rhn"); +``` + +When instantiated, `handle` can process audio via its `.process` method. + +```javascript +let getNextAudioFrame = function() { + ... +}; + +let isFinalized = false; +while (!isFinalized) { + isFinalized = handle.process(getNextAudioFrame()); + if (isFinalized) { + let inference = engineInstance.getInference(); + // Insert inference event callback + } +} +``` + +When done be sure to release resources acquired by WebAssembly using `release()`: + +```javascript +handle.release(); +``` + ### C Rhino is implemented in ANSI C and therefore can be directly linked to C applications. The [pv_rhino.h](/include/pv_rhino.h) header file contains relevant information. An instance of the Rhino object can be constructed as follows. ```c -const char *model_file_path = ... // available at lib/common/rhino_params.pv -const char *context_file_path = ... // absolute path to context file for the domain of interest +const char *model_path = ... // Available at lib/common/rhino_params.pv +const char *context_path = ... // absolute path to context file for the domain of interest +const float sensitivity = 0.5f; -pv_rhino_t *rhino; -const pv_status_t status = pv_rhino_init(model_file_path, context_file_path, &rhino); +pv_rhino_t *handle = NULL; +const pv_status_t status = pv_rhino_init(model_path, context_path, sensitivity, &handle); if (status != PV_STATUS_SUCCESS) { // add error handling code } ``` -Now the handle `rhino` can be used to infer intent from an incoming audio stream. Rhino accepts single channel, 16-bit PCM +Now the `handle` can be used to infer intent from an incoming audio stream. Rhino accepts single channel, 16-bit PCM audio. The sample rate can be retrieved using `pv_sample_rate()`. Finally, Rhino accepts input audio in consecutive chunks (frames); the length of each frame can be retrieved using `pv_rhino_frame_length()`. @@ -656,24 +818,24 @@ extern const int16_t *get_next_audio_frame(void); while (true) { const int16_t *pcm = get_next_audio_frame(); - bool is_finalized; - pv_status_t status = pv_rhino_process(rhino, pcm, &is_finalized); + bool is_finalized = false; + pv_status_t status = pv_rhino_process(handle, pcm, &is_finalized); if (status != PV_STATUS_SUCCESS) { // add error handling code } if (is_finalized) { - bool is_understood; + bool is_understood = false; status = pv_rhino_is_understood(rhino, &is_understood); if (status != PV_STATUS_SUCCESS) { // add error handling code } if (is_understood) { - const char *intent; - int num_slots; - const char **slots; - const char **values; + const char *intent = NULL; + int32_t num_slots = 0; + const char **slots = NULL; + const char **values = NULL; status = pv_rhino_get_intent(rhino, &intent, &num_slots, &slots, &values); if (status != PV_STATUS_SUCCESS) { // add error handling code @@ -699,6 +861,13 @@ pv_rhino_delete(rhino); ## Releases +### v1.6.0 December 2nd, 2020 + +- Added support for React Native. +- Added support for Java. +- Added support for .NET. +- Added support for NodeJS. + ### v1.5.0 June 4th, 2020 - Accuracy improvements. @@ -732,4 +901,5 @@ pv_rhino_delete(rhino); - Initial Release ## FAQ + You can find the FAQ [here](https://picovoice.ai/docs/faq/rhino/). diff --git a/binding/android/Rhino/rhino/src/main/jniLibs/arm64-v8a/libpv_rhino.so b/binding/android/Rhino/rhino/src/main/jniLibs/arm64-v8a/libpv_rhino.so index 12a95d5ccbb241eb276654449d8148d4b859a4bf..e8eec73485fef9bf86d8d2cea6faab753b8a6e2f 100644 GIT binary patch literal 87976 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 Y z$xm(l%J!rF9E$bFuzt837XGO}*V!);VSf?V1ZMvtpZHL@^T0E3jSxqm?sn>wo9ccm z#RI##?LcwhH-^PV@Wg*S&eY$pF2eo@t~t#58_xS7Z5tno#{<_ql~|9trf+u~*+Ml$ z{V$a4BKdfKiyvAahxJweW_=dc-@y80*xqa>G!8yg#tm3M1lL5eMNDkQw;enhd^@4P z^{1Qr^D)?!ksY=3ZQBRmg2JjBv>jYqQOxQ?+!NPu!@)NwNDO~{=o$|^wGO9x8v^bf z&Hem##|7AsT`KGfVlWn`xNc{+$~4_V?aH}D`m2Q9 z_E&Gy26`Y?=7$Vc7%2aDwIB-Zc3`txpB_^0s`@2BL?1J}^0 zqdBhI96$PC{YI=e`^Det@#gU(4t8$1Htq?Zwf&oPe5l>Bu-*gf_y33E&=%NX=EYl% zXE*ngy;y$$>m@PWo8>+Rz6U&m%6;2*r0WT9GXu4U8}0#Ioml_)LfnV$5rEhAPdpU7 z@-}=l_%U!)d+mqp6TuIF*WI6q=Yf~qhHn7h15S0NK4iZgeE)6i_k-`f4L=FK>o)u{ z_;&D6|})`uSzp^_;?S)b2O3m1(^v3KWO+yP)50 zzY4|r^H{$h{p>&OR}@zw?DG=&y6PW}3sl~(8p|l*!yg+zn{_eR)Twj-?(kN$?Z{jw!`k?t0>RkjvMm2_z2dE*PPD0|MK{G z1NNhL;$9fC-LC$8aF5LI4P2++W_uJ*G}aH_#p8+E`n`F4nvV7HSno#u`9t-P1wQ%~ zPPta%k2W9$+9iW_AEQH?98$YOFx!9So*W<%QBGV zP?o_g!&pYL9KaG2N0}eY?rDB7gQofUj^iG}%fncXWI2XqZc6VpRC}uWRqdnNSM3jKKT++X+FA8y)t}UUsrE^R5RP*g z%aJU{u#|%kA(qpOwfMMjdo*C_&Qh+$xQ)g*_^9Q_Z&`l&mgSdt8AE^b^CK^}=jHQ! ze5Y{@edMSM*G6(tnD<1W|54*iCsfY)>6Rva&f{JJeQ?Xs{OsY3j72ru<5JxGc(Y_I zGG=nQnUClEJbVd}Z_m@+aN7Z8u zFK4hnCoj_wmp)aze2y#f8ZW;gSO1UwU+yP2^}q6erXC8+o9#lp(=~7Qs2MLcD{0mt z?3dkdF6XhjrDs@FU|?Walx22;4Xr4r((Lkl(c@Ssf!o(#n++D*Pns| zBN8JLX3q&q2u_$iHza9pWMXJYU{FLzcw%@$MAGaz!NH*k!BK&|EIn&O89jQ+7>l`G z+v2odm?&ayN?OXSg#XjZ8S}IegJJl70)L?!ORZLdr4y=9CsZ+3Ea^oTNTej7Bn)f} z3@nwpRBHDw3~Y=Yi_{G^CU!=qsw3}v{+{3*Yc0WRf9J=a?}$I&8DG5Lr%HbLxsrSR zl3Q;Ms?zjuF-Y`m)U>wQU|gr8v5xlV^C~qb)A?dnrNOYbKdUE$-mp>WV0xV5W#yiV zO}(g-z@%4At+lb0TDhT=!e_vACJb(YdsUWfqJ6XSJQkb|BJe>h7av0 zd;4Dl@InnawlMCOnJ~ogTe^#IwJiTo&an}m_=*0EfCEQ7qWn$lU&R)9;w}0Ro~REW z=IVcG%&G?f zQzjmxTfuXU>3^8@y$N~lf@gj}nIG^E&-rf#|2`UIzCoFv%xmk*i|hAJHeVCw!)}~z zFS?GCm~T-pEv@kJ9LDq5pIgYRoCnsM;5mPu+tAAmYG%bRRTDD-Bk8O%ehHJQk+x$P*ea<1`>HB|vuh;+gpV#Z=T=TxKbDizF z&pOPMz3X1~oO@A7+r$V(f7yAUlnr3Eo{q#6Revu-#gE@6>Vc~+jo+_J|9cqg&h^H) ziwGhxhCthk!L zg7BsbE{BAAEWC-vWyjS4S4UitxWaMu#6_<-Txqy`a9ME4S6>K}DXQ~!xCY{)Oti-( zU!5Uzmv4AzPEM{3c*D$QM*bY^#lca`FMZid4?sR`U17JWzfXyjt+xcu%hyVc&0z030iCaQhCW>^vv3#rOR$5hB4U zLj}Kc{Ul+J>YMl?(TiC4ZRM6IK<04{{P3P$j|w}9XXzatlLiX$Is=1xi5KzrK0Hv) ziVU@^q09dZe_zD6m~uq`hTkldQ9o5qJ-y&5|~7U5yH@%JPt&lBn!U0fO9(! zlx>2~TFk*1!N-c4*w&(^UC?(>!t+mZO>%sCbrca|&++$zp-8XcC;{oO5&E|UKPpPr zvWC7C89F6$en_2u~hI#YRg z;X@B8bGe+mXyMGc^R)rqA4E@^hBtE_nm27`R*v%UBM&XgRUXcL=po399-1>pS@h`Q z`STxIxWm`ywqZjXH_fZfEQhM7%67dFyziUYn)(r=;vq6j_dgK#DQEn?q3OOHgN#Do zE?Tl)j7^fuC%obB+<`}2R3)`JUNS<3Xfjg^UMaX=3;u=RAuafKf?HbfTAjlQV_V$# zQ$$E?!5alnX~A1v(DSX>TW~MIhqd6X1s_A49s*fnKXGGHiwFUNXSU!$f@ihhp@PqE z!NUd5YsM*kB~sidXm*3RMewyPcn86YTJUJWH@4t$f|s`72^YjzUDo2p01=_01@9tw zWeeU-@ah&kN$~wGcrU?gM!^5+C7U2k+&I!ALLb3vTkw8@*R|jmgs;@M;C7+kAh|<4 zHiN_sMNG|PhK2}kYQcvK?$?6H2p-ac?-CiZwBU{rB0_A78%O0+(1MQ=`YA2=Si$Wr zc!uD^TJVXSJCrdkZkR=cNiBG=;F&G>WWlpq@cRYN8^xR0fSRVshwzd z%i)6f{$^ZG?ugek<8m^or+=i`4Vvl6S8X$Hmk?oHGw#!j*Ei#GT%+3!&3Nl(`pRgP zm!FzIPDkm!Y4l%hM$=vS@@vM$+D5+>(u@z1$_OpZc=I`4Y!gTNG&7a2#HJfG-2e4T zX~t>pEMN9!y!k3%STioC78GYpGfwmLrnSnXW;bXZBVU=#I4uz5E2|j~kr3hhW}FrX z@|D+&)A~ui90kp8&?-Z|);8m`R+6uxW}N2u^0l!UA1EQh(q>#t4fMNZoICW#kEVh0 zRnaU$q=X17oAIb-yt)~;G~@f5aceVP(~P%os(&aPX?CMSvk0}#c*kbEt{JCQp?uXh zFvhd{ zw4Y)ky!^YdRj@FyHePeZ#Cs$#WpZYN77}l9*j=vR&u~pwl%2Ik)p-bVwQ<^ElbbR& z>P2NiwxVRz8l#-Vo`#9I;|a|2Q&t1LzdrHf@~flO@;l26<#$#q>;>Gv0vlJ2it`%c z96pi2_H0%zVJ4VSy>xNIaiiI}*5xYsz(Zk3H+iu^(Twq-TJcn~HY+|tJ)k`v-(RiP z_QsD^w`=|hL)GVZOit*ps`qFwc1|+f>ZN_xd9YiNX>6(%+=YaLy|rmw@_ldKb(Pc_ z1Ds_4#$9b`QncpNHNdaPl%LG{E6OF5p(w7Z=Z>yjha1#;wft^f)d5<0x2~iwV!y)` z`Lb(h-Bqwatz2sibUt-kyW1L1zzeR2$AZfRfj8Rc$4%#&KXzRzKe|90PCgL+H*qHm<(iJRK#zMa(?&D^h}dR0s9 zH^Sp{SY3NlTi0&@@Ynr%1s9z_S*!)V?6uYE!2+dV+!kZsw+n7+Vg1{i?7g`c1}ZyGf|u@44q9Pz6)xjV?UVlL zYQ5%Z4_D7Jyxs)eNch2`7;lhEya!M5hot3_641LF;` z$ikq3Xpp&sdZ_!gErYtMA8H2&1*);yAA<&|ep>wCWBBWR&%++--oAU?_wIP?o)1*R z?+sd)p|jLPO&dBjq9S(h+OTw{FwefN0*3!oUWtdT!qis@NM|O^d)R2izke94?C3pw ztg2-`8{u#bQVve3>HXudV0&W&x-K|*5jA9^(G6Xg(RtlyaF(qOYxwF08rx0TNltG; z&8Th#<9Z=X0=F2I#scj6P#NjzdkxIfuCO|z!s0G0-*5|IuE&+SE%;RgD$5a;7yrP!-`49Wx06cZ6*h&0z4gPiMHBti)^ z{AU8NAEMj$)$NCz+v_gv2RXBEIFS20u4L&)%l* zGBOPXRnS}Dean@hss-aN;U2lZ#iZgJ_y#=0Vo;K=qu(<@Z!zK>#vpKP zydm)1Y#7QWhlX;XRbf`uRQQXCREG?e-gPBm^FuE^xeT^Ciyf#^YO?axQyQXF&vRRN zscd@&sRy;1=OP@G8!FBJP>#Hm##)22bB~9z;G99pkU85e5-GjyN~Yn8a+Zyp(eSj# z;CXHxhOKOLyOgmYk+FB1G8Uv~>@a+t{D6kd=`*PJH9KqFlrDOaYa3n3HMnsCnYh-b zT|@J+vecbBjN)T&4AF+)8x@LVi;=}k-bl9COF2kAzLLMF;a%ph@WADb>c_ z8*JF>p^cgvl(-2|UNtC}ianHrb6lD% z=QcP`wo$6CB5$Q=F7CWR&O=(?QNe95f<`I9=LVodp=$i}gP|sQZBr|l z&UvF;q@SZI_h#r3P%kpVWJIV||1&~?FW1@brWE6mwUOUUKqinO8~KtQO{Uevo84|c z@~?8ODBY};jt)`3)T&0usC%^I_?xVGj)_-oTJo4Eb*naEOb0bo%Lnn*ULVs#U99~y zroXyD3mw~|(@U+C;>@=8#z&FXbfh~#xY_}<<1RFeC2vVXXKlgQ;LsT4_86KAuCF&2 zX;T$tXj{gHt6|#5&@n>?-TWnZ1J@A_I6%8FHdyVgxsS^Yti6Ud3&(sd3Zu+T#}5r{ zl*V7QXT}{s2_}z!8Tq|7{tv_b*R-P<-3@8iw6+s^8WOH)=@ZgscS9zrLG{^*G2HnK zk}Ea@6yAX2Ei;A|Zn^71gNHa{kVLI9!r2L7ozdP%EkKTWb@br!%qQ&){SdDJVIPE3 zTA`;vD`A>w!+Ok2@q({u7biq(^NV>Gdq29^EYZcHC#$C}_8PqKI=a{!qKmzH6s_q@j>tc59y&H&TsL)dG~r7eL*OCznkcA`a|xYBfHm7^nPJo^JjhAD3Je5o0lIx!$^KkktOeSvTZ9LI_> z-iOelm(}c?3f>d%u}VSN&CW@})+TN%mD}n;wi4bHwq8d_HeN-BsbXYDw%0=W3*sG_ zeQtz<#)A1!ZeHRLF_=Ula#T}kG2Ikn$<-@V*wAy+(X&!x9*2$5uz@~DFKh&4Dr}|! zo=bhob=S^Cc;sG12N{3emGL}$Psv-{aL1@P^e!pqnu~WyP^K;k{rTVeo!8LGQOP}o z;dEhGY52=<;f=ox|AF|_)g3@$dRHgxqG$e_-FI98uHe5qlOVk*Ki1An3U9ZI%1A>L zrbqfPq$mr%!PJO4{hv!0gF+s; zX_3krSlodp`o>*Xa9>!_{H8{zxq7zzC|fqK77-|0D@C@Nk7M~)v}dQrTK+zg&4i)_ z{f8XM23^tmjS6b}05A<@d-W+opfmM~K9r5uanQNPsY7Tnl#Qf&@U1O)e*W@4K9t=f z?(M}yLJnmZn)t|s?8=ep5FUYl9GOsS&}rw4L6yp(spc|O{ojWst^R=oEPUHN*g@^1 z4R|m{eP7FdFkXFAd;Y;57=^xkFiP#Aoq2GCXEM6>XR8=Dy%_YAUBjggEG4rb>WGzWPEy|2)-NOGX_ zZH;9HxR-%gwCO3~+P=&Lb)9x8vx8=t-m%@@ORf^6-)KjlEo+Y^0W@{~M4LW6-mv46 z_U!bqo(V8efVo*U7ME5y+zCu;N%0LBC_{G?rI^kgN7X(JIeCTYWg54lE^9}p2N_ zqn_8!%ouM_E^GZ}_EWFzSTXaM8&;1GWQ{gB>a};Wh8X77YuB?DV%X2ljt`w(PpM)~ zsVX~Z^~J|ivvZdAcJ|QFiMTr*sZf8I0hvN_im_Vj*@HsuO?LyGef7IE76&-fwCvd< zTE{fqH9I?MduIo@Mb*24wK>HWtzmY8>Y;VY8DX7-nIL*~+i_zUjc?8c`uiZf56Am( z=NOIUl&C|sxH&F!EBzkd8F}hYR|zKIHm!7G$c~J;#Rm09?aZUS)UP$`{C}&z>}Z@{ zrn*=7u?H?_Z!DaohG?#Zp@y9ow6NSTuX`_`O_he8_g~QZip%kgFP_}Pb?FY36)l;^RaM1 z=0Dfm7st9m_(?_Khy zVaxd)*O!E;j&$6_!VL@Bf^nasfobAX2q%ogepvr}WkD?D*yW~h&lQTlsZsIouPO^n z?>!wxlONLx_kdxFQbpSY*&RO(%YqHWOIEOOJZ^00HC)(Oi+*L;ay8rwHlh$e{k^qe z(DNU;!rc)Nx55zq%!-v-JZ_S4->kWn*+^hSc6eJG67W>LM`T&P4BM}oY|~Vq98*^3 zO6(`uYOzt5j(FZ#vn$USJx64B{4y+C^|X0r*(z&|CL3jnGV~c19<=y)-2JZ%;qyOw zhT_~DioeWN0y085D?~_u}fIKs3!ly4jxL|j&Amsyfc#Il^<2wephDh`z?d_69Z% z{PSj4Qgu>oSP`$oO84=9s{ZNS=0%L334?LI!_)s%Rqt%ri9^*>wR^(O+p4d(CrYeh z`$wG`0M?mYN@vaTO~A+I+c!mB9_8YQy@b3fpc~+s~MBB8qkK-zgy@-gkQ9`SLD38PHe{Lz#LGT9an#W9i^Q=4t2%D`f!%A7VO8Ro@gn`P2Z2_(Spa@5m z-rMf($oi2njKE|(6TPW&NMWj>6r-`(`3DS91{Q;VaF}x%?cSzDmBE)v@wjK9;z^%4 z#WA@n{#48(&?&g<`hYU@C1hDlyPhGhzcwkf?b9NtWt_6u)a0mC<6WOQr zQ!pkVfzB-4q|G`i(({n}8-venLEYX!oxXsg<-rH_9VzW#Nt8Qn|1@Y99tiG4XCLG; zA0rM`C(WHcf*hil3n?M2ZrK;wD=WhTKLh;$+o9D4b0H1?Cy>%7+BYks=qzL~&0seP z8;YC4${|yHJN({^>pHY=pjtD7>?s3rj~4IMK}yQwScLDHos>fPrrixKYsK176$*4d z@WISp<$?P7K%n!(@hRnxYMv`QsF$_QD|?vyq2u}tTW9m1G&?3@tzH*oZ=@Zf85p+d zX}p4`aiF5GldBbWDi>Ru!Ahem09TY!^%1swtFcQ->jOKgS&0o}3o+Li37@VF&>xP} zs4vw8)3LK@al(W*GETl|q|pPo4I;vS2Tb1Mc=z@_}hp3K__-dE(xWiXPwA8Z!9fuodTTPwl@K z{l2tYVAbtzmUfk(La%H`dF3?pQg2~M#Hdx+(_djB*-IMYx?!!|N_o$&FC(Iy*WXmi zwIgSbf^eGDPZBY&g>q4Nvg(|YkB-Y24 zpJ+rO+;CFpj^hB8NgunaKkBOU_;`h#z*G@_=5W?wJIfWURJm|^_9~o<982%+T48B| zlMu=j?NXmYX2zfgt^+3>s*y@$K(EF&ycSjTP_&>!FQ{{o&1pa9(Sqs>Vbrv6e`avVNRm!h63ik^485E!4KJn(w%YhrA9OZ!QHF zinbLN&{^0pr%Db-k1_>UEUM%94=B=Ww0sV8y1b!_N5$1ksj8c)q@r|RTZik*R+qAX-_pFZ+et9 z7WN=Tfw}&OlCKR|6YNMuj;7*W!EM)0@+#F*Fb>|su~|_7dkhYG@MP2m^u`SnzY&fbI?ZWGzPLn z3;OFQ8m(^oQHZUDp`?c{;(J)*t6jdbygK^RvKw{$*q(avTktl`k`SV;dD72OYgKk) z4&~f}Q18(Z1}Jpcr8reHExNIEfH(XMqnQ>y4N#C}+B2l#yekr|rB7uOGniP(Ko#{E z?2H4i7QH^jr?dBOVdDzi^gcA?WL$?|vN~AmFYWbH5t^vc2Ia405C-J?BY004AtRKT zN*Jle<~9wa3Z7yzObLEZwICAw4vDBxC#Q5WO#IHS%{Kkim^AI zHE6zTA2fKxYxCBAWpFoYX-|h4JdN6YPZvf{9~L)F^~gzo@5!)fYAb|Kh4~~82lIwp z2o{2Hqts*65=w&B4(3uDsA8j)~hVtX{$7Ze*=(K5XKNAyZX{OnZN`R;AY3kM<3CeN+xZ}7_*uDw{)Ehe}yU2Toa z2bVXlAY6fkv?@+V_dg!6@>?tU2`Q+|$Z%xV8 z6ZrC+Dz`2YxK4a$Kzk_Wh(52c#oy?2B7{zZ-8{(0Na1Z?xPoGf}QMfCQQC< z*uIETz0OU?rhV2bJ3qHJn0o82QihVyT*!o$F`;GZ45mWQd+e3jFDX@7}{J#n=j+kcaJ>(cN~-=w`c(bvF4SO*B$a zsE3d-3%1E(`zrya6@lTj!U)b%%7grrs)$%6KRiLn540HLXu^S&KnXs3Vq3F{CLnre zYs0k37Kg34wd854(m4r3fIeZsN5_f_bVo8f$08AYEYR%fX>YV4QLon6l);#+%|AQX z)PRyMLWwlX3j?gJd9G=7fKxo=T5-OLoYHD20!9>1ZPg3y9c>}fUa1{@2R%G|Sc$Uv z5XXa3fC4q=9>nozRAYyVb2`L}vMI!alt!hA)9@5!yLk#c4EC{3Y;GqnO{uza%H=4@ zY>zWiEC6u^WQ%o}URE0&Kae6tK1Y$GaUWB*CF7K;!*IOjMo!ZGF1U{|zYcST<16_l zG{yau?sZ22(6Y2Hq?YD~p8?JwR4CO$tx-E%5~iJs55xygA~yy(zBt84>1z5U$>>io z9p;~oF~cp?M0+DYx-dI;!}#1J4nWCfqJ|Ok})$N`E8QX#3VaO zMsH2>n^YTeV|p8Iw46e`Dl+FX8V}xn)T8|7BdxIDFk#BNOn522t3NUut~4&dy}JJPs$tluqydIT zM!a`a$q@yg-^-}Ote7IH`AaL8AcEp@CE+Zc79%#gcQRlY`VwB{?$DuXKaI@&ff~Zo z-nbC8lk0(vF=Idu)yi~?Qh%VYYdmQ$r`-{1Mh%Ww=4-E_X>69S1A`>qY{44?2F0&V zqNk;s@X#%|h@B5uJ&tQw5wy<2c?h5l}-1MlC0i*!De3{S@vT*TfdmS(Rir!?>c zZE@g_X@%#@2J``M(amviK0Nb!Ch)jz!9@|biFRoYxQbatWim&r{qjmzPhqvA=>fIvJrTc((yzV@1W zka}Y^dwJ!aL1C49R);pw3@-p}OWs+&dU8WL+SP>n>9}IEvr@iXT9;>vug!&;tGfN5g)i)ynMr1Blc|Y842g=kOumU1bMj)Rf~_JjWwa|J#*^v z&bpo(ch2=(+qf-B-u+=K?!9$k{jK(HaeE8HJRLc)dBfrdl#f8Q4IhvFO;p!FTr+Wf zi5eL8);;BMs0|ZpX87>9LRzouCl9ERQsd+X`c&a5JVw7`&^V1w=MQAy3|7Nf8CU&J z06LXH3M*SZso|I*ASd_J7sB8)jG9`03dCoCzHJfE^f3^(@)OcCR{!;ZMe+dhh;Vp> zXKZzT7Pao=>6K>H;2n!IhF8&=vs>dsY-q^YXh83T>ipaAq6vMJfb%GS&-~?;!&j)` zPJ{OdI!a2%>CQCN0o9AX?+!0ZM|~VNDoMxC=vfLp;~dHufbt#?E$t&(dO$n3QS0=U z_I3^wEuH?qw6sGFI_IUgw30DLH1q+3x8Be=BDjQUrQXoqXlQ*ggvX za>J{-7ZmGWKx3Blg62*j_ph{JbIoq;{&EKO;I`Gll^N(N)}nW8KzD#on__cVbQO5~ zL*X39F{M0#sU=MfG0nu((j8rg(RLai)5f&aCc6*1FT0K{gF-4V;eIT-muv80b@F4C z{oNEgXvo;Q1KrI@HT)ot5Q@Ggq=Af;51L%*gkzVj*805~IhG`QLGjkVMA+!TAhd-b%ufl5r|Ol`o{0EZR- z;B7Z2wwaDgu_y-zV05#rDfLy|e0N1&-n`%PIUJ!^us4Mm8E~?{pqe8#DeQw zH-qB69(~n3xNv`iZ_ZhKPU#{%bPt}hcUA{Ayn|=$Yk21Rz6x89KI;PR?fxvVa<}Sp z;8lF?ihYAg#Mhq6f_IET4eNgCoQHoX&WO7wzHl9mjZC-~|5H}pG*!7oa^W%?b&&c8 z2Dhx9i2d9!=RIhS-f-JpgMuqxMxPanfhZ95tq;xUo60aTDO(-f@WF99%TX@v@_0UM zKPEUPWXP27SiS+3$kJ5PfoTZ;MFx7<8?zn3;VN96jL?Y`KA&r&5t9=95QdH!0&||m z&`|!_gi3n;hTk7ssXq#KaF37w8>ABGG89BG1NSS|{8=a$^o?>ZbyT946NzVZ-r{u6nel7i; z51Y&WHf&nR_qz@(cfw~qvzJxoWG_wW03RGSd}c}^{CRkGb_%U4Ytg}yKYz8f&H;yB zT6qT3*dXE1G@hQtzUqHE^hf{T(1HKWq5q3NJGeu;!J*yZ&>q5}SHr2dM)-{S4A;Pn z#5OZ={oiu$i;>*DzrvHar$2oA4f5-Tzxy?+oxKUa#!8lbgOlX1ae#mJ$bY)DR=YLC z5sPj&PVa7)Va#2o_q4H1}hG5D#u$n&VGh}TcL4QjoQeiI4Gu(DhpO8@dl_y-gdfKZnsn0yehpQrZE$%uBFn0dTM-d%$7GQ1FQ@xh z3H(Qm9{fI9^Gz(nrGQaCRB2x|?A8 zIJ*E=&`YqCPI}xrFneFYd{T9G5=>d4B;hov$QsdBXGg&@cMIm%LuZbk084KRIFiFd zUAvRqwOSEp!L2RaAV>nx? z!-oW1&f#KGd_=G^&gK)#7VKBfa){*!<`bhQ@-VTvg7x8SIp2?)R-G@{KF<1qWiAuUEzY4E zOa&}mF5uueoh5slwiX+YXxR`TCla88OYu`!S-=>=Qr3Z1apx0 z*KybYSi4>*MkMHoTmiE@E7%y$E`nt~C)j$<&XB<(!S-=>itI7LZgX~w>}i4}c4qjm z3Y>V7!D0dDbk-C8kqkaBSQ%$EWbg&SYB@VV1~&@k)?x|`?7##9DYa!UlFX9v-ip1X2C+b>WREf2459yBxhw{wWWfs{R_`g3$cN7Jj;y$640}Xl@0lH< zKhA`rWrT<<`s4e-YSRT1CAkl*R5DSLv0#~!iIR*2tA1L<6(t!8rhFxsD2QVqVC`=L zijwrD$QJ|?B}oA*FpKsPrRV`>-|tHP)+CxGf_JN(!7Wed@$0Rd+UR}|3s$>Euv46M zAjh(NE?}act{4eLPmiFmPRzq&0kTy{q)3}oa`EyMKaMe^)V5BRfRf90#<2ETCwcU%@N~1rts4Z;E_eFwr#MgH^ZEOW5RK-%#Avf{BrG zKgE?zC`L-hXMm-FLQxErpAZWcObnG(#6krVL*-6l!n>_vsC<`LJE12=N++=>!Nf@U zIx(x9Scsvrlwb#;D2B?HiFFc843#esixEr=m5f-NU}B_PPb^+AF;YH7tg~Qd2OsWM z5$r0U7%Eo~>n4~OD)Wf-5KIh}xnTBW!QA-BHV>?}r(j~F%myn+5loDfvmAhyGy%m> zISs73w_swZoC22FS1>VDP5@K-3nqrjF<^GPU}B^k0ah?TFfmdN0jnM;Cl+F;96$yK z3q>(h_927!2quQgUSx2HU}C83P6mexCPvE6WKT{q#Yh=T_R@vkm;{IZ+;$*?a^@+9 z%1AOeQYONO#ZWRRC!S)cG?T&6LJvbFjg)Q3o}7$|kRxwikLH4FVPoG$bq4ES7 zykA5XL*;K|@BzWZPC-DXy4F zit~iQh-5vH`@t-dP37#q=5aT2HWsXDadC*Vkz`M%;nP#MHx$fak#Ho31IeJw^?J_w zl0nJ#bCyB|C9CJG2be{&SiT1ALiS{BWpWlr_BeCYSW7wVNCu_iubf4ZLCHe+)G3S% z%4QnFSs)pdtcWu|vL{&$XWn21Yh0L6Vm@g|WuJOG6tn(jgO%;^7V@W^*lsDG?ZohL z60Q>#&2~Z7$89mwx$!d+;q!o|na*V}F*m5UikZ#@(p#wy+x1p4(WwKoJ2nU?W;!P+ z@>apbOy?+A?S8?;Oy?)k<8!&Dna&}w%mYGC%yhm3Q@+tzjhyIwMeIABRXD7ZXeR<2 z0)Y0z99q|KR!!`PV7oc{7qOoOtLJPNv0nvCOw;YXN9?Fz^Eum2tX8n?I&(PRBzQu= zI6AT6kgM&G10LzrK<+Yq$0V@p=dNrI~ z1gn)ZXtTR+?~H>C$|>|z4o{K62obrIvtwjXPODFG_A?ob6ncpsy1^g8s^wHWkFy#u z#VYi6b9MmC-d@iCu5$PVV1b-|r?k=y?j?gAMdSj`c9X$q!S-?XA;p!<$E3%7pY&pc z-Wbl_COyfDO%7eLj1*&qVl7vEjT9w|_0;t?lU|(Ao5R_Qq$k;S&WcITCiEIOdye!Z z8|J0kTlW*q|Kf#WF^5l(qGYEyD}(P7->3TI&WUQC!K^a5f&yE?Es{qsX3Q zA-;V6H=GR0RZXU^Zg4Oel&pfY{$xn<`_z*!>MlWad{@jtm7 zC3XqTetN>uWKgoHoLR}BT#A)(7C{CjtLH2j%r04qzizKB*^_K7XRXOzB4v=~e}_0U z5gaTg2VQO29#4JTugG1J%63b+eIHgO<#fykAnVOFtgW8djU&jwEWInPv1ajU_+_xt zb%KfM`UTQk52m-jn48xDTAmS#YZ7&XC&8+p73>seM~TT@s=<8L{1aFvpG#my#n~aS zQcc8l_x$Lb5>34Wx-4VdItYR>=nT>INL?+ zRl&+Qdym)_!EST5{Rp-HYXXim>jvK>#n%Pf#MxG2ZwhvmvsZ|f3pOlJkGqlBTQV+Z z8nL$ptK;lhV(${8_8%OiM}C^%dqT04vo*wa2<8^7>p6&hAlNL^ZXM$C5b}yJCbDw~I;kx25GRU{&YOM1)8$<@b5PDy8){hMGNokEW zF+z`<3YPh$&@1LFiR{Tu$E%!mC3}3Liur$^c6wwR8I&{CV$M2|!Ec4Z^PE}8AfLU~ zSVu3aTT?+3xA5_1GNeaPS;0e5r7R%Gx;!6GbrWCI!e zw_tgk-T5~R@)>fCwVJaAuu{H(Sz`^c>T$1t)$&<0YL&B#U=|0THrH5dI6OlJe-nu$ zwAUk_B7=M?U1MF#*)cMBOz72e_A^*DpI&28+d+@}BbdTx*XS2Gs{ym0!?f^d$3%COwDq zZBjfV49?P_vy2oa+sD~!q{rv=HP(*&)N3>8Nmjtwi==l>*sI~JnDit|+d! z#$h}el!|VAw2LN#l4WsbC4&v3#QQmmAcK;{@)0nY>`AtUv$kYUvN{Kct;rx?ry+-Y zs5Fs5$!a(=l0nI;IlFrp2HnKG;hpa6gH~eRFs~1LU&>3O*}IVS5muat)FWQCBVCk2 zY!sXWEFB@3*eEy+X1`Z3u}^Rutag-OVxQnwVq*jo`vm_6D;Ou3I1%|Cta`l8u>Kbt z1>XQ>PT){(6znH9QD;SRpWriMlLZs|1fLMQUof#xP(|zk!NfknPGZvpMnFtJZiO6(EA#6H2x#Igkw`vfl#%aQi@o&X~@mp}hS);bQ? z6MR%Cij9J&h%FFI>=UdamMfUpCs;vjv0!4KAP-D=Ofa!ekPB9tCzwNQ6wCv(FBMR1 z6l8=R5Od-Zo|r>iLUdOzmR9kD2PS0Cmp<*m`o zf$yauuSEOuzI-GiX7&=s#6jdxu+kL4#A(++N+3-zaS+*;SRcW}X;%uEI29|hio>oR zV3z*6o}8QNbs#k+u(M4>2r!U-lmT2*8fKJhxS9zsv}L@BXk!Guq| zOiVhm@QD|Qr3yXWC(!fRY<};rWV5QP)#R=#TFuQbGaRNF3tX7T*;smr0Sb-c9#0h9G zuxjbZ`~=kD><-xE$>IdGGnjpv$h9~DjU|K9yTu7;2Qnzf4sik+N%rK}Ax=O;$sS*p z7g@y#sG00NB)d&<0@{WQJ}eRzC!k(rFiS9T0_si%CAk=!p~16J&6qVB!SyH?k)OC~*RM zgzPO6dg27s@dFu@qn0=U{gw>MQA?bFen|%9s3lH7_mRPTVNjfa?jd_}AQLB`AAwoq zpe0T~KLEpth(7--vWgSX3cym?Bx0iY7Fcb8NJN}~zCi|82`08wwvfS(L{Ep$3Qcks zJ>A{5Yyy{ya2rpm4?6Zh+!k;4V(oHmonyXL%3X#n;yUhN&a&h zvr8HJeWi@Eqco|%Ie_(&9K&vslp}kyZc=t2au@jqk>jO|gQr+7SL9v}V4WmKSKVI9 z5B6sGk}h5Ve4r>o%CHkEW!MRlG7hi;xLlDt(9HZG^Zp-If&W$!)zX`JNg0t_Ng0vd zq>P;}mCF^m8_evkn}~~Axg}-jH%J-!*QAV@@MSJn zERgM&d~dLsKpghUKq`mO8LPw_86Bda$gEyizG){3)~b3Zx0xn zCvU(|j+9Z2SyJ8{%^s5SOKEHdmn(8F2C!+8BeAJchMmb$hMoJQj9MHoa$! zIE~%QWjK_XrAv;)hDsTR21^-+21psT*iXua7}i_LVZB)jmn(9gH8Xr;j&Q&<)}3VR z{}$!KP*-^ah7zQVYK)U|_ZSu}c2QF9So;EX!|-gv--ms~W%MOM>_f?s)=nuqVCX&h28P~|GOF<{DX)rUWm3M|hrQ0_ zirni#Y^&r*4F844GXXoBqzpSRN*T5If|NgsWg2AO{}1WQiujF+-1~yrGg1kOt%DqZ zk5lHt&{I-|p*2#z8Ot7*^0R%}O33=~x+|D1lN|Q*q>Q+WrR){!U<>7&v^a*JZRLp_ z?aSss)(y1{VcC)+frq7x_M0hXR6D*igU4MG#~zTftsk2LS+}z!giVwj_A_)Dpa0B7 zW2sVpryuJHS+|oG z%6d5D4J42#Wkkj|l=IS{dTmnnwXql}V@=-?vTo?fP-c}J2}DX6al@sI+6|HNC>skD zvLkn3f7TXnbVDaXSsST@2tHCqm3m5fosD@k$^DrTvL3fz7*iyN{vCrT0BZ53l)tdC z8&W>ppItS`{(oy2yCiQQ!bK^g>hJ?7ye972SRG_Nu}FpeE@eYFJ0W$TkN;5P`lzj6 zrQ9!`{Ur4tR@h-F&v1mZAEXi@)JPds^o^8P#eE%%*qSUK7xHfI_UrFa}nWv839%Fu9T0)v+XiMy2|h+6+H5j5e#1= z!V`o3Yf?rHl}fp70((X3uTt4dQa&BQN~8|-9mVnus)$K>NCJCSM)*Qy`0rVsaF=#$ zt<-`36H-PEt&;Mp1m=+Xz6Q2j%1^dq`BDe^OStT)&qWpG${Qagu=z5=I0Kt2<)iJ` z>?WOf_K1{^#_I8_i)8mp9q3PzGHPgo0sVgfH9>S|Hcm!3YG9+K z{8A(v*(}0vDWislNO?wQHc0BXH!{1FuSe3C`f>ZvPm?lgsF#!-n>({48DXB0;lHqX zRga2dU8E8s#7h}96f5P!omnTTzstzlOZlBB7A19{A0cJbP^gq|c4k44dH;XY$O7<2 zf3$op%ugyILTf3bhP4qtJ2WBEs`B0+!7iq|(D4>^UiS@4)coZ9IX)UD(sj~eWwR2kn)BOY=zW8EiP>)Kc=Gp*B`(1M7BsqIN`zYQ{cS1E_Pt^WCT=WPBS@6 z$}1DuLsCDw6~jLp^SC`bGJM?tw~tz!+Dx7-<&PYR>^>P`UMn_U%FlLWW15t@GJHcF zH-sw1uXuC$av~cl_1|yB@O=k7;nN)%z6pct*t)TPlHY8_dP{joCze7wdjJ1mHox|N&2g$!RF^iP%i)QVlj&FAsCV7x2 za|FvbyRa~jN@?AhzvNRqnXisq=mh_KW0^-s}iI|H0dAR2=(JDqZivzL!d~y%~LXXAfGYy&uQEmO5!k4BxB6 z`6u4&3n{m?vCpK=(j-?5h;*qX#XlsBgMu$@vqVPo$}rJs}7JCeWP z!`_neka$)mb=oGg*QGoznQfKwv&rmLDSwsBHc8pglf4Mpp*z>Wp6msAV^vS4N%@nW z4BxfK9q@Ed_KcJxd$Dy=zONU1O3E+vVr!)QeJ}R7lzmg!N+}OXVaufaWQv33$v0o5 zu*Hz|sy^z&7E0OHnmsDzg{|2fDSy(M;cHsBzK1V+SjwY(*-R;K_GOt;K8x?CmvZ+u zY>F;Z|39w{n<#JWYQr+5Z17`arJU}^MoIYvKQ=ei~^aR#Z%I_pF)B@+eomrxk=XGYCrTkTAW|K0;ju>KT2e6r5x6c;m4`D&XR7- zN6J5UW1dp(*PVGtd2@GWl=3^>wcxXzgEoGL?O6l;+8_NYt=UQ60jzzuW6Iess-g9F z+PZU3s^>KS^Ig?r+JN&r@Y_Mx&i8lQ`YnD;hQ1emZ>PF4|^g7h#jlK0cl!;Lt>T*b5y$*G`xG&2>-D#Qip@!0)TKJ!R z{lEFfRf27=OF8)Rnp%8|Qn{A>=l%FO+|U2)r7qX*{F&6H+y6^R@pZxEhGbMEtWB#A zbKLI9@UtHOy#j{y`ai3HvR<+R>a8d<`H-F*%1k~al5Q%$g(~U4RzOmU*5gvLI$X=X z)H{AQsv#;wS%AfP25)1<7I*JImR$SpQjihNsg1cDnvRl+ruqNcGTMmCk%o$7E$4DK z^|toP|cQ}#dRiTfSCv#ZTFTK6mMgFH~2I(%`p318rk-7+VAJ-Ygh zHv39+=hd)U&<5Yi3T?XeD&EugeP2RI6^V^DXSG2ow3el^joQaoB0SztWg%~+YR9ew zwp$0KI(&bUlD)j)7s#PXXkoP>6kl2r>|Cw+Ukzxtk~EMqX?*uLjS%N!+JLK3szaN8 z)g1K1KbAu)ylM?NglMt<=~bf(QvPq%wR{S~)D&&dwRA%QeonhSY;;m8JB=^-kgnC_ zX7HvaH-r08S0!EUzj>LdGL?M|o9(pF>ro?;Q8Mzf*ydigC5e%>=Di8^Bo=(T4)rE7 zH{@n5p0h#lKKcS4U8Q+n0Pk$dhDz|9S|D z(zFf@-PC8b2@O#lpGBTdz@K=3&wpBkemmK&L>=C7z!lscm$s?le$BgaqLz8{`i_iS z>F(-d&%dHh-=(T?Z9mKoP&=p}R+&|^YV6h}`NQBKwQsPa$PHh~gl@m)_FdO@$VU+F zL)d`uSA?cJcU@NzMj-UTw}>Vn?1*p-!afMMBb&3y>#{E!gBP5v&I*`z3C2on%iA{>k`G0^3jgK#Rs z^$2Gn+-Aabp%lVCfO>?d5V{4qT(=RHg}Pi3@SemlB#dwq!jTC5!jS=lbrCMta)bp@ zF4uO185WldU)P3TvO`AbeFvATqnDzjbVNLa_E_j6GNCcm&~9gng0`56|Togh>b&rMO&E5xS+J zW)T)4+>UTR!mkmUdb?cb5svBOayiWSUfnVXNeJuhC>g@__}-}H2x}2;LwFV8ZiJHt zBO<~gg!m3TrE&=3Av}dJ1EJqgmunHiJcPvv*CO1GFbThsbO>QBzJ2>P!j9=^B6KR1 z=`M#W0mAYTC^5p3_af&AuOeK7aNj5xK-gzAa*nVT;dz9I@S`7QKeXjom#YuL{Rn3v z+&2z2g)n3SY6@XTgkRHrgjb2J zbA)-QsRVqjb?GNa0O28oa}Xx(K@A|>w-+@>{4+eZ2fg%J_t_*mwekz?J%t2t_u%h(+l}ll5qKeTbd}ID99sm znZeP@O)uiJaQT!R@2&=F&yjv|s_pIUOahuXz(RW0d~ zqz0)zCHEw$QEEcTLllfGc_K;eN^z1Xj-lje5_At4N_>;mE~;Be-(=iPDw#{ctdduf z5oJxu$H{7N7>=iuMd&G;7oWh{;TglO$YEUZ9=#^pUWf#et2;hy*nYh@q0>%@|0Qq(A~S$O+3dhL#C$tQi)NRRb+zrRz-&naqq z_nnaYl&Gm{2TvNEVq;vcF(q%Os=@BJ@pe+lblh?8h;hhX@^q>i?migeq>^%o9yDtG z8e8&JD$J~h98z*ARSj_82GLyNnTB{@L-Z@@Mj{Pmc_ot}dPJbHe(hYcE>#Wl>;w5~ zXP3*))0~R8=90Y>VGYEjk~3*Ya~s4tC7!+2_;!aNuEDsmiK-3M`P35lMkAQoc; z$|`9GAF{e(VEYwsTRLV0_#yD^B_HGAavzMhsHQ$@huL!|28OD^GBXG%Z)?D5=qhf( zH-WDK|9^_R-jKNKFn*8SwcTx&r;^RxE_U9ce~C57);j+#xBr zsKs&cKFWW*Q2Zu|_7Swt{7<{gKZN!TwBPmc*D)%WZyE9WCP3!+t0ws89MmUU5d}T` zZX?#0R6Yb7aizJD%J{P;+7s9Y8Er$7DUgdS=TtL!Bh~xSQ*y7YtRgEWLG*y1@$hSD zDzA~Jbp~7>T#xMtti#V3c<=L$las?&We$SW29u1pRSyQFJXm`X=fs?y(BuD}&26+? z=3mjt7eWcJz|;a4$Uv>&BP|#zg+nd!_7V;aBAss%_7cB|Cf^*?RmL|`mIPLy=8@Hh zy?ixJkxIGLyWqBwxka}kx|A4O{3nL_s-dpCY7*)#u1tZInj_CAMLh>~#i)lSpe|uL zc`{aHx@qv=nJ%=zT`8Q{JeZt2XbtK-2F2_MpbV07#a-f%R4h_pxX;AxCtaj~(WRw^ zk)@MvtNATmq^7yet*ulNc?)W3@52GO4qYa}d%?$uAA61>9Bm_SUqVGhF_LRTxYb5eE9%<^wCt5jY^pCX3H ztmWL0rb1sQxIefxjlDkub%O`fR8=zxb@_97ikKq%a0ZcUpF{hP{BfF|@vlOy_`-3v zxGN^n8z!7BjR+P(T@_k%oJJGD!bzAhm|lB%K-tu+lwXV2Ix=*%fNy4Kc|0Ze3yCUj z;gb!K`3(b}oZ`2NKPcW-{9W;$;+{=+TtKlW%U;179;z-oamx(aJbvO61??kZN$Gbry?o zmK!qKI+ewX?9Wm|aOX3s;C7*H(6TtjS3nor*k$p~F}{(-U{%re6QLI?^pUtcxZrXEc3HrLcO&AAI;vf A?f?J) diff --git a/binding/android/Rhino/rhino/src/main/jniLibs/armeabi-v7a/libpv_rhino.so b/binding/android/Rhino/rhino/src/main/jniLibs/armeabi-v7a/libpv_rhino.so index 0900fd3bb87dd4af88f92772189220390339f8e6..9b6bbf3f097f01cbef88e4e43fef3980dd8d52ba 100644 GIT binary patch delta 34759 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 z%0D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 aDqRbXugx)((vJnnCHAJoF~UFAD*gsC49Hyo diff --git a/binding/android/Rhino/rhino/src/main/jniLibs/x86/libpv_rhino.so b/binding/android/Rhino/rhino/src/main/jniLibs/x86/libpv_rhino.so index 52ce72fbb1578f8d2c1148a95505b35967b00f23..23990c0e4977f8e01ef2d1039aebdcc5fbd7f716 100644 GIT binary patch literal 91724 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